From b0fa81eea9a270f23d6ad67ca7a6d25c18d20da1 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Sat, 16 Jul 2005 01:27:14 +0000 Subject: [PATCH] Major merge with Classpath. Removed many duplicate files. * HACKING: Updated.x * classpath: Imported new directory. * standard.omit: New file. * Makefile.in, aclocal.m4, configure: Rebuilt. * sources.am: New file. * configure.ac: Run Classpath configure script. Moved code around to support. Disable xlib AWT peers (temporarily). * Makefile.am (SUBDIRS): Added 'classpath' (JAVAC): Removed. (AM_CPPFLAGS): Added more -I options. (BOOTCLASSPATH): Simplified. Completely redid how sources are built. Include sources.am. * include/Makefile.am (tool_include__HEADERS): Removed jni.h. * include/jni.h: Removed (in Classpath). * scripts/classes.pl: Updated to look at built classes. * scripts/makemake.tcl: New file. * testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Added -I options. (gcj_jni_invocation_compile_c_to_binary): Likewise. From-SVN: r102082 --- libjava/ChangeLog | 25 + libjava/HACKING | 60 +- libjava/Makefile.am | 3384 +----- libjava/Makefile.in | 9025 ++++++++++------- libjava/aclocal.m4 | 512 +- libjava/configure | 486 +- libjava/configure.ac | 321 +- libjava/external/Makefile.am | 47 - libjava/external/Makefile.in | 633 -- libjava/external/README | 3 - libjava/external/sax/Makefile.am | 76 - libjava/external/sax/Makefile.in | 631 -- libjava/external/sax/README | 71 - .../sax/org/xml/sax/AttributeList.java | 193 - .../external/sax/org/xml/sax/Attributes.java | 257 - .../sax/org/xml/sax/ContentHandler.java | 419 - .../external/sax/org/xml/sax/DTDHandler.java | 117 - .../sax/org/xml/sax/DocumentHandler.java | 232 - .../sax/org/xml/sax/EntityResolver.java | 119 - .../sax/org/xml/sax/ErrorHandler.java | 139 - .../external/sax/org/xml/sax/HandlerBase.java | 369 - .../external/sax/org/xml/sax/InputSource.java | 336 - libjava/external/sax/org/xml/sax/Locator.java | 136 - libjava/external/sax/org/xml/sax/Parser.java | 209 - .../sax/org/xml/sax/SAXException.java | 153 - .../xml/sax/SAXNotRecognizedException.java | 53 - .../org/xml/sax/SAXNotSupportedException.java | 53 - .../sax/org/xml/sax/SAXParseException.java | 269 - .../external/sax/org/xml/sax/XMLFilter.java | 65 - .../external/sax/org/xml/sax/XMLReader.java | 404 - .../sax/org/xml/sax/ext/Attributes2.java | 132 - .../sax/org/xml/sax/ext/Attributes2Impl.java | 301 - .../sax/org/xml/sax/ext/DeclHandler.java | 146 - .../sax/org/xml/sax/ext/DefaultHandler2.java | 130 - .../sax/org/xml/sax/ext/EntityResolver2.java | 197 - .../sax/org/xml/sax/ext/LexicalHandler.java | 212 - .../sax/org/xml/sax/ext/Locator2.java | 75 - .../sax/org/xml/sax/ext/Locator2Impl.java | 101 - .../external/sax/org/xml/sax/ext/package.html | 46 - .../xml/sax/helpers/AttributeListImpl.java | 312 - .../org/xml/sax/helpers/AttributesImpl.java | 618 -- .../org/xml/sax/helpers/DefaultHandler.java | 467 - .../sax/org/xml/sax/helpers/LocatorImpl.java | 214 - .../org/xml/sax/helpers/NamespaceSupport.java | 836 -- .../sax/org/xml/sax/helpers/NewInstance.java | 79 - .../org/xml/sax/helpers/ParserAdapter.java | 1046 -- .../org/xml/sax/helpers/ParserFactory.java | 129 - .../org/xml/sax/helpers/XMLFilterImpl.java | 713 -- .../org/xml/sax/helpers/XMLReaderAdapter.java | 538 - .../org/xml/sax/helpers/XMLReaderFactory.java | 202 - .../sax/org/xml/sax/helpers/package.html | 11 - libjava/external/sax/org/xml/sax/package.html | 297 - libjava/external/w3c_dom/COPYRIGHT.html | 106 - libjava/external/w3c_dom/Makefile.am | 186 - libjava/external/w3c_dom/Makefile.in | 741 -- libjava/external/w3c_dom/README | 97 - .../external/w3c_dom/org/w3c/dom/Attr.java | 275 - .../w3c_dom/org/w3c/dom/CDATASection.java | 54 - .../w3c_dom/org/w3c/dom/CharacterData.java | 153 - .../external/w3c_dom/org/w3c/dom/Comment.java | 30 - .../w3c_dom/org/w3c/dom/DOMConfiguration.java | 413 - .../w3c_dom/org/w3c/dom/DOMError.java | 87 - .../w3c_dom/org/w3c/dom/DOMErrorHandler.java | 45 - .../w3c_dom/org/w3c/dom/DOMException.java | 131 - .../org/w3c/dom/DOMImplementation.java | 136 - .../org/w3c/dom/DOMImplementationList.java | 43 - .../org/w3c/dom/DOMImplementationSource.java | 58 - .../w3c_dom/org/w3c/dom/DOMLocator.java | 58 - .../w3c_dom/org/w3c/dom/DOMStringList.java | 50 - .../w3c_dom/org/w3c/dom/Document.java | 814 -- .../w3c_dom/org/w3c/dom/DocumentFragment.java | 53 - .../w3c_dom/org/w3c/dom/DocumentType.java | 83 - .../external/w3c_dom/org/w3c/dom/Element.java | 439 - .../external/w3c_dom/org/w3c/dom/Entity.java | 90 - .../w3c_dom/org/w3c/dom/EntityReference.java | 43 - .../w3c_dom/org/w3c/dom/NameList.java | 68 - .../w3c_dom/org/w3c/dom/NamedNodeMap.java | 183 - .../external/w3c_dom/org/w3c/dom/Node.java | 900 -- .../w3c_dom/org/w3c/dom/NodeList.java | 41 - .../w3c_dom/org/w3c/dom/Notation.java | 40 - .../org/w3c/dom/ProcessingInstruction.java | 51 - .../external/w3c_dom/org/w3c/dom/Text.java | 126 - .../w3c_dom/org/w3c/dom/TypeInfo.java | 185 - .../w3c_dom/org/w3c/dom/UserDataHandler.java | 72 - .../bootstrap/DOMImplementationRegistry.java | 387 - .../org/w3c/dom/css/CSS2Properties.java | 1777 ---- .../org/w3c/dom/css/CSSCharsetRule.java | 51 - .../org/w3c/dom/css/CSSFontFaceRule.java | 28 - .../org/w3c/dom/css/CSSImportRule.java | 44 - .../w3c_dom/org/w3c/dom/css/CSSMediaRule.java | 76 - .../w3c_dom/org/w3c/dom/css/CSSPageRule.java | 44 - .../org/w3c/dom/css/CSSPrimitiveValue.java | 296 - .../w3c_dom/org/w3c/dom/css/CSSRule.java | 97 - .../w3c_dom/org/w3c/dom/css/CSSRuleList.java | 43 - .../org/w3c/dom/css/CSSStyleDeclaration.java | 162 - .../w3c_dom/org/w3c/dom/css/CSSStyleRule.java | 47 - .../org/w3c/dom/css/CSSStyleSheet.java | 85 - .../org/w3c/dom/css/CSSUnknownRule.java | 22 - .../w3c_dom/org/w3c/dom/css/CSSValue.java | 71 - .../w3c_dom/org/w3c/dom/css/CSSValueList.java | 46 - .../w3c_dom/org/w3c/dom/css/Counter.java | 38 - .../org/w3c/dom/css/DOMImplementationCSS.java | 40 - .../w3c_dom/org/w3c/dom/css/DocumentCSS.java | 50 - .../w3c/dom/css/ElementCSSInlineStyle.java | 32 - .../w3c_dom/org/w3c/dom/css/RGBColor.java | 47 - .../w3c_dom/org/w3c/dom/css/Rect.java | 44 - .../w3c_dom/org/w3c/dom/css/ViewCSS.java | 43 - .../org/w3c/dom/events/DocumentEvent.java | 56 - .../w3c_dom/org/w3c/dom/events/Event.java | 141 - .../org/w3c/dom/events/EventException.java | 36 - .../org/w3c/dom/events/EventListener.java | 41 - .../org/w3c/dom/events/EventTarget.java | 102 - .../org/w3c/dom/events/MouseEvent.java | 156 - .../org/w3c/dom/events/MutationEvent.java | 108 - .../w3c_dom/org/w3c/dom/events/UIEvent.java | 58 - .../org/w3c/dom/html2/HTMLAnchorElement.java | 156 - .../org/w3c/dom/html2/HTMLAppletElement.java | 156 - .../org/w3c/dom/html2/HTMLAreaElement.java | 111 - .../org/w3c/dom/html2/HTMLBRElement.java | 31 - .../org/w3c/dom/html2/HTMLBaseElement.java | 40 - .../w3c/dom/html2/HTMLBaseFontElement.java | 56 - .../org/w3c/dom/html2/HTMLBodyElement.java | 94 - .../org/w3c/dom/html2/HTMLButtonElement.java | 88 - .../org/w3c/dom/html2/HTMLCollection.java | 59 - .../org/w3c/dom/html2/HTMLDListElement.java | 31 - .../w3c/dom/html2/HTMLDirectoryElement.java | 32 - .../org/w3c/dom/html2/HTMLDivElement.java | 31 - .../org/w3c/dom/html2/HTMLDocument.java | 237 - .../org/w3c/dom/html2/HTMLElement.java | 87 - .../w3c/dom/html2/HTMLFieldSetElement.java | 28 - .../org/w3c/dom/html2/HTMLFontElement.java | 54 - .../org/w3c/dom/html2/HTMLFormElement.java | 116 - .../org/w3c/dom/html2/HTMLFrameElement.java | 117 - .../w3c/dom/html2/HTMLFrameSetElement.java | 42 - .../org/w3c/dom/html2/HTMLHRElement.java | 66 - .../org/w3c/dom/html2/HTMLHeadElement.java | 31 - .../org/w3c/dom/html2/HTMLHeadingElement.java | 32 - .../org/w3c/dom/html2/HTMLHtmlElement.java | 31 - .../org/w3c/dom/html2/HTMLIFrameElement.java | 137 - .../org/w3c/dom/html2/HTMLImageElement.java | 176 - .../org/w3c/dom/html2/HTMLInputElement.java | 303 - .../org/w3c/dom/html2/HTMLIsIndexElement.java | 39 - .../org/w3c/dom/html2/HTMLLIElement.java | 44 - .../org/w3c/dom/html2/HTMLLabelElement.java | 51 - .../org/w3c/dom/html2/HTMLLegendElement.java | 52 - .../org/w3c/dom/html2/HTMLLinkElement.java | 116 - .../org/w3c/dom/html2/HTMLMapElement.java | 36 - .../org/w3c/dom/html2/HTMLMenuElement.java | 32 - .../org/w3c/dom/html2/HTMLMetaElement.java | 63 - .../org/w3c/dom/html2/HTMLModElement.java | 43 - .../org/w3c/dom/html2/HTMLOListElement.java | 53 - .../org/w3c/dom/html2/HTMLObjectElement.java | 230 - .../w3c/dom/html2/HTMLOptGroupElement.java | 43 - .../org/w3c/dom/html2/HTMLOptionElement.java | 104 - .../w3c/dom/html2/HTMLOptionsCollection.java | 68 - .../w3c/dom/html2/HTMLParagraphElement.java | 31 - .../org/w3c/dom/html2/HTMLParamElement.java | 67 - .../org/w3c/dom/html2/HTMLPreElement.java | 31 - .../org/w3c/dom/html2/HTMLQuoteElement.java | 32 - .../org/w3c/dom/html2/HTMLScriptElement.java | 91 - .../org/w3c/dom/html2/HTMLSelectElement.java | 179 - .../org/w3c/dom/html2/HTMLStyleElement.java | 53 - .../dom/html2/HTMLTableCaptionElement.java | 31 - .../w3c/dom/html2/HTMLTableCellElement.java | 181 - .../w3c/dom/html2/HTMLTableColElement.java | 85 - .../org/w3c/dom/html2/HTMLTableElement.java | 254 - .../w3c/dom/html2/HTMLTableRowElement.java | 130 - .../dom/html2/HTMLTableSectionElement.java | 103 - .../w3c/dom/html2/HTMLTextAreaElement.java | 154 - .../org/w3c/dom/html2/HTMLTitleElement.java | 29 - .../org/w3c/dom/html2/HTMLUListElement.java | 42 - .../org/w3c/dom/ls/DOMImplementationLS.java | 122 - .../w3c_dom/org/w3c/dom/ls/LSException.java | 47 - .../w3c_dom/org/w3c/dom/ls/LSInput.java | 218 - .../w3c_dom/org/w3c/dom/ls/LSLoadEvent.java | 35 - .../w3c_dom/org/w3c/dom/ls/LSOutput.java | 106 - .../w3c_dom/org/w3c/dom/ls/LSParser.java | 466 - .../org/w3c/dom/ls/LSParserFilter.java | 172 - .../org/w3c/dom/ls/LSProgressEvent.java | 48 - .../org/w3c/dom/ls/LSResourceResolver.java | 81 - .../w3c_dom/org/w3c/dom/ls/LSSerializer.java | 436 - .../org/w3c/dom/ls/LSSerializerFilter.java | 63 - .../org/w3c/dom/ranges/DocumentRange.java | 33 - .../w3c_dom/org/w3c/dom/ranges/Range.java | 416 - .../org/w3c/dom/ranges/RangeException.java | 39 - .../w3c/dom/stylesheets/DocumentStyle.java | 34 - .../org/w3c/dom/stylesheets/LinkStyle.java | 31 - .../org/w3c/dom/stylesheets/MediaList.java | 85 - .../org/w3c/dom/stylesheets/StyleSheet.java | 103 - .../w3c/dom/stylesheets/StyleSheetList.java | 42 - .../w3c/dom/traversal/DocumentTraversal.java | 93 - .../org/w3c/dom/traversal/NodeFilter.java | 144 - .../org/w3c/dom/traversal/NodeIterator.java | 109 - .../org/w3c/dom/traversal/TreeWalker.java | 179 - .../org/w3c/dom/views/AbstractView.java | 27 - .../org/w3c/dom/views/DocumentView.java | 30 - .../org/w3c/dom/xpath/XPathEvaluator.java | 134 - .../org/w3c/dom/xpath/XPathException.java | 39 - .../org/w3c/dom/xpath/XPathExpression.java | 65 - .../org/w3c/dom/xpath/XPathNSResolver.java | 34 - .../org/w3c/dom/xpath/XPathNamespace.java | 67 - .../org/w3c/dom/xpath/XPathResult.java | 214 - libjava/gcj/Makefile.in | 8 +- libjava/gnu/classpath/Configuration.java.in | 62 - libjava/gnu/classpath/ServiceFactory.java | 573 -- .../ServiceProviderLoadingAction.java | 149 - .../jdwp/exception/InvalidClassException.java | 63 - .../jdwp/exception/InvalidCountException.java | 61 - .../exception/InvalidEventTypeException.java | 63 - .../exception/InvalidObjectException.java | 63 - .../exception/InvalidStringException.java | 63 - .../exception/InvalidThreadException.java | 63 - .../InvalidThreadGroupException.java | 63 - .../jdwp/exception/JdwpException.java | 86 - .../exception/JdwpInternalErrorException.java | 58 - .../exception/NotImplementedException.java | 59 - .../jdwp/exception/VmDeadException.java | 55 - libjava/gnu/classpath/jdwp/id/ArrayId.java | 62 - .../jdwp/id/ArrayReferenceTypeId.java | 59 - .../gnu/classpath/jdwp/id/ClassLoaderId.java | 64 - .../gnu/classpath/jdwp/id/ClassObjectId.java | 64 - .../jdwp/id/ClassReferenceTypeId.java | 59 - .../jdwp/id/InterfaceReferenceTypeId.java | 59 - libjava/gnu/classpath/jdwp/id/JdwpId.java | 127 - .../gnu/classpath/jdwp/id/JdwpIdFactory.java | 165 - libjava/gnu/classpath/jdwp/id/ObjectId.java | 99 - .../classpath/jdwp/id/ReferenceTypeId.java | 81 - libjava/gnu/classpath/jdwp/id/StringId.java | 64 - .../gnu/classpath/jdwp/id/ThreadGroupId.java | 64 - libjava/gnu/classpath/jdwp/id/ThreadId.java | 64 - .../classpath/jdwp/processor/CommandSet.java | 68 - .../jdwp/processor/FieldCommandSet.java | 66 - .../processor/InterfaceTypeCommandSet.java | 67 - .../processor/ObjectReferenceCommandSet.java | 249 - .../jdwp/processor/PacketProcessor.java | 216 - .../processor/ReferenceTypeCommandSet.java | 321 - .../processor/StringReferenceCommandSet.java | 98 - .../processor/VirtualMachineCommandSet.java | 474 - .../classpath/jdwp/transport/ITransport.java | 84 - .../jdwp/transport/JdwpCommandPacket.java | 149 - .../jdwp/transport/JdwpConnection.java | 298 - .../classpath/jdwp/transport/JdwpPacket.java | 278 - .../jdwp/transport/JdwpReplyPacket.java | 137 - .../jdwp/transport/SocketTransport.java | 171 - .../jdwp/transport/TransportException.java | 75 - .../jdwp/transport/TransportFactory.java | 115 - .../gnu/classpath/jdwp/util/JdwpString.java | 95 - .../gnu/classpath/jdwp/util/Signature.java | 149 - libjava/gnu/java/awt/BitMaskExtent.java | 79 - libjava/gnu/java/awt/BitwiseXORComposite.java | 295 - libjava/gnu/java/awt/Buffers.java | 243 - libjava/gnu/java/awt/ClasspathToolkit.java | 369 - libjava/gnu/java/awt/ComponentDataBlitOp.java | 156 - libjava/gnu/java/awt/EmbeddedWindow.java | 143 - .../gnu/java/awt/EmbeddedWindowSupport.java | 65 - libjava/gnu/java/awt/EventModifier.java | 107 - .../gnu/java/awt/color/CieXyzConverter.java | 73 - .../java/awt/color/ClutProfileConverter.java | 152 - .../gnu/java/awt/color/ColorLookUpTable.java | 429 - .../java/awt/color/ColorSpaceConverter.java | 69 - .../java/awt/color/GrayProfileConverter.java | 137 - .../java/awt/color/GrayScaleConverter.java | 110 - .../java/awt/color/LinearRGBConverter.java | 152 - libjava/gnu/java/awt/color/ProfileHeader.java | 398 - libjava/gnu/java/awt/color/PyccConverter.java | 72 - .../java/awt/color/RgbProfileConverter.java | 244 - libjava/gnu/java/awt/color/SrgbConverter.java | 152 - libjava/gnu/java/awt/color/TagEntry.java | 121 - .../java/awt/color/ToneReproductionCurve.java | 177 - .../awt/doc-files/BitwiseXORComposite-1.png | Bin 8845 -> 0 bytes libjava/gnu/java/awt/image/ImageDecoder.java | 156 - libjava/gnu/java/awt/image/XBMDecoder.java | 155 - .../gnu/java/awt/peer/ClasspathFontPeer.java | 846 -- .../awt/peer/ClasspathTextLayoutPeer.java | 104 - .../gnu/java/awt/peer/EmbeddedWindowPeer.java | 47 - .../gnu/java/awt/peer/GLightweightPeer.java | 298 - .../gnu/java/awt/peer/gtk/GThreadMutex.java | 109 - .../peer/gtk/GThreadNativeMethodRunner.java | 303 - .../gnu/java/awt/peer/gtk/GdkFontMetrics.java | 134 - .../gnu/java/awt/peer/gtk/GdkFontPeer.java | 307 - .../gnu/java/awt/peer/gtk/GdkGlyphVector.java | 359 - .../gnu/java/awt/peer/gtk/GdkGraphics.java | 487 - .../gnu/java/awt/peer/gtk/GdkGraphics2D.java | 1449 --- .../peer/gtk/GdkGraphicsConfiguration.java | 138 - .../awt/peer/gtk/GdkGraphicsEnvironment.java | 107 - .../java/awt/peer/gtk/GdkPixbufDecoder.java | 675 -- .../gnu/java/awt/peer/gtk/GdkRobotPeer.java | 94 - .../awt/peer/gtk/GdkScreenGraphicsDevice.java | 115 - .../gnu/java/awt/peer/gtk/GdkTextLayout.java | 434 - .../gnu/java/awt/peer/gtk/GtkButtonPeer.java | 107 - .../gnu/java/awt/peer/gtk/GtkCanvasPeer.java | 100 - .../awt/peer/gtk/GtkCheckboxGroupPeer.java | 86 - .../awt/peer/gtk/GtkCheckboxMenuItemPeer.java | 69 - .../java/awt/peer/gtk/GtkCheckboxPeer.java | 128 - .../gnu/java/awt/peer/gtk/GtkChoicePeer.java | 128 - .../gnu/java/awt/peer/gtk/GtkClipboard.java | 170 - .../java/awt/peer/gtk/GtkComponentPeer.java | 662 -- .../java/awt/peer/gtk/GtkContainerPeer.java | 151 - .../gnu/java/awt/peer/gtk/GtkDialogPeer.java | 94 - .../awt/peer/gtk/GtkEmbeddedWindowPeer.java | 73 - .../java/awt/peer/gtk/GtkFileDialogPeer.java | 219 - .../gnu/java/awt/peer/gtk/GtkFontPeer.java | 225 - .../gnu/java/awt/peer/gtk/GtkFramePeer.java | 275 - .../gnu/java/awt/peer/gtk/GtkGenericPeer.java | 93 - libjava/gnu/java/awt/peer/gtk/GtkImage.java | 344 - .../java/awt/peer/gtk/GtkImagePainter.java | 267 - .../gnu/java/awt/peer/gtk/GtkLabelPeer.java | 84 - .../gnu/java/awt/peer/gtk/GtkListPeer.java | 180 - .../gnu/java/awt/peer/gtk/GtkMenuBarPeer.java | 80 - .../awt/peer/gtk/GtkMenuComponentPeer.java | 63 - .../java/awt/peer/gtk/GtkMenuItemPeer.java | 120 - .../gnu/java/awt/peer/gtk/GtkMenuPeer.java | 103 - .../java/awt/peer/gtk/GtkOffScreenImage.java | 93 - .../gnu/java/awt/peer/gtk/GtkPanelPeer.java | 68 - .../java/awt/peer/gtk/GtkPopupMenuPeer.java | 74 - .../java/awt/peer/gtk/GtkScrollPanePeer.java | 113 - .../java/awt/peer/gtk/GtkScrollbarPeer.java | 80 - .../java/awt/peer/gtk/GtkTextAreaPeer.java | 178 - .../awt/peer/gtk/GtkTextComponentPeer.java | 87 - .../java/awt/peer/gtk/GtkTextFieldPeer.java | 162 - libjava/gnu/java/awt/peer/gtk/GtkToolkit.java | 670 -- .../java/awt/peer/gtk/GtkVolatileImage.java | 118 - .../gnu/java/awt/peer/gtk/GtkWindowPeer.java | 210 - libjava/gnu/java/awt/peer/gtk/Test.java | 299 - libjava/gnu/java/awt/peer/gtk/TestAWT.java | 613 -- libjava/gnu/java/beans/BeanInfoEmbryo.java | 171 - .../gnu/java/beans/DummyAppletContext.java | 200 - libjava/gnu/java/beans/DummyAppletStub.java | 115 - libjava/gnu/java/beans/ExplicitBeanInfo.java | 149 - .../java/beans/IntrospectionIncubator.java | 441 - .../java/beans/decoder/AbstractContext.java | 70 - .../AbstractCreatableObjectContext.java | 113 - .../beans/decoder/AbstractElementHandler.java | 316 - .../beans/decoder/AbstractObjectContext.java | 127 - .../gnu/java/beans/decoder/ArrayContext.java | 122 - .../gnu/java/beans/decoder/ArrayHandler.java | 118 - .../java/beans/decoder/AssemblyException.java | 57 - .../java/beans/decoder/BooleanHandler.java | 67 - .../gnu/java/beans/decoder/ByteHandler.java | 59 - .../gnu/java/beans/decoder/CharHandler.java | 62 - .../gnu/java/beans/decoder/ClassHandler.java | 66 - .../beans/decoder/ConstructorContext.java | 102 - libjava/gnu/java/beans/decoder/Context.java | 137 - .../java/beans/decoder/DecoderContext.java | 124 - .../decoder/DefaultExceptionListener.java | 57 - .../gnu/java/beans/decoder/DoubleHandler.java | 59 - .../gnu/java/beans/decoder/DummyContext.java | 116 - .../gnu/java/beans/decoder/DummyHandler.java | 156 - .../java/beans/decoder/ElementHandler.java | 130 - .../gnu/java/beans/decoder/FloatHandler.java | 59 - .../beans/decoder/GrowableArrayContext.java | 138 - .../gnu/java/beans/decoder/IndexContext.java | 130 - .../gnu/java/beans/decoder/IntHandler.java | 59 - .../gnu/java/beans/decoder/JavaHandler.java | 93 - .../gnu/java/beans/decoder/LongHandler.java | 59 - .../gnu/java/beans/decoder/MethodContext.java | 107 - .../gnu/java/beans/decoder/MethodFinder.java | 177 - .../gnu/java/beans/decoder/NullHandler.java | 62 - .../gnu/java/beans/decoder/ObjectContext.java | 100 - .../gnu/java/beans/decoder/ObjectHandler.java | 169 - .../java/beans/decoder/PersistenceParser.java | 485 - .../java/beans/decoder/PropertyContext.java | 137 - .../gnu/java/beans/decoder/ShortHandler.java | 58 - .../gnu/java/beans/decoder/SimpleHandler.java | 111 - .../beans/decoder/StaticMethodContext.java | 95 - .../gnu/java/beans/decoder/StringHandler.java | 54 - .../gnu/java/beans/decoder/VoidHandler.java | 140 - .../gnu/java/beans/editors/ColorEditor.java | 100 - .../gnu/java/beans/editors/FontEditor.java | 77 - .../beans/editors/NativeBooleanEditor.java | 76 - .../java/beans/editors/NativeByteEditor.java | 61 - .../beans/editors/NativeDoubleEditor.java | 61 - .../java/beans/editors/NativeFloatEditor.java | 61 - .../java/beans/editors/NativeIntEditor.java | 61 - .../java/beans/editors/NativeLongEditor.java | 61 - .../java/beans/editors/NativeShortEditor.java | 61 - .../gnu/java/beans/editors/StringEditor.java | 61 - libjava/gnu/java/io/ASN1ParsingException.java | 56 - libjava/gnu/java/io/Base64InputStream.java | 216 - .../java/io/ClassLoaderObjectInputStream.java | 73 - libjava/gnu/java/io/NullOutputStream.java | 56 - .../gnu/java/io/ObjectIdentityWrapper.java | 100 - libjava/gnu/java/lang/ArrayHelper.java | 78 - libjava/gnu/java/lang/CharData.java | 1001 -- libjava/gnu/java/lang/ClassHelper.java | 177 - .../gnu/java/lang/reflect/TypeSignature.java | 288 - libjava/gnu/java/math/MPN.java | 771 -- libjava/gnu/java/net/BASE64.java | 190 - libjava/gnu/java/net/CRLFInputStream.java | 174 - libjava/gnu/java/net/CRLFOutputStream.java | 183 - .../gnu/java/net/EmptyX509TrustManager.java | 70 - libjava/gnu/java/net/GetLocalHostAction.java | 65 - libjava/gnu/java/net/HeaderFieldHelper.java | 138 - libjava/gnu/java/net/LineInputStream.java | 198 - libjava/gnu/java/net/URLParseError.java | 57 - .../java/net/protocol/ftp/ActiveModeDTP.java | 251 - .../net/protocol/ftp/BlockInputStream.java | 150 - .../net/protocol/ftp/BlockOutputStream.java | 111 - .../protocol/ftp/CompressedInputStream.java | 215 - .../protocol/ftp/CompressedOutputStream.java | 228 - libjava/gnu/java/net/protocol/ftp/DTP.java | 92 - .../java/net/protocol/ftp/DTPInputStream.java | 88 - .../net/protocol/ftp/DTPOutputStream.java | 85 - .../java/net/protocol/ftp/FTPConnection.java | 1348 --- .../java/net/protocol/ftp/FTPException.java | 76 - .../java/net/protocol/ftp/FTPResponse.java | 112 - .../net/protocol/ftp/FTPURLConnection.java | 398 - .../gnu/java/net/protocol/ftp/Handler.java | 70 - .../java/net/protocol/ftp/PassiveModeDTP.java | 201 - .../net/protocol/ftp/StreamInputStream.java | 95 - .../net/protocol/ftp/StreamOutputStream.java | 85 - .../java/net/protocol/http/Authenticator.java | 59 - .../http/ByteArrayRequestBodyWriter.java | 107 - .../http/ByteArrayResponseBodyReader.java | 123 - .../net/protocol/http/ChunkedInputStream.java | 172 - .../gnu/java/net/protocol/http/Cookie.java | 160 - .../java/net/protocol/http/CookieManager.java | 65 - .../java/net/protocol/http/Credentials.java | 88 - .../net/protocol/http/HTTPConnection.java | 681 -- .../net/protocol/http/HTTPDateFormat.java | 441 - .../net/protocol/http/HTTPURLConnection.java | 682 -- .../gnu/java/net/protocol/http/Handler.java | 73 - .../gnu/java/net/protocol/http/Headers.java | 369 - .../gnu/java/net/protocol/http/Request.java | 914 -- .../net/protocol/http/RequestBodyWriter.java | 69 - .../gnu/java/net/protocol/http/Response.java | 185 - .../net/protocol/http/ResponseBodyReader.java | 70 - .../protocol/http/ResponseHeaderHandler.java | 57 - .../protocol/http/SimpleCookieManager.java | 140 - .../protocol/http/event/ConnectionEvent.java | 81 - .../http/event/ConnectionListener.java | 58 - .../net/protocol/http/event/RequestEvent.java | 107 - .../protocol/http/event/RequestListener.java | 70 - .../gnu/java/net/protocol/https/Handler.java | 76 - .../gnu/java/net/protocol/jar/Handler.java | 169 - libjava/gnu/java/nio/ChannelInputStream.java | 79 - libjava/gnu/java/nio/ChannelOutputStream.java | 67 - libjava/gnu/java/nio/ChannelReader.java | 211 - libjava/gnu/java/nio/FileLockImpl.java | 82 - libjava/gnu/java/nio/InputStreamChannel.java | 88 - libjava/gnu/java/nio/NIOConstants.java | 47 - libjava/gnu/java/nio/NIODatagramSocket.java | 71 - libjava/gnu/java/nio/NIOSocket.java | 77 - libjava/gnu/java/nio/OutputStreamChannel.java | 87 - libjava/gnu/java/nio/PipeImpl.java | 184 - libjava/gnu/java/nio/SelectionKeyImpl.java | 104 - libjava/gnu/java/nio/SelectorImpl.java | 394 - .../gnu/java/nio/SelectorProviderImpl.java | 83 - libjava/gnu/java/nio/charset/ISO_8859_1.java | 155 - libjava/gnu/java/nio/charset/US_ASCII.java | 161 - libjava/gnu/java/nio/charset/UTF_16.java | 80 - libjava/gnu/java/nio/charset/UTF_16BE.java | 84 - .../gnu/java/nio/charset/UTF_16Decoder.java | 151 - .../gnu/java/nio/charset/UTF_16Encoder.java | 153 - libjava/gnu/java/nio/charset/UTF_16LE.java | 83 - libjava/gnu/java/nio/charset/UTF_8.java | 289 - .../rmi/RMIMarshalledObjectInputStream.java | 71 - .../rmi/RMIMarshalledObjectOutputStream.java | 79 - libjava/gnu/java/rmi/dgc/DGCImpl.java | 118 - libjava/gnu/java/rmi/dgc/DGCImpl_Skel.java | 144 - libjava/gnu/java/rmi/dgc/DGCImpl_Stub.java | 158 - .../gnu/java/rmi/registry/RegistryImpl.java | 154 - .../java/rmi/registry/RegistryImpl_Skel.java | 227 - .../java/rmi/registry/RegistryImpl_Stub.java | 293 - .../java/rmi/server/ConnectionRunnerPool.java | 156 - .../java/rmi/server/ProtocolConstants.java | 62 - .../rmi/server/RMIDefaultSocketFactory.java | 59 - libjava/gnu/java/rmi/server/RMIHashes.java | 98 - .../java/rmi/server/RMIIncomingThread.java | 58 - .../java/rmi/server/RMIObjectInputStream.java | 126 - .../rmi/server/RMIObjectOutputStream.java | 114 - libjava/gnu/java/rmi/server/RMIVoidValue.java | 51 - .../java/rmi/server/UnicastConnection.java | 231 - .../rmi/server/UnicastConnectionManager.java | 446 - libjava/gnu/java/rmi/server/UnicastRef.java | 278 - .../java/rmi/server/UnicastRemoteCall.java | 525 - .../java/rmi/server/UnicastRemoteStub.java | 50 - .../gnu/java/rmi/server/UnicastServer.java | 167 - .../gnu/java/rmi/server/UnicastServerRef.java | 306 - libjava/gnu/java/security/Engine.java | 237 - libjava/gnu/java/security/OID.java | 509 - libjava/gnu/java/security/PolicyFile.java | 667 -- .../security/action/GetPropertyAction.java | 89 - .../action/GetSecurityPropertyAction.java | 93 - .../security/action/SetAccessibleAction.java | 77 - libjava/gnu/java/security/ber/BER.java | 46 - .../security/ber/BEREncodingException.java | 54 - libjava/gnu/java/security/ber/BERReader.java | 103 - libjava/gnu/java/security/ber/BERValue.java | 82 - libjava/gnu/java/security/der/BitString.java | 317 - libjava/gnu/java/security/der/DER.java | 86 - .../security/der/DEREncodingException.java | 54 - libjava/gnu/java/security/der/DERReader.java | 437 - libjava/gnu/java/security/der/DERValue.java | 170 - libjava/gnu/java/security/der/DERWriter.java | 349 - .../java/security/pkcs/PKCS7SignedData.java | 364 - .../gnu/java/security/pkcs/SignerInfo.java | 279 - .../provider/CollectionCertStoreImpl.java | 102 - .../java/security/provider/DSAKeyFactory.java | 134 - .../provider/DSAKeyPairGenerator.java | 171 - .../provider/DSAParameterGenerator.java | 128 - .../java/security/provider/DSAParameters.java | 150 - .../java/security/provider/DSASignature.java | 251 - .../java/security/provider/DefaultPolicy.java | 68 - .../security/provider/EncodedKeyFactory.java | 303 - libjava/gnu/java/security/provider/Gnu.java | 168 - .../security/provider/GnuDHPublicKey.java | 115 - .../security/provider/GnuDSAPrivateKey.java | 147 - .../security/provider/GnuDSAPublicKey.java | 137 - .../security/provider/GnuRSAPrivateKey.java | 164 - .../security/provider/GnuRSAPublicKey.java | 109 - .../java/security/provider/MD2withRSA.java | 54 - .../java/security/provider/MD4withRSA.java | 54 - libjava/gnu/java/security/provider/MD5.java | 338 - .../java/security/provider/MD5withRSA.java | 54 - .../provider/PKIXCertPathValidatorImpl.java | 701 -- libjava/gnu/java/security/provider/RSA.java | 311 - .../java/security/provider/RSAKeyFactory.java | 181 - libjava/gnu/java/security/provider/SHA.java | 242 - .../gnu/java/security/provider/SHA1PRNG.java | 126 - .../java/security/provider/SHA1withRSA.java | 61 - .../provider/X509CertificateFactory.java | 305 - libjava/gnu/java/security/util/Prime.java | 164 - .../java/security/x509/GnuPKIExtension.java | 59 - .../java/security/x509/PolicyNodeImpl.java | 214 - libjava/gnu/java/security/x509/Util.java | 202 - .../security/x509/X500DistinguishedName.java | 548 - libjava/gnu/java/security/x509/X509CRL.java | 476 - .../gnu/java/security/x509/X509CRLEntry.java | 278 - .../security/x509/X509CRLSelectorImpl.java | 138 - .../gnu/java/security/x509/X509CertPath.java | 303 - .../security/x509/X509CertSelectorImpl.java | 197 - .../java/security/x509/X509Certificate.java | 743 -- .../x509/ext/AuthorityKeyIdentifier.java | 133 - .../security/x509/ext/BasicConstraints.java | 129 - .../gnu/java/security/x509/ext/CRLNumber.java | 97 - .../x509/ext/CertificatePolicies.java | 189 - .../security/x509/ext/ExtendedKeyUsage.java | 95 - .../gnu/java/security/x509/ext/Extension.java | 289 - .../java/security/x509/ext/GeneralNames.java | 155 - .../x509/ext/IssuerAlternativeNames.java | 77 - .../gnu/java/security/x509/ext/KeyUsage.java | 92 - .../security/x509/ext/PolicyConstraint.java | 107 - .../security/x509/ext/PolicyMappings.java | 104 - .../x509/ext/PrivateKeyUsagePeriod.java | 105 - .../java/security/x509/ext/ReasonCode.java | 85 - .../x509/ext/SubjectAlternativeNames.java | 77 - .../x509/ext/SubjectKeyIdentifier.java | 84 - .../gnu/java/text/AttributedFormatBuffer.java | 247 - libjava/gnu/java/text/BaseBreakIterator.java | 121 - .../gnu/java/text/CharacterBreakIterator.java | 213 - libjava/gnu/java/text/FormatBuffer.java | 136 - .../java/text/FormatCharacterIterator.java | 534 - libjava/gnu/java/text/LineBreakIterator.java | 194 - .../gnu/java/text/SentenceBreakIterator.java | 247 - libjava/gnu/java/text/StringFormatBuffer.java | 121 - libjava/gnu/java/text/WordBreakIterator.java | 250 - libjava/gnu/java/util/DoubleEnumeration.java | 138 - libjava/gnu/java/util/EmptyEnumeration.java | 96 - .../gnu/java/util/prefs/FileBasedFactory.java | 57 - .../java/util/prefs/MemoryBasedFactory.java | 64 - .../util/prefs/MemoryBasedPreferences.java | 144 - libjava/gnu/java/util/prefs/NodeReader.java | 223 - libjava/gnu/java/util/prefs/NodeWriter.java | 315 - .../swing/text/html/parser/HTML_401F.java | 3729 ------- .../javax/swing/text/html/parser/gnuDTD.java | 422 - .../text/html/parser/htmlAttributeSet.java | 133 - .../swing/text/html/parser/htmlValidator.java | 610 -- .../html/parser/models/PCDATAonly_model.java | 62 - .../parser/models/TableRowContentModel.java | 77 - .../swing/text/html/parser/models/list.java | 382 - .../text/html/parser/models/noTagModel.java | 75 - .../swing/text/html/parser/models/node.java | 337 - .../text/html/parser/models/transformer.java | 201 - .../text/html/parser/support/Parser.java | 1443 --- .../parser/support/gnuStringIntMapper.java | 112 - .../text/html/parser/support/low/Buffer.java | 238 - .../html/parser/support/low/Constants.java | 422 - .../html/parser/support/low/Location.java | 83 - .../parser/support/low/ParseException.java | 51 - .../text/html/parser/support/low/Queue.java | 142 - .../parser/support/low/ReaderTokenizer.java | 374 - .../text/html/parser/support/low/Token.java | 169 - .../text/html/parser/support/low/node.java | 78 - .../text/html/parser/support/low/pattern.java | 105 - .../parser/support/parameterDefaulter.java | 106 - .../html/parser/support/textPreProcessor.java | 193 - libjava/gnu/regexp/CharIndexed.java | 84 - libjava/gnu/regexp/CharIndexedCharArray.java | 62 - .../gnu/regexp/CharIndexedInputStream.java | 149 - libjava/gnu/regexp/CharIndexedString.java | 64 - .../gnu/regexp/CharIndexedStringBuffer.java | 62 - libjava/gnu/regexp/RE.java | 1394 --- libjava/gnu/regexp/REException.java | 182 - libjava/gnu/regexp/REFilterInputStream.java | 140 - libjava/gnu/regexp/REMatch.java | 263 - libjava/gnu/regexp/REMatchEnumeration.java | 135 - libjava/gnu/regexp/RESyntax.java | 527 - libjava/gnu/regexp/REToken.java | 86 - libjava/gnu/regexp/RETokenAny.java | 73 - libjava/gnu/regexp/RETokenBackRef.java | 72 - libjava/gnu/regexp/RETokenChar.java | 91 - libjava/gnu/regexp/RETokenEnd.java | 75 - libjava/gnu/regexp/RETokenEndSub.java | 53 - libjava/gnu/regexp/RETokenLookAhead.java | 87 - libjava/gnu/regexp/RETokenOneOf.java | 130 - libjava/gnu/regexp/RETokenPOSIX.java | 144 - libjava/gnu/regexp/RETokenRange.java | 69 - libjava/gnu/regexp/RETokenRepeated.java | 240 - libjava/gnu/regexp/RETokenStart.java | 87 - libjava/gnu/regexp/RETokenWordBoundary.java | 104 - libjava/gnu/regexp/UncheckedRE.java | 109 - libjava/gnu/xml/aelfred2/ContentHandler2.java | 65 - libjava/gnu/xml/aelfred2/JAXPFactory.java | 231 - libjava/gnu/xml/aelfred2/SAXDriver.java | 1622 --- libjava/gnu/xml/aelfred2/XmlParser.java | 5835 ----------- libjava/gnu/xml/aelfred2/XmlReader.java | 374 - libjava/gnu/xml/dom/Consumer.java | 368 - libjava/gnu/xml/dom/DTDAttributeTypeInfo.java | 84 - libjava/gnu/xml/dom/DTDElementTypeInfo.java | 112 - libjava/gnu/xml/dom/DomAttr.java | 380 - libjava/gnu/xml/dom/DomCDATASection.java | 91 - libjava/gnu/xml/dom/DomCharacterData.java | 310 - libjava/gnu/xml/dom/DomComment.java | 81 - libjava/gnu/xml/dom/DomDOMException.java | 175 - libjava/gnu/xml/dom/DomDoctype.java | 455 - libjava/gnu/xml/dom/DomDocument.java | 1387 --- libjava/gnu/xml/dom/DomDocumentBuilder.java | 159 - .../xml/dom/DomDocumentBuilderFactory.java | 128 - .../gnu/xml/dom/DomDocumentConfiguration.java | 260 - libjava/gnu/xml/dom/DomDocumentFragment.java | 76 - libjava/gnu/xml/dom/DomElement.java | 523 - libjava/gnu/xml/dom/DomEntity.java | 147 - libjava/gnu/xml/dom/DomEntityReference.java | 130 - libjava/gnu/xml/dom/DomEvent.java | 345 - libjava/gnu/xml/dom/DomExtern.java | 117 - libjava/gnu/xml/dom/DomImpl.java | 278 - libjava/gnu/xml/dom/DomIterator.java | 373 - libjava/gnu/xml/dom/DomNSResolverContext.java | 90 - libjava/gnu/xml/dom/DomNamedNodeMap.java | 417 - libjava/gnu/xml/dom/DomNode.java | 2189 ---- libjava/gnu/xml/dom/DomNodeIterator.java | 327 - libjava/gnu/xml/dom/DomNotation.java | 103 - libjava/gnu/xml/dom/DomNsNode.java | 200 - .../gnu/xml/dom/DomProcessingInstruction.java | 147 - libjava/gnu/xml/dom/DomText.java | 220 - libjava/gnu/xml/dom/DomXPathExpression.java | 147 - libjava/gnu/xml/dom/DomXPathNSResolver.java | 64 - libjava/gnu/xml/dom/DomXPathResult.java | 233 - libjava/gnu/xml/dom/ImplementationList.java | 70 - libjava/gnu/xml/dom/ImplementationSource.java | 167 - libjava/gnu/xml/dom/JAXPFactory.java | 286 - .../xml/dom/html2/DomHTMLAnchorElement.java | 189 - .../xml/dom/html2/DomHTMLAppletElement.java | 169 - .../gnu/xml/dom/html2/DomHTMLAreaElement.java | 139 - .../gnu/xml/dom/html2/DomHTMLBRElement.java | 69 - .../gnu/xml/dom/html2/DomHTMLBaseElement.java | 79 - .../xml/dom/html2/DomHTMLBaseFontElement.java | 89 - .../gnu/xml/dom/html2/DomHTMLBodyElement.java | 119 - .../xml/dom/html2/DomHTMLButtonElement.java | 121 - .../gnu/xml/dom/html2/DomHTMLCollection.java | 218 - .../xml/dom/html2/DomHTMLDListElement.java | 69 - .../dom/html2/DomHTMLDirectoryElement.java | 69 - .../gnu/xml/dom/html2/DomHTMLDivElement.java | 69 - .../gnu/xml/dom/html2/DomHTMLDocument.java | 425 - libjava/gnu/xml/dom/html2/DomHTMLElement.java | 269 - .../xml/dom/html2/DomHTMLFieldSetElement.java | 65 - .../gnu/xml/dom/html2/DomHTMLFontElement.java | 89 - .../gnu/xml/dom/html2/DomHTMLFormElement.java | 150 - .../xml/dom/html2/DomHTMLFrameElement.java | 146 - .../xml/dom/html2/DomHTMLFrameSetElement.java | 79 - .../gnu/xml/dom/html2/DomHTMLHRElement.java | 99 - .../gnu/xml/dom/html2/DomHTMLHeadElement.java | 69 - .../xml/dom/html2/DomHTMLHeadingElement.java | 69 - .../gnu/xml/dom/html2/DomHTMLHtmlElement.java | 69 - .../xml/dom/html2/DomHTMLIFrameElement.java | 166 - .../xml/dom/html2/DomHTMLImageElement.java | 179 - libjava/gnu/xml/dom/html2/DomHTMLImpl.java | 67 - .../xml/dom/html2/DomHTMLInputElement.java | 266 - .../xml/dom/html2/DomHTMLIsIndexElement.java | 75 - .../gnu/xml/dom/html2/DomHTMLLIElement.java | 79 - .../xml/dom/html2/DomHTMLLabelElement.java | 85 - .../xml/dom/html2/DomHTMLLegendElement.java | 85 - .../gnu/xml/dom/html2/DomHTMLLinkElement.java | 149 - .../gnu/xml/dom/html2/DomHTMLMapElement.java | 79 - .../gnu/xml/dom/html2/DomHTMLMenuElement.java | 69 - .../gnu/xml/dom/html2/DomHTMLMetaElement.java | 99 - .../gnu/xml/dom/html2/DomHTMLModElement.java | 79 - .../xml/dom/html2/DomHTMLOListElement.java | 89 - .../xml/dom/html2/DomHTMLObjectElement.java | 242 - .../xml/dom/html2/DomHTMLOptGroupElement.java | 79 - .../xml/dom/html2/DomHTMLOptionElement.java | 131 - .../dom/html2/DomHTMLParagraphElement.java | 69 - .../xml/dom/html2/DomHTMLParamElement.java | 99 - libjava/gnu/xml/dom/html2/DomHTMLParser.java | 266 - .../gnu/xml/dom/html2/DomHTMLPreElement.java | 69 - .../xml/dom/html2/DomHTMLQuoteElement.java | 69 - .../xml/dom/html2/DomHTMLScriptElement.java | 129 - .../xml/dom/html2/DomHTMLSelectElement.java | 211 - .../xml/dom/html2/DomHTMLStyleElement.java | 89 - .../dom/html2/DomHTMLTableCaptionElement.java | 70 - .../dom/html2/DomHTMLTableCellElement.java | 205 - .../xml/dom/html2/DomHTMLTableColElement.java | 120 - .../xml/dom/html2/DomHTMLTableElement.java | 383 - .../xml/dom/html2/DomHTMLTableRowElement.java | 225 - .../dom/html2/DomHTMLTableSectionElement.java | 158 - .../xml/dom/html2/DomHTMLTextAreaElement.java | 182 - .../xml/dom/html2/DomHTMLTitleElement.java | 69 - .../xml/dom/html2/DomHTMLUListElement.java | 79 - libjava/gnu/xml/dom/ls/DomLSException.java | 57 - libjava/gnu/xml/dom/ls/DomLSInput.java | 158 - libjava/gnu/xml/dom/ls/DomLSOutput.java | 98 - libjava/gnu/xml/dom/ls/DomLSParser.java | 574 -- libjava/gnu/xml/dom/ls/DomLSSerializer.java | 354 - .../gnu/xml/dom/ls/FilteredSAXEventSink.java | 354 - libjava/gnu/xml/dom/ls/ReaderInputStream.java | 237 - libjava/gnu/xml/dom/ls/SAXEventSink.java | 557 - .../gnu/xml/dom/ls/WriterOutputStream.java | 98 - libjava/gnu/xml/pipeline/CallFilter.java | 257 - libjava/gnu/xml/pipeline/DomConsumer.java | 982 -- libjava/gnu/xml/pipeline/EventConsumer.java | 95 - libjava/gnu/xml/pipeline/EventFilter.java | 809 -- libjava/gnu/xml/pipeline/LinkFilter.java | 242 - libjava/gnu/xml/pipeline/NSFilter.java | 341 - libjava/gnu/xml/pipeline/PipelineFactory.java | 723 -- libjava/gnu/xml/pipeline/TeeConsumer.java | 417 - libjava/gnu/xml/pipeline/TextConsumer.java | 117 - .../gnu/xml/pipeline/ValidationConsumer.java | 1929 ---- .../xml/pipeline/WellFormednessFilter.java | 363 - libjava/gnu/xml/pipeline/XIncludeFilter.java | 579 -- libjava/gnu/xml/pipeline/XsltFilter.java | 130 - .../gnu/xml/transform/AbstractNumberNode.java | 321 - .../gnu/xml/transform/ApplyImportsNode.java | 85 - .../gnu/xml/transform/ApplyTemplatesNode.java | 193 - libjava/gnu/xml/transform/AttributeNode.java | 246 - libjava/gnu/xml/transform/AttributeSet.java | 67 - libjava/gnu/xml/transform/Bindings.java | 242 - .../gnu/xml/transform/CallTemplateNode.java | 130 - libjava/gnu/xml/transform/ChooseNode.java | 93 - libjava/gnu/xml/transform/CommentNode.java | 115 - libjava/gnu/xml/transform/CopyNode.java | 179 - libjava/gnu/xml/transform/CopyOfNode.java | 179 - .../gnu/xml/transform/CurrentFunction.java | 98 - .../gnu/xml/transform/DOMSourceLocator.java | 84 - .../gnu/xml/transform/DocumentFunction.java | 243 - .../transform/ElementAvailableFunction.java | 169 - libjava/gnu/xml/transform/ElementNode.java | 279 - .../transform/ErrorListenerErrorHandler.java | 101 - libjava/gnu/xml/transform/ForEachNode.java | 149 - .../xml/transform/FormatNumberFunction.java | 132 - .../transform/FunctionAvailableFunction.java | 175 - .../gnu/xml/transform/GenerateIdFunction.java | 126 - libjava/gnu/xml/transform/IfNode.java | 107 - libjava/gnu/xml/transform/Key.java | 71 - libjava/gnu/xml/transform/KeyFunction.java | 216 - libjava/gnu/xml/transform/LiteralNode.java | 225 - libjava/gnu/xml/transform/MessageNode.java | 97 - libjava/gnu/xml/transform/NodeNumberNode.java | 258 - libjava/gnu/xml/transform/NumberNode.java | 85 - libjava/gnu/xml/transform/OtherwiseNode.java | 93 - libjava/gnu/xml/transform/ParameterNode.java | 156 - .../transform/ProcessingInstructionNode.java | 123 - libjava/gnu/xml/transform/SAXSerializer.java | 305 - libjava/gnu/xml/transform/SortKey.java | 154 - .../gnu/xml/transform/StreamSerializer.java | 632 -- libjava/gnu/xml/transform/Stylesheet.java | 1728 ---- .../xml/transform/SystemPropertyFunction.java | 128 - libjava/gnu/xml/transform/Template.java | 252 - libjava/gnu/xml/transform/TemplateNode.java | 115 - libjava/gnu/xml/transform/TemplatesImpl.java | 80 - libjava/gnu/xml/transform/TextNode.java | 116 - .../xml/transform/TransformerFactoryImpl.java | 345 - .../gnu/xml/transform/TransformerImpl.java | 580 -- .../TransformerOutputProperties.java | 185 - .../transform/URIResolverEntityResolver.java | 83 - .../transform/UnparsedEntityUriFunction.java | 118 - libjava/gnu/xml/transform/ValueOfNode.java | 126 - libjava/gnu/xml/transform/WhenNode.java | 110 - libjava/gnu/xml/transform/WithParam.java | 110 - libjava/gnu/xml/transform/XSLComparator.java | 124 - libjava/gnu/xml/transform/XSLURIResolver.java | 269 - libjava/gnu/xml/util/DoParse.java | 300 - libjava/gnu/xml/util/DomParser.java | 804 -- libjava/gnu/xml/util/Resolver.java | 263 - .../xml/util/SAXNullTransformerFactory.java | 676 -- libjava/gnu/xml/util/XCat.java | 1609 --- libjava/gnu/xml/util/XHTMLWriter.java | 112 - libjava/gnu/xml/util/XMLWriter.java | 1927 ---- libjava/gnu/xml/xpath/AndExpr.java | 81 - libjava/gnu/xml/xpath/ArithmeticExpr.java | 148 - libjava/gnu/xml/xpath/BooleanFunction.java | 89 - libjava/gnu/xml/xpath/CeilingFunction.java | 83 - libjava/gnu/xml/xpath/ConcatFunction.java | 100 - libjava/gnu/xml/xpath/Constant.java | 92 - libjava/gnu/xml/xpath/ContainsFunction.java | 86 - libjava/gnu/xml/xpath/CountFunction.java | 82 - .../xml/xpath/DocumentOrderComparator.java | 63 - libjava/gnu/xml/xpath/EqualityExpr.java | 258 - libjava/gnu/xml/xpath/Expr.java | 474 - libjava/gnu/xml/xpath/FalseFunction.java | 66 - libjava/gnu/xml/xpath/FloorFunction.java | 83 - libjava/gnu/xml/xpath/Function.java | 57 - libjava/gnu/xml/xpath/FunctionCall.java | 150 - libjava/gnu/xml/xpath/IdFunction.java | 96 - libjava/gnu/xml/xpath/LangFunction.java | 110 - libjava/gnu/xml/xpath/LastFunction.java | 67 - libjava/gnu/xml/xpath/LocalNameFunction.java | 87 - libjava/gnu/xml/xpath/NameFunction.java | 95 - libjava/gnu/xml/xpath/NameTest.java | 131 - libjava/gnu/xml/xpath/NamespaceTest.java | 118 - .../gnu/xml/xpath/NamespaceUriFunction.java | 87 - libjava/gnu/xml/xpath/NegativeExpr.java | 75 - libjava/gnu/xml/xpath/NodeTypeTest.java | 130 - .../gnu/xml/xpath/NormalizeSpaceFunction.java | 99 - libjava/gnu/xml/xpath/NotFunction.java | 81 - libjava/gnu/xml/xpath/NumberFunction.java | 96 - libjava/gnu/xml/xpath/OrExpr.java | 81 - libjava/gnu/xml/xpath/ParenthesizedExpr.java | 84 - libjava/gnu/xml/xpath/Path.java | 54 - libjava/gnu/xml/xpath/Pattern.java | 54 - libjava/gnu/xml/xpath/PositionFunction.java | 67 - libjava/gnu/xml/xpath/Predicate.java | 79 - libjava/gnu/xml/xpath/RelationalExpr.java | 101 - libjava/gnu/xml/xpath/Root.java | 81 - libjava/gnu/xml/xpath/RoundFunction.java | 90 - libjava/gnu/xml/xpath/Selector.java | 498 - libjava/gnu/xml/xpath/StartsWithFunction.java | 86 - libjava/gnu/xml/xpath/Steps.java | 240 - libjava/gnu/xml/xpath/StringFunction.java | 113 - .../gnu/xml/xpath/StringLengthFunction.java | 85 - .../gnu/xml/xpath/SubstringAfterFunction.java | 92 - .../xml/xpath/SubstringBeforeFunction.java | 91 - libjava/gnu/xml/xpath/SubstringFunction.java | 122 - libjava/gnu/xml/xpath/SumFunction.java | 94 - libjava/gnu/xml/xpath/Test.java | 55 - libjava/gnu/xml/xpath/TranslateFunction.java | 126 - libjava/gnu/xml/xpath/TrueFunction.java | 66 - libjava/gnu/xml/xpath/UnionExpr.java | 102 - libjava/gnu/xml/xpath/VariableReference.java | 88 - libjava/gnu/xml/xpath/XPathFactoryImpl.java | 90 - libjava/gnu/xml/xpath/XPathImpl.java | 164 - libjava/gnu/xml/xpath/XPathParser.java | 1461 --- libjava/gnu/xml/xpath/XPathTokenizer.java | 592 -- libjava/include/Makefile.am | 2 +- libjava/include/Makefile.in | 10 +- libjava/include/jni.h | 1599 --- libjava/java/applet/Applet.java | 523 - libjava/java/applet/AppletContext.java | 154 - libjava/java/applet/AppletStub.java | 103 - libjava/java/applet/AudioClip.java | 68 - libjava/java/awt/AWTError.java | 64 - libjava/java/awt/AWTEvent.java | 286 - libjava/java/awt/AWTEventMulticaster.java | 1209 --- libjava/java/awt/AWTException.java | 64 - libjava/java/awt/AWTKeyStroke.java | 659 -- libjava/java/awt/AWTPermission.java | 121 - libjava/java/awt/ActiveEvent.java | 61 - libjava/java/awt/Adjustable.java | 171 - libjava/java/awt/AlphaComposite.java | 167 - libjava/java/awt/AttributeValue.java | 98 - libjava/java/awt/BasicStroke.java | 248 - libjava/java/awt/BorderLayout.java | 731 -- libjava/java/awt/BufferCapabilities.java | 251 - libjava/java/awt/Button.java | 466 - libjava/java/awt/Canvas.java | 365 - libjava/java/awt/CardLayout.java | 483 - libjava/java/awt/Checkbox.java | 649 -- libjava/java/awt/CheckboxGroup.java | 173 - libjava/java/awt/CheckboxMenuItem.java | 355 - libjava/java/awt/Choice.java | 638 -- libjava/java/awt/Color.java | 1008 -- libjava/java/awt/ColorPaintContext.java | 195 - libjava/java/awt/Component.java | 6005 ----------- libjava/java/awt/ComponentOrientation.java | 215 - libjava/java/awt/Composite.java | 73 - libjava/java/awt/CompositeContext.java | 71 - libjava/java/awt/Container.java | 2023 ---- .../ContainerOrderFocusTraversalPolicy.java | 413 - libjava/java/awt/Cursor.java | 224 - .../java/awt/DefaultFocusTraversalPolicy.java | 109 - .../java/awt/DefaultKeyboardFocusManager.java | 503 - libjava/java/awt/Dialog.java | 553 - libjava/java/awt/Dimension.java | 234 - libjava/java/awt/DisplayMode.java | 164 - libjava/java/awt/Event.java | 185 - libjava/java/awt/EventDispatchThread.java | 94 - libjava/java/awt/EventQueue.java | 551 - libjava/java/awt/FileDialog.java | 318 - libjava/java/awt/FlowLayout.java | 364 - libjava/java/awt/FocusTraversalPolicy.java | 103 - libjava/java/awt/Font.java | 1335 --- libjava/java/awt/FontFormatException.java | 65 - libjava/java/awt/FontMetrics.java | 425 - libjava/java/awt/Frame.java | 649 -- libjava/java/awt/GradientPaint.java | 129 - libjava/java/awt/Graphics.java | 767 -- libjava/java/awt/Graphics2D.java | 158 - libjava/java/awt/GraphicsConfigTemplate.java | 106 - libjava/java/awt/GraphicsConfiguration.java | 218 - libjava/java/awt/GraphicsDevice.java | 290 - libjava/java/awt/GraphicsEnvironment.java | 244 - libjava/java/awt/GridBagConstraints.java | 195 - libjava/java/awt/GridBagLayout.java | 1067 -- libjava/java/awt/GridBagLayoutInfo.java | 70 - libjava/java/awt/GridLayout.java | 360 - libjava/java/awt/HeadlessException.java | 72 - .../awt/IllegalComponentStateException.java | 71 - libjava/java/awt/Image.java | 203 - libjava/java/awt/ImageCapabilities.java | 107 - libjava/java/awt/Insets.java | 158 - libjava/java/awt/ItemSelectable.java | 75 - libjava/java/awt/JobAttributes.java | 500 - libjava/java/awt/KeyEventDispatcher.java | 82 - libjava/java/awt/KeyEventPostProcessor.java | 81 - libjava/java/awt/KeyboardFocusManager.java | 1436 --- libjava/java/awt/Label.java | 314 - libjava/java/awt/LayoutManager.java | 92 - libjava/java/awt/LayoutManager2.java | 100 - libjava/java/awt/List.java | 1263 --- libjava/java/awt/MediaTracker.java | 663 -- libjava/java/awt/Menu.java | 468 - libjava/java/awt/MenuBar.java | 423 - libjava/java/awt/MenuComponent.java | 1324 --- libjava/java/awt/MenuContainer.java | 71 - libjava/java/awt/MenuItem.java | 603 -- libjava/java/awt/MenuShortcut.java | 207 - libjava/java/awt/PageAttributes.java | 482 - libjava/java/awt/Paint.java | 79 - libjava/java/awt/PaintContext.java | 76 - libjava/java/awt/Panel.java | 173 - libjava/java/awt/Point.java | 245 - libjava/java/awt/Polygon.java | 613 -- libjava/java/awt/PopupMenu.java | 169 - libjava/java/awt/PrintGraphics.java | 57 - libjava/java/awt/PrintJob.java | 102 - libjava/java/awt/Rectangle.java | 749 -- libjava/java/awt/RenderingHints.java | 793 -- libjava/java/awt/Robot.java | 422 - libjava/java/awt/ScrollPane.java | 615 -- libjava/java/awt/ScrollPaneAdjustable.java | 200 - libjava/java/awt/Scrollbar.java | 825 -- libjava/java/awt/Shape.java | 203 - libjava/java/awt/Stroke.java | 65 - libjava/java/awt/SystemColor.java | 462 - libjava/java/awt/TextArea.java | 629 -- libjava/java/awt/TextComponent.java | 739 -- libjava/java/awt/TextField.java | 541 - libjava/java/awt/TexturePaint.java | 75 - libjava/java/awt/Toolkit.java | 995 -- libjava/java/awt/Transparency.java | 67 - libjava/java/awt/Window.java | 1132 --- libjava/java/awt/color/CMMException.java | 63 - libjava/java/awt/color/ColorSpace.java | 183 - libjava/java/awt/color/ICC_ColorSpace.java | 314 - libjava/java/awt/color/ICC_Profile.java | 1244 --- libjava/java/awt/color/ICC_ProfileGray.java | 133 - libjava/java/awt/color/ICC_ProfileRGB.java | 227 - .../java/awt/color/ProfileDataException.java | 64 - libjava/java/awt/datatransfer/Clipboard.java | 114 - .../java/awt/datatransfer/ClipboardOwner.java | 57 - libjava/java/awt/datatransfer/DataFlavor.java | 1034 -- libjava/java/awt/datatransfer/FlavorMap.java | 75 - .../java/awt/datatransfer/FlavorTable.java | 73 - .../datatransfer/MimeTypeParseException.java | 70 - .../awt/datatransfer/StringSelection.java | 158 - .../awt/datatransfer/SystemFlavorMap.java | 169 - .../java/awt/datatransfer/Transferable.java | 83 - .../UnsupportedFlavorException.java | 65 - libjava/java/awt/dnd/Autoscroll.java | 70 - libjava/java/awt/dnd/DnDConstants.java | 77 - libjava/java/awt/dnd/DnDEventMulticaster.java | 74 - libjava/java/awt/dnd/DragGestureEvent.java | 156 - libjava/java/awt/dnd/DragGestureListener.java | 63 - .../java/awt/dnd/DragGestureRecognizer.java | 179 - libjava/java/awt/dnd/DragSource.java | 257 - libjava/java/awt/dnd/DragSourceAdapter.java | 126 - libjava/java/awt/dnd/DragSourceContext.java | 200 - libjava/java/awt/dnd/DragSourceDragEvent.java | 102 - libjava/java/awt/dnd/DragSourceDropEvent.java | 89 - libjava/java/awt/dnd/DragSourceEvent.java | 93 - libjava/java/awt/dnd/DragSourceListener.java | 97 - .../awt/dnd/DragSourceMotionListener.java | 64 - libjava/java/awt/dnd/DropTarget.java | 293 - libjava/java/awt/dnd/DropTargetAdapter.java | 100 - libjava/java/awt/dnd/DropTargetContext.java | 188 - libjava/java/awt/dnd/DropTargetDragEvent.java | 140 - libjava/java/awt/dnd/DropTargetDropEvent.java | 170 - libjava/java/awt/dnd/DropTargetEvent.java | 56 - libjava/java/awt/dnd/DropTargetListener.java | 89 - .../awt/dnd/InvalidDnDOperationException.java | 73 - .../awt/dnd/MouseDragGestureRecognizer.java | 131 - .../awt/dnd/peer/DragSourceContextPeer.java | 57 - .../awt/dnd/peer/DropTargetContextPeer.java | 68 - libjava/java/awt/dnd/peer/DropTargetPeer.java | 48 - libjava/java/awt/event/AWTEventListener.java | 64 - .../java/awt/event/AWTEventListenerProxy.java | 154 - libjava/java/awt/event/ActionEvent.java | 226 - libjava/java/awt/event/ActionListener.java | 59 - libjava/java/awt/event/AdjustmentEvent.java | 222 - .../java/awt/event/AdjustmentListener.java | 58 - libjava/java/awt/event/ComponentAdapter.java | 97 - libjava/java/awt/event/ComponentEvent.java | 137 - libjava/java/awt/event/ComponentListener.java | 84 - libjava/java/awt/event/ContainerAdapter.java | 79 - libjava/java/awt/event/ContainerEvent.java | 135 - libjava/java/awt/event/ContainerListener.java | 70 - libjava/java/awt/event/FocusAdapter.java | 79 - libjava/java/awt/event/FocusEvent.java | 181 - libjava/java/awt/event/FocusListener.java | 69 - .../awt/event/HierarchyBoundsAdapter.java | 78 - .../awt/event/HierarchyBoundsListener.java | 70 - libjava/java/awt/event/HierarchyEvent.java | 253 - libjava/java/awt/event/HierarchyListener.java | 62 - libjava/java/awt/event/InputEvent.java | 381 - libjava/java/awt/event/InputMethodEvent.java | 303 - .../java/awt/event/InputMethodListener.java | 69 - libjava/java/awt/event/InvocationEvent.java | 237 - libjava/java/awt/event/ItemEvent.java | 155 - libjava/java/awt/event/ItemListener.java | 61 - libjava/java/awt/event/KeyAdapter.java | 88 - libjava/java/awt/event/KeyEvent.java | 1740 ---- libjava/java/awt/event/KeyListener.java | 77 - libjava/java/awt/event/MouseAdapter.java | 106 - libjava/java/awt/event/MouseEvent.java | 432 - libjava/java/awt/event/MouseListener.java | 94 - .../java/awt/event/MouseMotionAdapter.java | 79 - .../java/awt/event/MouseMotionListener.java | 72 - libjava/java/awt/event/MouseWheelEvent.java | 226 - .../java/awt/event/MouseWheelListener.java | 60 - libjava/java/awt/event/PaintEvent.java | 127 - libjava/java/awt/event/TextEvent.java | 92 - libjava/java/awt/event/TextListener.java | 60 - libjava/java/awt/event/WindowAdapter.java | 156 - libjava/java/awt/event/WindowEvent.java | 311 - .../java/awt/event/WindowFocusListener.java | 68 - libjava/java/awt/event/WindowListener.java | 107 - .../java/awt/event/WindowStateListener.java | 62 - libjava/java/awt/font/FontRenderContext.java | 126 - .../java/awt/font/GlyphJustificationInfo.java | 77 - libjava/java/awt/font/GlyphMetrics.java | 134 - libjava/java/awt/font/GlyphVector.java | 145 - libjava/java/awt/font/GraphicAttribute.java | 84 - .../java/awt/font/ImageGraphicAttribute.java | 109 - libjava/java/awt/font/LineBreakMeasurer.java | 113 - libjava/java/awt/font/LineMetrics.java | 67 - libjava/java/awt/font/MultipleMaster.java | 61 - libjava/java/awt/font/NumericShaper.java | 137 - libjava/java/awt/font/OpenType.java | 111 - .../java/awt/font/ShapeGraphicAttribute.java | 105 - libjava/java/awt/font/TextAttribute.java | 309 - libjava/java/awt/font/TextHitInfo.java | 125 - libjava/java/awt/font/TextLayout.java | 332 - libjava/java/awt/font/TextMeasurer.java | 97 - libjava/java/awt/font/TransformAttribute.java | 100 - libjava/java/awt/geom/AffineTransform.java | 1487 --- libjava/java/awt/geom/Arc2D.java | 1399 --- libjava/java/awt/geom/Area.java | 3312 ------ libjava/java/awt/geom/CubicCurve2D.java | 1724 ---- libjava/java/awt/geom/Dimension2D.java | 118 - libjava/java/awt/geom/Ellipse2D.java | 413 - .../java/awt/geom/FlatteningPathIterator.java | 579 -- libjava/java/awt/geom/GeneralPath.java | 958 -- .../awt/geom/IllegalPathStateException.java | 71 - libjava/java/awt/geom/Line2D.java | 1182 --- .../geom/NoninvertibleTransformException.java | 65 - libjava/java/awt/geom/PathIterator.java | 189 - libjava/java/awt/geom/Point2D.java | 396 - libjava/java/awt/geom/QuadCurve2D.java | 1467 --- libjava/java/awt/geom/Rectangle2D.java | 992 -- libjava/java/awt/geom/RectangularShape.java | 385 - libjava/java/awt/geom/RoundRectangle2D.java | 533 - libjava/java/awt/im/InputContext.java | 434 - libjava/java/awt/im/InputMethodHighlight.java | 185 - libjava/java/awt/im/InputMethodRequests.java | 153 - libjava/java/awt/im/InputSubset.java | 129 - libjava/java/awt/im/spi/InputMethod.java | 240 - .../java/awt/im/spi/InputMethodContext.java | 123 - .../awt/im/spi/InputMethodDescriptor.java | 113 - libjava/java/awt/image/AffineTransformOp.java | 375 - .../awt/image/AreaAveragingScaleFilter.java | 127 - libjava/java/awt/image/BandCombineOp.java | 168 - libjava/java/awt/image/BandedSampleModel.java | 537 - libjava/java/awt/image/BufferStrategy.java | 124 - libjava/java/awt/image/BufferedImage.java | 693 -- .../java/awt/image/BufferedImageFilter.java | 110 - libjava/java/awt/image/BufferedImageOp.java | 55 - libjava/java/awt/image/ByteLookupTable.java | 166 - libjava/java/awt/image/ColorConvertOp.java | 319 - libjava/java/awt/image/ColorModel.java | 758 -- .../java/awt/image/ComponentColorModel.java | 391 - .../java/awt/image/ComponentSampleModel.java | 544 - libjava/java/awt/image/ConvolveOp.java | 337 - libjava/java/awt/image/CropImageFilter.java | 180 - libjava/java/awt/image/DataBuffer.java | 436 - libjava/java/awt/image/DataBufferByte.java | 242 - libjava/java/awt/image/DataBufferDouble.java | 285 - libjava/java/awt/image/DataBufferFloat.java | 283 - libjava/java/awt/image/DataBufferInt.java | 241 - libjava/java/awt/image/DataBufferShort.java | 242 - libjava/java/awt/image/DataBufferUShort.java | 243 - libjava/java/awt/image/DirectColorModel.java | 420 - .../java/awt/image/FilteredImageSource.java | 125 - libjava/java/awt/image/ImageConsumer.java | 216 - libjava/java/awt/image/ImageFilter.java | 221 - libjava/java/awt/image/ImageObserver.java | 129 - libjava/java/awt/image/ImageProducer.java | 85 - .../java/awt/image/ImagingOpException.java | 66 - libjava/java/awt/image/IndexColorModel.java | 516 - libjava/java/awt/image/Kernel.java | 143 - libjava/java/awt/image/LookupOp.java | 252 - libjava/java/awt/image/LookupTable.java | 109 - libjava/java/awt/image/MemoryImageSource.java | 373 - .../image/MultiPixelPackedSampleModel.java | 388 - libjava/java/awt/image/PackedColorModel.java | 192 - libjava/java/awt/image/PixelGrabber.java | 624 -- .../image/PixelInterleavedSampleModel.java | 98 - libjava/java/awt/image/RGBImageFilter.java | 265 - libjava/java/awt/image/Raster.java | 546 - .../java/awt/image/RasterFormatException.java | 65 - libjava/java/awt/image/RasterOp.java | 57 - libjava/java/awt/image/RenderedImage.java | 70 - .../java/awt/image/ReplicateScaleFilter.java | 244 - libjava/java/awt/image/RescaleOp.java | 218 - libjava/java/awt/image/SampleModel.java | 477 - libjava/java/awt/image/ShortLookupTable.java | 162 - .../image/SinglePixelPackedSampleModel.java | 449 - libjava/java/awt/image/TileObserver.java | 47 - libjava/java/awt/image/VolatileImage.java | 253 - libjava/java/awt/image/WritableRaster.java | 265 - .../java/awt/image/WritableRenderedImage.java | 56 - .../ContextualRenderedImageFactory.java | 56 - .../awt/image/renderable/ParameterBlock.java | 308 - .../awt/image/renderable/RenderContext.java | 141 - .../awt/image/renderable/RenderableImage.java | 62 - .../image/renderable/RenderableImageOp.java | 157 - .../renderable/RenderableImageProducer.java | 79 - .../renderable/RenderedImageFactory.java | 47 - libjava/java/awt/peer/ButtonPeer.java | 46 - libjava/java/awt/peer/CanvasPeer.java | 45 - .../java/awt/peer/CheckboxMenuItemPeer.java | 46 - libjava/java/awt/peer/CheckboxPeer.java | 52 - libjava/java/awt/peer/ChoicePeer.java | 54 - libjava/java/awt/peer/ComponentPeer.java | 187 - libjava/java/awt/peer/ContainerPeer.java | 59 - libjava/java/awt/peer/DialogPeer.java | 48 - libjava/java/awt/peer/FileDialogPeer.java | 52 - libjava/java/awt/peer/FontPeer.java | 45 - libjava/java/awt/peer/FramePeer.java | 55 - libjava/java/awt/peer/LabelPeer.java | 46 - libjava/java/awt/peer/LightweightPeer.java | 45 - libjava/java/awt/peer/ListPeer.java | 61 - libjava/java/awt/peer/MenuBarPeer.java | 48 - libjava/java/awt/peer/MenuComponentPeer.java | 45 - libjava/java/awt/peer/MenuItemPeer.java | 48 - libjava/java/awt/peer/MenuPeer.java | 48 - libjava/java/awt/peer/PanelPeer.java | 45 - libjava/java/awt/peer/PopupMenuPeer.java | 53 - libjava/java/awt/peer/RobotPeer.java | 54 - libjava/java/awt/peer/ScrollPanePeer.java | 52 - libjava/java/awt/peer/ScrollbarPeer.java | 47 - libjava/java/awt/peer/TextAreaPeer.java | 53 - libjava/java/awt/peer/TextComponentPeer.java | 57 - libjava/java/awt/peer/TextFieldPeer.java | 52 - libjava/java/awt/peer/WindowPeer.java | 46 - libjava/java/awt/print/Book.java | 159 - libjava/java/awt/print/PageFormat.java | 292 - libjava/java/awt/print/Pageable.java | 113 - libjava/java/awt/print/Paper.java | 236 - libjava/java/awt/print/Printable.java | 80 - .../java/awt/print/PrinterAbortException.java | 71 - libjava/java/awt/print/PrinterException.java | 71 - libjava/java/awt/print/PrinterGraphics.java | 61 - .../java/awt/print/PrinterIOException.java | 98 - libjava/java/awt/print/PrinterJob.java | 299 - libjava/java/beans/AppletInitializer.java | 61 - libjava/java/beans/BeanDescriptor.java | 89 - libjava/java/beans/BeanInfo.java | 181 - libjava/java/beans/Beans.java | 368 - libjava/java/beans/Customizer.java | 86 - libjava/java/beans/DesignMode.java | 93 - libjava/java/beans/EventHandler.java | 606 -- libjava/java/beans/EventSetDescriptor.java | 442 - libjava/java/beans/ExceptionListener.java | 57 - libjava/java/beans/Expression.java | 133 - libjava/java/beans/FeatureDescriptor.java | 232 - .../java/beans/IndexedPropertyDescriptor.java | 307 - .../java/beans/IntrospectionException.java | 67 - libjava/java/beans/Introspector.java | 608 -- libjava/java/beans/MethodDescriptor.java | 88 - libjava/java/beans/ParameterDescriptor.java | 52 - libjava/java/beans/PropertyChangeEvent.java | 189 - .../java/beans/PropertyChangeListener.java | 61 - .../beans/PropertyChangeListenerProxy.java | 102 - libjava/java/beans/PropertyChangeSupport.java | 488 - libjava/java/beans/PropertyDescriptor.java | 583 -- libjava/java/beans/PropertyEditor.java | 209 - libjava/java/beans/PropertyEditorManager.java | 215 - libjava/java/beans/PropertyEditorSupport.java | 265 - libjava/java/beans/PropertyVetoException.java | 85 - libjava/java/beans/SimpleBeanInfo.java | 139 - libjava/java/beans/Statement.java | 326 - .../java/beans/VetoableChangeListener.java | 73 - .../beans/VetoableChangeListenerProxy.java | 102 - libjava/java/beans/VetoableChangeSupport.java | 530 - libjava/java/beans/Visibility.java | 85 - libjava/java/beans/XMLDecoder.java | 307 - .../java/beans/beancontext/BeanContext.java | 272 - .../beans/beancontext/BeanContextChild.java | 174 - .../BeanContextChildComponentProxy.java | 60 - .../beancontext/BeanContextChildSupport.java | 381 - .../BeanContextContainerProxy.java | 63 - .../beans/beancontext/BeanContextEvent.java | 110 - .../BeanContextMembershipEvent.java | 112 - .../BeanContextMembershipListener.java | 70 - .../beans/beancontext/BeanContextProxy.java | 65 - .../BeanContextServiceAvailableEvent.java | 95 - .../BeanContextServiceProvider.java | 138 - .../BeanContextServiceProviderBeanInfo.java | 60 - .../BeanContextServiceRevokedEvent.java | 110 - .../BeanContextServiceRevokedListener.java | 62 - .../beancontext/BeanContextServices.java | 216 - .../BeanContextServicesListener.java | 56 - .../BeanContextServicesSupport.java | 300 - .../beans/beancontext/BeanContextSupport.java | 460 - libjava/java/io/BufferedOutputStream.java | 192 - libjava/java/io/BufferedReader.java | 581 -- libjava/java/io/BufferedWriter.java | 262 - libjava/java/io/ByteArrayInputStream.java | 251 - libjava/java/io/ByteArrayOutputStream.java | 283 - libjava/java/io/CharArrayReader.java | 305 - libjava/java/io/CharArrayWriter.java | 274 - libjava/java/io/CharConversionException.java | 73 - libjava/java/io/DataInput.java | 456 - libjava/java/io/DataInputStream.java | 739 -- libjava/java/io/DataOutput.java | 326 - libjava/java/io/DataOutputStream.java | 455 - libjava/java/io/EOFException.java | 76 - libjava/java/io/Externalizable.java | 107 - libjava/java/io/FileDescriptor.java | 139 - libjava/java/io/FileFilter.java | 65 - libjava/java/io/FileNotFoundException.java | 73 - libjava/java/io/FilePermission.java | 292 - libjava/java/io/FileReader.java | 92 - libjava/java/io/FileWriter.java | 137 - libjava/java/io/FilenameFilter.java | 76 - libjava/java/io/FilterInputStream.java | 203 - libjava/java/io/FilterOutputStream.java | 150 - libjava/java/io/FilterReader.java | 185 - libjava/java/io/FilterWriter.java | 147 - libjava/java/io/IOException.java | 74 - libjava/java/io/InputStream.java | 272 - libjava/java/io/InterruptedIOException.java | 94 - libjava/java/io/InvalidClassException.java | 111 - libjava/java/io/InvalidObjectException.java | 66 - libjava/java/io/LineNumberInputStream.java | 315 - libjava/java/io/LineNumberReader.java | 417 - libjava/java/io/NotActiveException.java | 72 - libjava/java/io/NotSerializableException.java | 74 - libjava/java/io/ObjectInput.java | 140 - libjava/java/io/ObjectInputValidation.java | 67 - libjava/java/io/ObjectOutput.java | 111 - libjava/java/io/ObjectOutputStream.java | 1570 --- libjava/java/io/ObjectStreamConstants.java | 89 - libjava/java/io/ObjectStreamException.java | 74 - libjava/java/io/ObjectStreamField.java | 412 - libjava/java/io/OptionalDataException.java | 91 - libjava/java/io/OutputStream.java | 140 - libjava/java/io/PipedInputStream.java | 374 - libjava/java/io/PipedOutputStream.java | 181 - libjava/java/io/PipedReader.java | 361 - libjava/java/io/PipedWriter.java | 182 - libjava/java/io/PrintWriter.java | 571 -- libjava/java/io/PushbackInputStream.java | 328 - libjava/java/io/PushbackReader.java | 384 - libjava/java/io/Reader.java | 271 - libjava/java/io/SequenceInputStream.java | 221 - libjava/java/io/Serializable.java | 54 - libjava/java/io/SerializablePermission.java | 113 - libjava/java/io/StreamCorruptedException.java | 73 - libjava/java/io/StreamTokenizer.java | 708 -- libjava/java/io/StringBufferInputStream.java | 187 - libjava/java/io/StringReader.java | 209 - libjava/java/io/StringWriter.java | 191 - libjava/java/io/SyncFailedException.java | 66 - libjava/java/io/UTFDataFormatException.java | 74 - .../java/io/UnsupportedEncodingException.java | 73 - libjava/java/io/WriteAbortedException.java | 109 - libjava/java/io/Writer.java | 192 - libjava/java/lang/AbstractMethodError.java | 75 - libjava/java/lang/ArithmeticException.java | 77 - .../lang/ArrayIndexOutOfBoundsException.java | 87 - libjava/java/lang/ArrayStoreException.java | 77 - libjava/java/lang/AssertionError.java | 148 - libjava/java/lang/Boolean.java | 224 - libjava/java/lang/Byte.java | 357 - libjava/java/lang/CharSequence.java | 99 - libjava/java/lang/ClassCastException.java | 76 - libjava/java/lang/ClassCircularityError.java | 73 - libjava/java/lang/ClassFormatError.java | 72 - libjava/java/lang/ClassNotFoundException.java | 125 - .../java/lang/CloneNotSupportedException.java | 92 - libjava/java/lang/Cloneable.java | 78 - libjava/java/lang/Comparable.java | 98 - libjava/java/lang/Compiler.java | 127 - libjava/java/lang/Error.java | 107 - libjava/java/lang/Exception.java | 104 - .../lang/ExceptionInInitializerError.java | 123 - libjava/java/lang/IllegalAccessError.java | 76 - libjava/java/lang/IllegalAccessException.java | 95 - .../java/lang/IllegalArgumentException.java | 75 - .../lang/IllegalMonitorStateException.java | 78 - libjava/java/lang/IllegalStateException.java | 80 - .../lang/IllegalThreadStateException.java | 75 - .../lang/IncompatibleClassChangeError.java | 73 - .../java/lang/IndexOutOfBoundsException.java | 75 - libjava/java/lang/InstantiationError.java | 75 - libjava/java/lang/InstantiationException.java | 74 - libjava/java/lang/Integer.java | 606 -- libjava/java/lang/InternalError.java | 72 - libjava/java/lang/InterruptedException.java | 80 - libjava/java/lang/LinkageError.java | 74 - libjava/java/lang/Long.java | 614 -- libjava/java/lang/Math.java | 650 -- .../java/lang/NegativeArraySizeException.java | 77 - libjava/java/lang/NoClassDefFoundError.java | 76 - libjava/java/lang/NoSuchFieldError.java | 74 - libjava/java/lang/NoSuchFieldException.java | 73 - libjava/java/lang/NoSuchMethodError.java | 74 - libjava/java/lang/NoSuchMethodException.java | 72 - libjava/java/lang/NullPointerException.java | 82 - libjava/java/lang/Number.java | 131 - libjava/java/lang/NumberFormatException.java | 73 - libjava/java/lang/OutOfMemoryError.java | 73 - libjava/java/lang/Process.java | 129 - libjava/java/lang/Runnable.java | 62 - libjava/java/lang/RuntimeException.java | 102 - libjava/java/lang/RuntimePermission.java | 208 - libjava/java/lang/SecurityException.java | 74 - libjava/java/lang/Short.java | 353 - libjava/java/lang/StackOverflowError.java | 72 - libjava/java/lang/StackTraceElement.java | 259 - libjava/java/lang/StrictMath.java | 1844 ---- .../lang/StringIndexOutOfBoundsException.java | 85 - libjava/java/lang/ThreadDeath.java | 68 - libjava/java/lang/ThreadGroup.java | 749 -- libjava/java/lang/Throwable.java | 563 - libjava/java/lang/UnknownError.java | 72 - libjava/java/lang/UnsatisfiedLinkError.java | 74 - .../lang/UnsupportedClassVersionError.java | 74 - .../lang/UnsupportedOperationException.java | 73 - libjava/java/lang/VerifyError.java | 72 - libjava/java/lang/VirtualMachineError.java | 73 - libjava/java/lang/Void.java | 68 - libjava/java/lang/dtoa.c | 906 -- libjava/java/lang/e_acos.c | 111 - libjava/java/lang/e_asin.c | 120 - libjava/java/lang/e_atan2.c | 131 - libjava/java/lang/e_exp.c | 167 - libjava/java/lang/e_fmod.c | 140 - libjava/java/lang/e_log.c | 152 - libjava/java/lang/e_pow.c | 312 - libjava/java/lang/e_rem_pio2.c | 185 - libjava/java/lang/e_remainder.c | 80 - libjava/java/lang/e_scalb.c | 55 - libjava/java/lang/e_sqrt.c | 452 - libjava/java/lang/fdlibm.h | 350 - libjava/java/lang/ieeefp.h | 163 - libjava/java/lang/k_cos.c | 96 - libjava/java/lang/k_rem_pio2.c | 320 - libjava/java/lang/k_sin.c | 79 - libjava/java/lang/k_tan.c | 132 - libjava/java/lang/mprec.c | 958 -- libjava/java/lang/mprec.h | 397 - libjava/java/lang/ref/PhantomReference.java | 73 - libjava/java/lang/ref/ReferenceQueue.java | 145 - libjava/java/lang/ref/SoftReference.java | 84 - libjava/java/lang/ref/WeakReference.java | 79 - .../java/lang/reflect/AccessibleObject.java | 159 - .../java/lang/reflect/InvocationHandler.java | 137 - .../reflect/InvocationTargetException.java | 123 - libjava/java/lang/reflect/Member.java | 100 - libjava/java/lang/reflect/Proxy.java | 1615 --- .../java/lang/reflect/ReflectPermission.java | 102 - .../reflect/UndeclaredThrowableException.java | 128 - libjava/java/lang/s_atan.c | 181 - libjava/java/lang/s_ceil.c | 80 - libjava/java/lang/s_copysign.c | 82 - libjava/java/lang/s_cos.c | 82 - libjava/java/lang/s_fabs.c | 73 - libjava/java/lang/s_floor.c | 134 - libjava/java/lang/s_rint.c | 87 - libjava/java/lang/s_scalbn.c | 104 - libjava/java/lang/s_sin.c | 132 - libjava/java/lang/s_tan.c | 114 - libjava/java/lang/sf_fabs.c | 47 - libjava/java/lang/sf_rint.c | 80 - libjava/java/lang/strtod.c | 719 -- libjava/java/lang/w_acos.c | 118 - libjava/java/lang/w_asin.c | 121 - libjava/java/lang/w_atan2.c | 117 - libjava/java/lang/w_exp.c | 140 - libjava/java/lang/w_fmod.c | 107 - libjava/java/lang/w_log.c | 115 - libjava/java/lang/w_pow.c | 231 - libjava/java/lang/w_remainder.c | 119 - libjava/java/lang/w_sqrt.c | 93 - libjava/java/math/BigDecimal.java | 517 - libjava/java/math/BigInteger.java | 2230 ---- libjava/java/net/Authenticator.java | 313 - libjava/java/net/BindException.java | 74 - libjava/java/net/ConnectException.java | 75 - libjava/java/net/ContentHandler.java | 126 - libjava/java/net/ContentHandlerFactory.java | 65 - libjava/java/net/DatagramPacket.java | 391 - libjava/java/net/DatagramSocket.java | 931 -- libjava/java/net/DatagramSocketImpl.java | 296 - .../java/net/DatagramSocketImplFactory.java | 60 - libjava/java/net/FileNameMap.java | 65 - libjava/java/net/HttpURLConnection.java | 589 -- libjava/java/net/Inet4Address.java | 233 - libjava/java/net/Inet6Address.java | 261 - libjava/java/net/InetSocketAddress.java | 221 - libjava/java/net/MalformedURLException.java | 74 - libjava/java/net/MulticastSocket.java | 486 - libjava/java/net/NetPermission.java | 90 - libjava/java/net/NetworkInterface.java | 259 - libjava/java/net/NoRouteToHostException.java | 74 - libjava/java/net/PasswordAuthentication.java | 92 - .../java/net/PortUnreachableException.java | 72 - libjava/java/net/ProtocolException.java | 75 - libjava/java/net/Socket.java | 1284 --- libjava/java/net/SocketAddress.java | 63 - libjava/java/net/SocketException.java | 75 - libjava/java/net/SocketImpl.java | 321 - libjava/java/net/SocketImplFactory.java | 59 - libjava/java/net/SocketOptions.java | 166 - libjava/java/net/SocketPermission.java | 408 - libjava/java/net/SocketTimeoutException.java | 73 - libjava/java/net/URI.java | 893 -- libjava/java/net/URISyntaxException.java | 144 - libjava/java/net/URLDecoder.java | 180 - libjava/java/net/URLEncoder.java | 184 - libjava/java/net/URLStreamHandler.java | 532 - libjava/java/net/URLStreamHandlerFactory.java | 65 - libjava/java/net/UnknownHostException.java | 77 - libjava/java/net/UnknownServiceException.java | 76 - libjava/java/nio/BufferOverflowException.java | 51 - .../java/nio/BufferUnderflowException.java | 51 - libjava/java/nio/ByteBuffer.java | 651 -- libjava/java/nio/ByteBufferHelper.java | 344 - libjava/java/nio/ByteBufferImpl.java | 379 - libjava/java/nio/ByteOrder.java | 82 - libjava/java/nio/CharBuffer.java | 508 - libjava/java/nio/CharBufferImpl.java | 219 - libjava/java/nio/CharViewBufferImpl.java | 187 - libjava/java/nio/DoubleBuffer.java | 383 - libjava/java/nio/DoubleBufferImpl.java | 172 - libjava/java/nio/DoubleViewBufferImpl.java | 172 - libjava/java/nio/FloatBuffer.java | 383 - libjava/java/nio/FloatBufferImpl.java | 172 - libjava/java/nio/FloatViewBufferImpl.java | 173 - libjava/java/nio/IntBuffer.java | 383 - libjava/java/nio/IntBufferImpl.java | 172 - libjava/java/nio/IntViewBufferImpl.java | 173 - libjava/java/nio/InvalidMarkException.java | 52 - libjava/java/nio/LongBuffer.java | 383 - libjava/java/nio/LongBufferImpl.java | 172 - libjava/java/nio/LongViewBufferImpl.java | 173 - libjava/java/nio/ReadOnlyBufferException.java | 52 - libjava/java/nio/ShortBuffer.java | 383 - libjava/java/nio/ShortBufferImpl.java | 172 - libjava/java/nio/ShortViewBufferImpl.java | 173 - .../channels/AlreadyConnectedException.java | 48 - .../channels/AsynchronousCloseException.java | 53 - libjava/java/nio/channels/ByteChannel.java | 43 - .../nio/channels/CancelledKeyException.java | 53 - libjava/java/nio/channels/Channel.java | 59 - .../channels/ClosedByInterruptException.java | 53 - .../nio/channels/ClosedChannelException.java | 55 - .../nio/channels/ClosedSelectorException.java | 53 - .../channels/ConnectionPendingException.java | 53 - .../java/nio/channels/DatagramChannel.java | 210 - libjava/java/nio/channels/FileChannel.java | 367 - libjava/java/nio/channels/FileLock.java | 150 - .../FileLockInterruptionException.java | 55 - .../nio/channels/GatheringByteChannel.java | 79 - .../IllegalBlockingModeException.java | 57 - .../channels/IllegalSelectorException.java | 53 - .../nio/channels/InterruptibleChannel.java | 51 - .../NoConnectionPendingException.java | 53 - .../channels/NonReadableChannelException.java | 53 - .../channels/NonWritableChannelException.java | 53 - .../nio/channels/NotYetBoundException.java | 53 - .../channels/NotYetConnectedException.java | 53 - .../OverlappingFileLockException.java | 53 - libjava/java/nio/channels/Pipe.java | 121 - .../nio/channels/ReadableByteChannel.java | 64 - .../nio/channels/ScatteringByteChannel.java | 79 - .../java/nio/channels/SelectableChannel.java | 140 - libjava/java/nio/channels/SelectionKey.java | 164 - libjava/java/nio/channels/Selector.java | 134 - .../nio/channels/ServerSocketChannel.java | 98 - libjava/java/nio/channels/SocketChannel.java | 248 - .../channels/UnresolvedAddressException.java | 53 - .../UnsupportedAddressTypeException.java | 53 - .../nio/channels/WritableByteChannel.java | 60 - .../spi/AbstractInterruptibleChannel.java | 119 - .../spi/AbstractSelectableChannel.java | 256 - .../channels/spi/AbstractSelectionKey.java | 78 - .../nio/channels/spi/AbstractSelector.java | 167 - .../nio/channels/spi/SelectorProvider.java | 151 - .../nio/charset/CharacterCodingException.java | 53 - libjava/java/nio/charset/CharsetDecoder.java | 313 - libjava/java/nio/charset/CharsetEncoder.java | 365 - .../nio/charset/CoderMalfunctionError.java | 52 - libjava/java/nio/charset/CoderResult.java | 189 - .../java/nio/charset/CodingErrorAction.java | 66 - .../charset/IllegalCharsetNameException.java | 73 - .../nio/charset/MalformedInputException.java | 77 - .../charset/UnmappableCharacterException.java | 71 - .../charset/UnsupportedCharsetException.java | 69 - .../java/nio/charset/spi/CharsetProvider.java | 91 - libjava/java/rmi/AccessException.java | 76 - libjava/java/rmi/AlreadyBoundException.java | 73 - libjava/java/rmi/ConnectException.java | 74 - libjava/java/rmi/ConnectIOException.java | 74 - libjava/java/rmi/MarshalException.java | 76 - libjava/java/rmi/MarshalledObject.java | 113 - libjava/java/rmi/Naming.java | 220 - libjava/java/rmi/NoSuchObjectException.java | 68 - libjava/java/rmi/NotBoundException.java | 75 - libjava/java/rmi/RMISecurityException.java | 77 - libjava/java/rmi/RMISecurityManager.java | 48 - libjava/java/rmi/Remote.java | 41 - libjava/java/rmi/RemoteException.java | 127 - libjava/java/rmi/ServerError.java | 64 - libjava/java/rmi/ServerException.java | 74 - libjava/java/rmi/ServerRuntimeException.java | 67 - libjava/java/rmi/StubNotFoundException.java | 77 - libjava/java/rmi/UnexpectedException.java | 75 - libjava/java/rmi/UnknownHostException.java | 75 - libjava/java/rmi/UnmarshalException.java | 88 - libjava/java/rmi/activation/Activatable.java | 105 - .../activation/ActivateFailedException.java | 76 - .../java/rmi/activation/ActivationDesc.java | 113 - .../rmi/activation/ActivationException.java | 122 - .../java/rmi/activation/ActivationGroup.java | 85 - .../rmi/activation/ActivationGroupDesc.java | 134 - .../rmi/activation/ActivationGroupID.java | 70 - libjava/java/rmi/activation/ActivationID.java | 72 - .../activation/ActivationInstantiator.java | 50 - .../rmi/activation/ActivationMonitor.java | 55 - .../java/rmi/activation/ActivationSystem.java | 78 - libjava/java/rmi/activation/Activator.java | 50 - .../rmi/activation/UnknownGroupException.java | 69 - .../activation/UnknownObjectException.java | 69 - libjava/java/rmi/dgc/DGC.java | 51 - libjava/java/rmi/dgc/Lease.java | 67 - libjava/java/rmi/dgc/VMID.java | 138 - libjava/java/rmi/registry/LocateRegistry.java | 87 - libjava/java/rmi/registry/Registry.java | 65 - .../java/rmi/registry/RegistryHandler.java | 58 - libjava/java/rmi/server/ExportException.java | 78 - libjava/java/rmi/server/LoaderHandler.java | 66 - libjava/java/rmi/server/LogStream.java | 146 - libjava/java/rmi/server/ObjID.java | 103 - libjava/java/rmi/server/Operation.java | 70 - libjava/java/rmi/server/RMIClassLoader.java | 339 - .../java/rmi/server/RMIClassLoaderSpi.java | 64 - .../rmi/server/RMIClientSocketFactory.java | 47 - .../java/rmi/server/RMIFailureHandler.java | 46 - .../rmi/server/RMIServerSocketFactory.java | 47 - libjava/java/rmi/server/RMISocketFactory.java | 108 - libjava/java/rmi/server/RemoteCall.java | 86 - libjava/java/rmi/server/RemoteObject.java | 160 - libjava/java/rmi/server/RemoteRef.java | 79 - libjava/java/rmi/server/RemoteServer.java | 76 - libjava/java/rmi/server/RemoteStub.java | 61 - .../java/rmi/server/ServerCloneException.java | 117 - .../rmi/server/ServerNotActiveException.java | 72 - libjava/java/rmi/server/ServerRef.java | 51 - libjava/java/rmi/server/Skeleton.java | 57 - .../rmi/server/SkeletonMismatchException.java | 68 - .../rmi/server/SkeletonNotFoundException.java | 79 - .../rmi/server/SocketSecurityException.java | 75 - libjava/java/rmi/server/UID.java | 127 - .../java/rmi/server/UnicastRemoteObject.java | 133 - libjava/java/rmi/server/Unreferenced.java | 43 - .../java/security/AccessControlException.java | 97 - .../security/AlgorithmParameterGenerator.java | 302 - .../AlgorithmParameterGeneratorSpi.java | 94 - .../java/security/AlgorithmParameters.java | 340 - .../java/security/AlgorithmParametersSpi.java | 149 - libjava/java/security/AllPermission.java | 198 - libjava/java/security/BasicPermission.java | 308 - libjava/java/security/Certificate.java | 125 - libjava/java/security/CodeSource.java | 354 - libjava/java/security/DigestException.java | 70 - libjava/java/security/DigestInputStream.java | 167 - libjava/java/security/DigestOutputStream.java | 158 - libjava/java/security/DomainCombiner.java | 67 - .../java/security/DummyKeyPairGenerator.java | 75 - libjava/java/security/DummyMessageDigest.java | 90 - libjava/java/security/DummySignature.java | 102 - .../security/GeneralSecurityException.java | 75 - libjava/java/security/Guard.java | 60 - libjava/java/security/GuardedObject.java | 121 - libjava/java/security/Identity.java | 407 - libjava/java/security/IdentityScope.java | 226 - .../InvalidAlgorithmParameterException.java | 73 - .../java/security/InvalidKeyException.java | 69 - .../security/InvalidParameterException.java | 70 - libjava/java/security/Key.java | 94 - libjava/java/security/KeyException.java | 72 - libjava/java/security/KeyFactory.java | 297 - libjava/java/security/KeyFactorySpi.java | 133 - .../java/security/KeyManagementException.java | 71 - libjava/java/security/KeyPair.java | 87 - libjava/java/security/KeyPairGenerator.java | 401 - .../java/security/KeyPairGeneratorSpi.java | 102 - libjava/java/security/KeyStore.java | 507 - libjava/java/security/KeyStoreException.java | 70 - libjava/java/security/KeyStoreSpi.java | 275 - libjava/java/security/MessageDigest.java | 413 - libjava/java/security/MessageDigestSpi.java | 155 - .../security/NoSuchAlgorithmException.java | 70 - .../security/NoSuchProviderException.java | 70 - libjava/java/security/Permission.java | 187 - .../java/security/PermissionCollection.java | 167 - libjava/java/security/Permissions.java | 254 - libjava/java/security/Policy.java | 310 - libjava/java/security/Principal.java | 85 - libjava/java/security/PrivateKey.java | 62 - libjava/java/security/PrivilegedAction.java | 64 - .../security/PrivilegedActionException.java | 109 - .../security/PrivilegedExceptionAction.java | 65 - libjava/java/security/ProtectionDomain.java | 269 - libjava/java/security/Provider.java | 202 - libjava/java/security/ProviderException.java | 70 - libjava/java/security/PublicKey.java | 60 - libjava/java/security/SecureClassLoader.java | 128 - libjava/java/security/SecureRandom.java | 380 - libjava/java/security/SecureRandomSpi.java | 85 - libjava/java/security/Security.java | 740 -- libjava/java/security/SecurityPermission.java | 178 - libjava/java/security/Signature.java | 636 -- libjava/java/security/SignatureException.java | 70 - libjava/java/security/SignatureSpi.java | 302 - libjava/java/security/SignedObject.java | 240 - libjava/java/security/Signer.java | 164 - .../security/UnrecoverableKeyException.java | 71 - .../java/security/UnresolvedPermission.java | 304 - libjava/java/security/acl/Acl.java | 153 - libjava/java/security/acl/AclEntry.java | 143 - .../security/acl/AclNotFoundException.java | 60 - libjava/java/security/acl/Group.java | 90 - .../java/security/acl/LastOwnerException.java | 62 - .../java/security/acl/NotOwnerException.java | 62 - libjava/java/security/acl/Owner.java | 95 - libjava/java/security/acl/Permission.java | 67 - libjava/java/security/cert/CRL.java | 98 - libjava/java/security/cert/CRLException.java | 73 - libjava/java/security/cert/CRLSelector.java | 69 - libjava/java/security/cert/CertPath.java | 252 - .../java/security/cert/CertPathBuilder.java | 238 - .../cert/CertPathBuilderException.java | 159 - .../security/cert/CertPathBuilderResult.java | 63 - .../security/cert/CertPathBuilderSpi.java | 74 - .../security/cert/CertPathParameters.java | 58 - .../java/security/cert/CertPathValidator.java | 249 - .../cert/CertPathValidatorException.java | 226 - .../cert/CertPathValidatorResult.java | 63 - .../security/cert/CertPathValidatorSpi.java | 79 - libjava/java/security/cert/CertSelector.java | 58 - libjava/java/security/cert/CertStore.java | 294 - .../security/cert/CertStoreException.java | 159 - .../security/cert/CertStoreParameters.java | 60 - libjava/java/security/cert/CertStoreSpi.java | 102 - libjava/java/security/cert/Certificate.java | 306 - .../cert/CertificateEncodingException.java | 71 - .../security/cert/CertificateException.java | 74 - .../cert/CertificateExpiredException.java | 71 - .../security/cert/CertificateFactory.java | 358 - .../security/cert/CertificateFactorySpi.java | 225 - .../cert/CertificateNotYetValidException.java | 71 - .../cert/CertificateParsingException.java | 71 - .../cert/CollectionCertStoreParameters.java | 121 - .../cert/LDAPCertStoreParameters.java | 140 - .../security/cert/PKIXBuilderParameters.java | 145 - .../cert/PKIXCertPathBuilderResult.java | 102 - .../security/cert/PKIXCertPathChecker.java | 133 - .../cert/PKIXCertPathValidatorResult.java | 142 - .../java/security/cert/PKIXParameters.java | 546 - libjava/java/security/cert/PolicyNode.java | 102 - .../security/cert/PolicyQualifierInfo.java | 168 - libjava/java/security/cert/TrustAnchor.java | 185 - libjava/java/security/cert/X509CRL.java | 397 - libjava/java/security/cert/X509CRLEntry.java | 169 - .../java/security/cert/X509CRLSelector.java | 440 - .../java/security/cert/X509CertSelector.java | 1106 -- .../java/security/cert/X509Certificate.java | 586 -- libjava/java/security/cert/X509Extension.java | 113 - libjava/java/security/interfaces/DSAKey.java | 56 - .../interfaces/DSAKeyPairGenerator.java | 85 - .../java/security/interfaces/DSAParams.java | 72 - .../security/interfaces/DSAPrivateKey.java | 61 - .../security/interfaces/DSAPublicKey.java | 61 - libjava/java/security/interfaces/RSAKey.java | 57 - .../RSAMultiPrimePrivateCrtKey.java | 111 - .../security/interfaces/RSAPrivateCrtKey.java | 95 - .../security/interfaces/RSAPrivateKey.java | 60 - .../security/interfaces/RSAPublicKey.java | 60 - .../security/spec/AlgorithmParameterSpec.java | 52 - .../java/security/spec/DSAParameterSpec.java | 101 - .../java/security/spec/DSAPrivateKeySpec.java | 113 - .../java/security/spec/DSAPublicKeySpec.java | 113 - .../java/security/spec/EncodedKeySpec.java | 85 - .../spec/InvalidKeySpecException.java | 74 - .../spec/InvalidParameterSpecException.java | 76 - libjava/java/security/spec/KeySpec.java | 52 - .../security/spec/PKCS8EncodedKeySpec.java | 81 - .../java/security/spec/PSSParameterSpec.java | 90 - .../security/spec/RSAKeyGenParameterSpec.java | 97 - .../spec/RSAMultiPrimePrivateCrtKeySpec.java | 217 - .../java/security/spec/RSAOtherPrimeInfo.java | 133 - .../security/spec/RSAPrivateCrtKeySpec.java | 151 - .../java/security/spec/RSAPrivateKeySpec.java | 88 - .../java/security/spec/RSAPublicKeySpec.java | 88 - .../security/spec/X509EncodedKeySpec.java | 82 - libjava/java/sql/Array.java | 185 - libjava/java/sql/BatchUpdateException.java | 141 - libjava/java/sql/Blob.java | 131 - libjava/java/sql/CallableStatement.java | 651 -- libjava/java/sql/Clob.java | 152 - libjava/java/sql/Connection.java | 420 - libjava/java/sql/DataTruncation.java | 157 - libjava/java/sql/DatabaseMetaData.java | 2214 ---- libjava/java/sql/Date.java | 188 - libjava/java/sql/Driver.java | 123 - libjava/java/sql/DriverManager.java | 346 - libjava/java/sql/DriverPropertyInfo.java | 88 - libjava/java/sql/ParameterMetaData.java | 103 - libjava/java/sql/PreparedStatement.java | 438 - libjava/java/sql/Ref.java | 75 - libjava/java/sql/ResultSet.java | 1530 --- libjava/java/sql/ResultSetMetaData.java | 281 - libjava/java/sql/SQLData.java | 72 - libjava/java/sql/SQLException.java | 167 - libjava/java/sql/SQLInput.java | 259 - libjava/java/sql/SQLOutput.java | 257 - libjava/java/sql/SQLPermission.java | 57 - libjava/java/sql/SQLWarning.java | 120 - libjava/java/sql/Savepoint.java | 55 - libjava/java/sql/Statement.java | 366 - libjava/java/sql/Struct.java | 77 - libjava/java/sql/Time.java | 205 - libjava/java/sql/Timestamp.java | 315 - libjava/java/sql/Types.java | 85 - libjava/java/text/Annotation.java | 113 - .../text/AttributedCharacterIterator.java | 268 - libjava/java/text/AttributedString.java | 425 - .../java/text/AttributedStringIterator.java | 348 - libjava/java/text/BreakIterator.java | 374 - libjava/java/text/CharacterIterator.java | 144 - libjava/java/text/ChoiceFormat.java | 503 - .../java/text/CollationElementIterator.java | 467 - libjava/java/text/CollationKey.java | 199 - libjava/java/text/DecimalFormat.java | 1265 --- libjava/java/text/FieldPosition.java | 232 - libjava/java/text/Format.java | 181 - libjava/java/text/MessageFormat.java | 832 -- libjava/java/text/NumberFormat.java | 803 -- libjava/java/text/ParseException.java | 86 - libjava/java/text/ParsePosition.java | 151 - libjava/java/text/RuleBasedCollator.java | 1017 -- .../java/text/StringCharacterIterator.java | 356 - libjava/java/util/AbstractCollection.java | 470 - libjava/java/util/AbstractList.java | 1225 --- libjava/java/util/AbstractMap.java | 749 -- libjava/java/util/AbstractSequentialList.java | 235 - libjava/java/util/AbstractSet.java | 139 - libjava/java/util/ArrayList.java | 591 -- libjava/java/util/Arrays.java | 2510 ----- libjava/java/util/BitSet.java | 744 -- libjava/java/util/Collection.java | 288 - libjava/java/util/Collections.java | 5493 ---------- libjava/java/util/Comparator.java | 119 - .../util/ConcurrentModificationException.java | 92 - libjava/java/util/Dictionary.java | 136 - libjava/java/util/EmptyStackException.java | 69 - libjava/java/util/Enumeration.java | 81 - libjava/java/util/EventListener.java | 54 - libjava/java/util/EventListenerProxy.java | 75 - libjava/java/util/EventObject.java | 101 - libjava/java/util/HashMap.java | 906 -- libjava/java/util/HashSet.java | 293 - libjava/java/util/Hashtable.java | 1151 --- libjava/java/util/IdentityHashMap.java | 935 -- libjava/java/util/Iterator.java | 87 - libjava/java/util/LinkedHashMap.java | 501 - libjava/java/util/LinkedHashSet.java | 160 - libjava/java/util/LinkedList.java | 958 -- libjava/java/util/List.java | 451 - libjava/java/util/ListIterator.java | 170 - libjava/java/util/ListResourceBundle.java | 140 - libjava/java/util/Map.java | 338 - .../java/util/MissingResourceException.java | 105 - libjava/java/util/NoSuchElementException.java | 88 - libjava/java/util/Observable.java | 180 - libjava/java/util/Observer.java | 60 - libjava/java/util/Properties.java | 574 -- libjava/java/util/PropertyPermission.java | 271 - .../util/PropertyPermissionCollection.java | 166 - libjava/java/util/PropertyResourceBundle.java | 152 - libjava/java/util/Random.java | 429 - libjava/java/util/RandomAccess.java | 64 - libjava/java/util/Set.java | 264 - libjava/java/util/SortedMap.java | 173 - libjava/java/util/SortedSet.java | 176 - libjava/java/util/Stack.java | 158 - libjava/java/util/StringTokenizer.java | 268 - libjava/java/util/TimeZone.java | 1331 --- libjava/java/util/Timer.java | 615 -- libjava/java/util/TimerTask.java | 145 - .../java/util/TooManyListenersException.java | 78 - libjava/java/util/TreeMap.java | 1781 ---- libjava/java/util/TreeSet.java | 416 - libjava/java/util/Vector.java | 931 -- libjava/java/util/WeakHashMap.java | 881 -- libjava/java/util/jar/Attributes.java | 630 -- libjava/java/util/jar/JarEntry.java | 165 - libjava/java/util/jar/JarException.java | 77 - libjava/java/util/jar/JarFile.java | 1058 -- libjava/java/util/jar/JarInputStream.java | 200 - libjava/java/util/jar/JarOutputStream.java | 113 - libjava/java/util/jar/Manifest.java | 472 - libjava/java/util/logging/ConsoleHandler.java | 125 - libjava/java/util/logging/ErrorManager.java | 194 - libjava/java/util/logging/FileHandler.java | 506 - libjava/java/util/logging/Filter.java | 64 - libjava/java/util/logging/Formatter.java | 171 - libjava/java/util/logging/Handler.java | 386 - libjava/java/util/logging/Level.java | 414 - libjava/java/util/logging/LogRecord.java | 672 -- .../java/util/logging/LoggingPermission.java | 73 - libjava/java/util/logging/MemoryHandler.java | 345 - .../java/util/logging/SimpleFormatter.java | 119 - libjava/java/util/logging/SocketHandler.java | 221 - libjava/java/util/logging/StreamHandler.java | 521 - libjava/java/util/logging/XMLFormatter.java | 387 - .../java/util/prefs/AbstractPreferences.java | 1272 --- .../util/prefs/BackingStoreException.java | 104 - .../InvalidPreferencesFormatException.java | 116 - libjava/java/util/prefs/NodeChangeEvent.java | 91 - .../java/util/prefs/NodeChangeListener.java | 64 - .../util/prefs/PreferenceChangeEvent.java | 105 - .../util/prefs/PreferenceChangeListener.java | 60 - libjava/java/util/prefs/Preferences.java | 668 -- .../java/util/prefs/PreferencesFactory.java | 65 - libjava/java/util/regex/Matcher.java | 301 - libjava/java/util/regex/Pattern.java | 253 - .../util/regex/PatternSyntaxException.java | 132 - libjava/java/util/zip/Adler32.java | 205 - libjava/java/util/zip/CRC32.java | 132 - libjava/java/util/zip/CheckedInputStream.java | 135 - .../java/util/zip/CheckedOutputStream.java | 100 - libjava/java/util/zip/Checksum.java | 86 - .../java/util/zip/DataFormatException.java | 71 - libjava/java/util/zip/ZipConstants.java | 97 - libjava/java/util/zip/ZipException.java | 72 - libjava/java/util/zip/ZipInputStream.java | 371 - libjava/java/util/zip/ZipOutputStream.java | 399 - libjava/javax/accessibility/Accessible.java | 61 - .../javax/accessibility/AccessibleAction.java | 82 - .../javax/accessibility/AccessibleBundle.java | 120 - .../accessibility/AccessibleComponent.java | 321 - .../accessibility/AccessibleContext.java | 589 -- .../accessibility/AccessibleEditableText.java | 142 - .../AccessibleExtendedComponent.java | 78 - .../AccessibleExtendedTable.java | 81 - .../accessibility/AccessibleHyperlink.java | 139 - .../accessibility/AccessibleHypertext.java | 84 - .../javax/accessibility/AccessibleIcon.java | 85 - .../accessibility/AccessibleKeyBinding.java | 78 - .../accessibility/AccessibleRelation.java | 220 - .../accessibility/AccessibleRelationSet.java | 222 - .../AccessibleResourceBundle.java | 74 - .../javax/accessibility/AccessibleRole.java | 478 - .../accessibility/AccessibleSelection.java | 113 - .../javax/accessibility/AccessibleState.java | 315 - .../accessibility/AccessibleStateSet.java | 172 - .../javax/accessibility/AccessibleTable.java | 236 - .../AccessibleTableModelChange.java | 102 - .../javax/accessibility/AccessibleText.java | 185 - .../javax/accessibility/AccessibleValue.java | 94 - libjava/javax/crypto/BadPaddingException.java | 79 - libjava/javax/crypto/Cipher.java | 1095 -- libjava/javax/crypto/CipherInputStream.java | 383 - libjava/javax/crypto/CipherOutputStream.java | 268 - libjava/javax/crypto/CipherSpi.java | 398 - .../javax/crypto/EncryptedPrivateKeyInfo.java | 282 - libjava/javax/crypto/ExemptionMechanism.java | 229 - .../crypto/ExemptionMechanismException.java | 78 - .../javax/crypto/ExemptionMechanismSpi.java | 149 - .../crypto/IllegalBlockSizeException.java | 71 - libjava/javax/crypto/KeyAgreement.java | 372 - libjava/javax/crypto/KeyAgreementSpi.java | 160 - libjava/javax/crypto/KeyGenerator.java | 283 - libjava/javax/crypto/KeyGeneratorSpi.java | 112 - libjava/javax/crypto/Mac.java | 413 - libjava/javax/crypto/MacSpi.java | 145 - .../javax/crypto/NoSuchPaddingException.java | 71 - libjava/javax/crypto/NullCipher.java | 62 - libjava/javax/crypto/NullCipherImpl.java | 127 - libjava/javax/crypto/SealedObject.java | 355 - libjava/javax/crypto/SecretKey.java | 65 - libjava/javax/crypto/SecretKeyFactory.java | 247 - libjava/javax/crypto/SecretKeyFactorySpi.java | 108 - .../javax/crypto/ShortBufferException.java | 70 - libjava/javax/crypto/interfaces/DHKey.java | 61 - .../javax/crypto/interfaces/DHPrivateKey.java | 69 - .../javax/crypto/interfaces/DHPublicKey.java | 68 - libjava/javax/crypto/interfaces/PBEKey.java | 90 - libjava/javax/crypto/spec/DESKeySpec.java | 220 - libjava/javax/crypto/spec/DESedeKeySpec.java | 151 - .../javax/crypto/spec/DHGenParameterSpec.java | 100 - .../javax/crypto/spec/DHParameterSpec.java | 135 - .../javax/crypto/spec/DHPrivateKeySpec.java | 115 - .../javax/crypto/spec/DHPublicKeySpec.java | 115 - .../javax/crypto/spec/IvParameterSpec.java | 96 - libjava/javax/crypto/spec/PBEKeySpec.java | 176 - .../javax/crypto/spec/PBEParameterSpec.java | 100 - .../javax/crypto/spec/RC2ParameterSpec.java | 166 - .../javax/crypto/spec/RC5ParameterSpec.java | 202 - libjava/javax/crypto/spec/SecretKeySpec.java | 155 - libjava/javax/imageio/IIOException.java | 69 - libjava/javax/imageio/IIOImage.java | 138 - libjava/javax/imageio/IIOParam.java | 171 - libjava/javax/imageio/IIOParamController.java | 58 - libjava/javax/imageio/ImageIO.java | 605 -- libjava/javax/imageio/ImageReadParam.java | 126 - libjava/javax/imageio/ImageReader.java | 556 - libjava/javax/imageio/ImageTranscoder.java | 54 - libjava/javax/imageio/ImageTypeSpecifier.java | 94 - libjava/javax/imageio/ImageWriteParam.java | 398 - libjava/javax/imageio/ImageWriter.java | 390 - .../event/IIOReadProgressListener.java | 117 - .../imageio/event/IIOReadUpdateListener.java | 133 - .../imageio/event/IIOReadWarningListener.java | 55 - .../event/IIOWriteProgressListener.java | 102 - .../event/IIOWriteWarningListener.java | 60 - libjava/javax/imageio/metadata/IIOAttr.java | 378 - .../metadata/IIOInvalidTreeException.java | 68 - .../javax/imageio/metadata/IIOMetadata.java | 213 - .../metadata/IIOMetadataController.java | 47 - .../imageio/metadata/IIOMetadataFormat.java | 124 - .../metadata/IIOMetadataFormatImpl.java | 43 - .../imageio/metadata/IIOMetadataNode.java | 592 -- .../imageio/metadata/IIONamedNodeMap.java | 138 - .../javax/imageio/metadata/IIONodeList.java | 72 - libjava/javax/imageio/spi/IIORegistry.java | 109 - .../javax/imageio/spi/IIOServiceProvider.java | 163 - .../imageio/spi/ImageInputStreamSpi.java | 144 - .../imageio/spi/ImageOutputStreamSpi.java | 143 - libjava/javax/imageio/spi/ImageReaderSpi.java | 121 - .../imageio/spi/ImageReaderWriterSpi.java | 425 - .../javax/imageio/spi/ImageTranscoderSpi.java | 84 - libjava/javax/imageio/spi/ImageWriterSpi.java | 135 - .../imageio/spi/RegisterableService.java | 83 - .../javax/imageio/spi/ServiceRegistry.java | 961 -- .../stream/FileCacheImageInputStream.java | 109 - .../stream/FileCacheImageOutputStream.java | 123 - .../imageio/stream/FileImageInputStream.java | 108 - .../imageio/stream/FileImageOutputStream.java | 133 - .../javax/imageio/stream/IIOByteBuffer.java | 94 - .../imageio/stream/ImageInputStream.java | 650 -- .../imageio/stream/ImageInputStreamImpl.java | 515 - .../imageio/stream/ImageOutputStream.java | 269 - .../imageio/stream/ImageOutputStreamImpl.java | 245 - .../stream/MemoryCacheImageInputStream.java | 98 - .../stream/MemoryCacheImageOutputStream.java | 112 - .../javax/naming/AuthenticationException.java | 53 - .../AuthenticationNotSupportedException.java | 54 - libjava/javax/naming/BinaryRefAddr.java | 156 - libjava/javax/naming/Binding.java | 98 - .../javax/naming/CannotProceedException.java | 105 - .../javax/naming/CommunicationException.java | 53 - libjava/javax/naming/CompositeName.java | 321 - libjava/javax/naming/CompoundName.java | 498 - .../javax/naming/ConfigurationException.java | 53 - libjava/javax/naming/Context.java | 160 - .../naming/ContextNotEmptyException.java | 53 - libjava/javax/naming/InitialContext.java | 393 - .../InsufficientResourcesException.java | 53 - .../naming/InterruptedNamingException.java | 53 - .../javax/naming/InvalidNameException.java | 66 - .../javax/naming/LimitExceededException.java | 53 - libjava/javax/naming/LinkException.java | 117 - libjava/javax/naming/LinkLoopException.java | 53 - libjava/javax/naming/LinkRef.java | 67 - .../javax/naming/MalformedLinkException.java | 53 - libjava/javax/naming/Name.java | 198 - .../naming/NameAlreadyBoundException.java | 53 - libjava/javax/naming/NameClassPair.java | 101 - .../javax/naming/NameNotFoundException.java | 53 - libjava/javax/naming/NameParser.java | 46 - libjava/javax/naming/NamingEnumeration.java | 48 - libjava/javax/naming/NamingException.java | 315 - .../javax/naming/NamingSecurityException.java | 55 - .../naming/NoInitialContextException.java | 53 - .../javax/naming/NoPermissionException.java | 53 - libjava/javax/naming/NotContextException.java | 53 - .../OperationNotSupportedException.java | 52 - .../javax/naming/PartialResultException.java | 53 - libjava/javax/naming/RefAddr.java | 142 - libjava/javax/naming/Reference.java | 194 - libjava/javax/naming/Referenceable.java | 44 - libjava/javax/naming/ReferralException.java | 68 - .../naming/ServiceUnavailableException.java | 53 - .../naming/SizeLimitExceededException.java | 53 - libjava/javax/naming/StringRefAddr.java | 75 - .../naming/TimeLimitExceededException.java | 53 - libjava/javax/naming/directory/Attribute.java | 70 - .../directory/AttributeInUseException.java | 54 - .../AttributeModificationException.java | 77 - .../javax/naming/directory/Attributes.java | 62 - .../naming/directory/BasicAttribute.java | 337 - .../naming/directory/BasicAttributes.java | 238 - .../javax/naming/directory/DirContext.java | 83 - .../naming/directory/InitialDirContext.java | 265 - .../InvalidAttributeIdentifierException.java | 54 - .../InvalidAttributeValueException.java | 54 - .../directory/InvalidAttributesException.java | 54 - .../InvalidSearchControlsException.java | 54 - .../InvalidSearchFilterException.java | 54 - .../naming/directory/ModificationItem.java | 80 - .../directory/NoSuchAttributeException.java | 54 - .../directory/SchemaViolationException.java | 54 - .../naming/directory/SearchControls.java | 137 - .../javax/naming/directory/SearchResult.java | 94 - libjava/javax/naming/event/EventContext.java | 65 - .../javax/naming/event/EventDirContext.java | 65 - .../naming/event/NamespaceChangeListener.java | 51 - libjava/javax/naming/event/NamingEvent.java | 120 - .../naming/event/NamingExceptionEvent.java | 75 - .../javax/naming/event/NamingListener.java | 51 - .../naming/event/ObjectChangeListener.java | 49 - libjava/javax/naming/ldap/Control.java | 56 - libjava/javax/naming/ldap/ControlFactory.java | 107 - .../javax/naming/ldap/ExtendedRequest.java | 57 - .../javax/naming/ldap/ExtendedResponse.java | 52 - libjava/javax/naming/ldap/HasControls.java | 51 - .../javax/naming/ldap/InitialLdapContext.java | 133 - libjava/javax/naming/ldap/LdapContext.java | 63 - .../naming/ldap/LdapReferralException.java | 68 - .../naming/ldap/UnsolicitedNotification.java | 52 - .../ldap/UnsolicitedNotificationEvent.java | 70 - .../ldap/UnsolicitedNotificationListener.java | 51 - .../javax/naming/spi/DirObjectFactory.java | 56 - libjava/javax/naming/spi/DirStateFactory.java | 83 - .../javax/naming/spi/DirectoryManager.java | 243 - .../naming/spi/InitialContextFactory.java | 49 - .../spi/InitialContextFactoryBuilder.java | 49 - libjava/javax/naming/spi/NamingManager.java | 398 - libjava/javax/naming/spi/ObjectFactory.java | 51 - .../naming/spi/ObjectFactoryBuilder.java | 54 - libjava/javax/naming/spi/ResolveResult.java | 126 - libjava/javax/naming/spi/Resolver.java | 55 - libjava/javax/naming/spi/StateFactory.java | 55 - libjava/javax/net/ServerSocketFactory.java | 122 - libjava/javax/net/SocketFactory.java | 157 - .../javax/net/VanillaServerSocketFactory.java | 82 - libjava/javax/net/VanillaSocketFactory.java | 88 - .../net/ssl/HandshakeCompletedEvent.java | 152 - .../net/ssl/HandshakeCompletedListener.java | 57 - libjava/javax/net/ssl/HostnameVerifier.java | 64 - libjava/javax/net/ssl/HttpsURLConnection.java | 280 - libjava/javax/net/ssl/KeyManager.java | 51 - libjava/javax/net/ssl/KeyManagerFactory.java | 280 - .../javax/net/ssl/KeyManagerFactorySpi.java | 102 - .../net/ssl/ManagerFactoryParameters.java | 50 - libjava/javax/net/ssl/SSLContext.java | 267 - libjava/javax/net/ssl/SSLContextSpi.java | 109 - libjava/javax/net/ssl/SSLException.java | 59 - .../javax/net/ssl/SSLHandshakeException.java | 51 - libjava/javax/net/ssl/SSLKeyException.java | 52 - .../net/ssl/SSLPeerUnverifiedException.java | 51 - libjava/javax/net/ssl/SSLPermission.java | 66 - .../javax/net/ssl/SSLProtocolException.java | 53 - libjava/javax/net/ssl/SSLServerSocket.java | 188 - .../javax/net/ssl/SSLServerSocketFactory.java | 172 - libjava/javax/net/ssl/SSLSession.java | 168 - .../javax/net/ssl/SSLSessionBindingEvent.java | 94 - .../net/ssl/SSLSessionBindingListener.java | 65 - libjava/javax/net/ssl/SSLSessionContext.java | 103 - libjava/javax/net/ssl/SSLSocket.java | 229 - libjava/javax/net/ssl/SSLSocketFactory.java | 190 - .../net/ssl/TrivialHostnameVerifier.java | 51 - libjava/javax/net/ssl/TrustManager.java | 47 - .../javax/net/ssl/TrustManagerFactory.java | 278 - .../javax/net/ssl/TrustManagerFactorySpi.java | 88 - libjava/javax/net/ssl/X509KeyManager.java | 108 - libjava/javax/net/ssl/X509TrustManager.java | 76 - libjava/javax/print/AttributeException.java | 63 - libjava/javax/print/CancelablePrintJob.java | 52 - libjava/javax/print/Doc.java | 95 - libjava/javax/print/DocFlavor.java | 322 - libjava/javax/print/DocPrintJob.java | 104 - libjava/javax/print/FlavorException.java | 52 - libjava/javax/print/MultiDoc.java | 66 - libjava/javax/print/MultiDocPrintJob.java | 60 - libjava/javax/print/MultiDocPrintService.java | 53 - libjava/javax/print/PrintException.java | 84 - libjava/javax/print/PrintService.java | 226 - libjava/javax/print/PrintServiceLookup.java | 76 - libjava/javax/print/ServiceUIFactory.java | 89 - libjava/javax/print/StreamPrintService.java | 97 - libjava/javax/print/URIException.java | 65 - libjava/javax/print/attribute/Attribute.java | 50 - .../javax/print/attribute/AttributeSet.java | 77 - .../attribute/AttributeSetUtilities.java | 450 - .../javax/print/attribute/DateTimeSyntax.java | 101 - .../javax/print/attribute/DocAttribute.java | 45 - .../print/attribute/DocAttributeSet.java | 55 - libjava/javax/print/attribute/EnumSyntax.java | 146 - .../print/attribute/HashAttributeSet.java | 366 - .../print/attribute/HashDocAttributeSet.java | 94 - .../attribute/HashPrintJobAttributeSet.java | 94 - .../HashPrintRequestAttributeSet.java | 94 - .../HashPrintServiceAttributeSet.java | 94 - .../javax/print/attribute/IntegerSyntax.java | 122 - .../print/attribute/PrintJobAttribute.java | 45 - .../print/attribute/PrintJobAttributeSet.java | 55 - .../attribute/PrintRequestAttribute.java | 45 - .../attribute/PrintRequestAttributeSet.java | 55 - .../attribute/PrintServiceAttribute.java | 45 - .../attribute/PrintServiceAttributeSet.java | 55 - .../print/attribute/ResolutionSyntax.java | 218 - .../print/attribute/SetOfIntegerSyntax.java | 253 - .../javax/print/attribute/Size2DSyntax.java | 225 - .../attribute/SupportedValuesAttribute.java | 45 - libjava/javax/print/attribute/TextSyntax.java | 126 - libjava/javax/print/attribute/URISyntax.java | 112 - .../attribute/UnmodifiableSetException.java | 65 - .../attribute/standard/Chromaticity.java | 86 - .../attribute/standard/ColorSupported.java | 84 - .../print/attribute/standard/Compression.java | 86 - .../print/attribute/standard/Copies.java | 101 - .../attribute/standard/CopiesSupported.java | 87 - .../standard/DateTimeAtCompleted.java | 100 - .../standard/DateTimeAtCreation.java | 100 - .../standard/DateTimeAtProcessing.java | 100 - .../print/attribute/standard/Destination.java | 82 - .../attribute/standard/DocumentName.java | 100 - .../print/attribute/standard/Fidelity.java | 85 - .../print/attribute/standard/Finishings.java | 102 - .../attribute/standard/JobHoldUntil.java | 101 - .../attribute/standard/JobImpressions.java | 101 - .../standard/JobImpressionsCompleted.java | 100 - .../standard/JobImpressionsSupported.java | 79 - .../print/attribute/standard/JobKOctets.java | 101 - .../standard/JobKOctetsProcessed.java | 100 - .../standard/JobKOctetsSupported.java | 79 - .../attribute/standard/JobMediaSheets.java | 101 - .../standard/JobMediaSheetsCompleted.java | 100 - .../standard/JobMediaSheetsSupported.java | 79 - .../standard/JobMessageFromOperator.java | 100 - .../print/attribute/standard/JobName.java | 101 - .../standard/JobOriginatingUserName.java | 100 - .../print/attribute/standard/JobPriority.java | 102 - .../standard/JobPrioritySupported.java | 101 - .../print/attribute/standard/JobSheets.java | 83 - .../print/attribute/standard/JobState.java | 88 - .../attribute/standard/JobStateReason.java | 109 - .../attribute/standard/JobStateReasons.java | 72 - .../javax/print/attribute/standard/Media.java | 81 - .../standard/MediaPrintableArea.java | 146 - .../print/attribute/standard/MediaSize.java | 114 - .../attribute/standard/MediaSizeName.java | 135 - .../standard/MultipleDocumentHandling.java | 89 - .../attribute/standard/NumberOfDocuments.java | 100 - .../standard/NumberOfInterveningJobs.java | 100 - .../print/attribute/standard/NumberUp.java | 100 - .../attribute/standard/NumberUpSupported.java | 95 - .../standard/OrientationRequested.java | 90 - .../standard/OutputDeviceAssigned.java | 100 - .../standard/PDLOverrideSupported.java | 84 - .../print/attribute/standard/PageRanges.java | 97 - .../attribute/standard/PagesPerMinute.java | 101 - .../standard/PagesPerMinuteColor.java | 100 - .../standard/PresentationDirection.java | 97 - .../attribute/standard/PrintQuality.java | 85 - .../print/attribute/standard/PrinterInfo.java | 101 - .../standard/PrinterIsAcceptingJobs.java | 84 - .../attribute/standard/PrinterLocation.java | 101 - .../standard/PrinterMakeAndModel.java | 101 - .../standard/PrinterMessageFromOperator.java | 101 - .../attribute/standard/PrinterMoreInfo.java | 81 - .../standard/PrinterMoreInfoManufacturer.java | 81 - .../print/attribute/standard/PrinterName.java | 101 - .../attribute/standard/PrinterResolution.java | 82 - .../attribute/standard/PrinterState.java | 84 - .../standard/PrinterStateReason.java | 140 - .../standard/PrinterStateReasons.java | 72 - .../print/attribute/standard/PrinterURI.java | 81 - .../attribute/standard/QueuedJobCount.java | 100 - .../ReferenceUriSchemesSupported.java | 96 - .../standard/RequestingUserName.java | 101 - .../print/attribute/standard/Severity.java | 83 - .../attribute/standard/SheetCollate.java | 81 - .../javax/print/attribute/standard/Sides.java | 89 - libjava/javax/print/event/PrintEvent.java | 67 - .../javax/print/event/PrintJobAdapter.java | 117 - .../print/event/PrintJobAttributeEvent.java | 85 - .../event/PrintJobAttributeListener.java | 52 - libjava/javax/print/event/PrintJobEvent.java | 90 - .../javax/print/event/PrintJobListener.java | 87 - .../event/PrintServiceAttributeEvent.java | 83 - .../event/PrintServiceAttributeListener.java | 52 - .../javax/security/auth/AuthPermission.java | 146 - .../security/auth/DestroyFailedException.java | 67 - libjava/javax/security/auth/Destroyable.java | 64 - libjava/javax/security/auth/Policy.java | 79 - .../auth/PrivateCredentialPermission.java | 326 - .../security/auth/RefreshFailedException.java | 63 - libjava/javax/security/auth/Refreshable.java | 65 - libjava/javax/security/auth/Subject.java | 556 - .../security/auth/SubjectDomainCombiner.java | 96 - .../security/auth/callback/Callback.java | 64 - .../auth/callback/CallbackHandler.java | 155 - .../auth/callback/ChoiceCallback.java | 236 - .../auth/callback/ConfirmationCallback.java | 505 - .../auth/callback/LanguageCallback.java | 100 - .../security/auth/callback/NameCallback.java | 178 - .../auth/callback/PasswordCallback.java | 168 - .../auth/callback/TextInputCallback.java | 177 - .../auth/callback/TextOutputCallback.java | 140 - .../UnsupportedCallbackException.java | 101 - .../auth/login/AccountExpiredException.java | 64 - .../auth/login/AppConfigurationEntry.java | 135 - .../security/auth/login/Configuration.java | 120 - .../login/CredentialExpiredException.java | 64 - .../auth/login/FailedLoginException.java | 63 - .../security/auth/login/LoginContext.java | 253 - .../security/auth/login/LoginException.java | 65 - .../auth/login/NullConfiguration.java | 62 - .../javax/security/auth/spi/LoginModule.java | 122 - .../security/auth/x500/X500Principal.java | 530 - .../auth/x500/X500PrivateCredential.java | 149 - libjava/javax/security/cert/Certificate.java | 176 - .../cert/CertificateEncodingException.java | 60 - .../security/cert/CertificateException.java | 60 - .../cert/CertificateExpiredException.java | 60 - .../cert/CertificateNotYetValidException.java | 60 - .../cert/CertificateParsingException.java | 59 - .../javax/security/cert/X509CertBridge.java | 201 - .../javax/security/cert/X509Certificate.java | 189 - .../sasl/AuthenticationException.java | 105 - .../security/sasl/AuthorizeCallback.java | 171 - .../javax/security/sasl/RealmCallback.java | 75 - .../security/sasl/RealmChoiceCallback.java | 71 - libjava/javax/security/sasl/Sasl.java | 690 -- libjava/javax/security/sasl/SaslClient.java | 230 - .../security/sasl/SaslClientFactory.java | 116 - .../javax/security/sasl/SaslException.java | 183 - libjava/javax/security/sasl/SaslServer.java | 225 - .../security/sasl/SaslServerFactory.java | 113 - libjava/javax/sql/ConnectionEvent.java | 78 - .../javax/sql/ConnectionEventListener.java | 57 - .../javax/sql/ConnectionPoolDataSource.java | 79 - libjava/javax/sql/DataSource.java | 80 - libjava/javax/sql/PooledConnection.java | 68 - libjava/javax/sql/RowSet.java | 187 - libjava/javax/sql/RowSetEvent.java | 52 - libjava/javax/sql/RowSetInternal.java | 74 - libjava/javax/sql/RowSetListener.java | 53 - libjava/javax/sql/RowSetMetaData.java | 95 - libjava/javax/sql/RowSetReader.java | 49 - libjava/javax/sql/RowSetWriter.java | 49 - libjava/javax/sql/XAConnection.java | 51 - libjava/javax/sql/XADataSource.java | 61 - libjava/javax/swing/AbstractAction.java | 265 - libjava/javax/swing/AbstractButton.java | 1945 ---- libjava/javax/swing/AbstractCellEditor.java | 163 - libjava/javax/swing/AbstractListModel.java | 179 - libjava/javax/swing/AbstractSpinnerModel.java | 117 - libjava/javax/swing/Action.java | 138 - libjava/javax/swing/ActionMap.java | 210 - libjava/javax/swing/BorderFactory.java | 449 - libjava/javax/swing/BoundedRangeModel.java | 168 - libjava/javax/swing/Box.java | 284 - libjava/javax/swing/BoxLayout.java | 497 - libjava/javax/swing/ButtonGroup.java | 179 - libjava/javax/swing/ButtonModel.java | 82 - libjava/javax/swing/CellEditor.java | 95 - libjava/javax/swing/CellRendererPane.java | 256 - libjava/javax/swing/ComboBoxEditor.java | 97 - libjava/javax/swing/ComboBoxModel.java | 68 - libjava/javax/swing/ComponentInputMap.java | 130 - libjava/javax/swing/DebugGraphics.java | 885 -- .../javax/swing/DefaultBoundedRangeModel.java | 476 - libjava/javax/swing/DefaultButtonModel.java | 537 - libjava/javax/swing/DefaultCellEditor.java | 294 - libjava/javax/swing/DefaultComboBoxModel.java | 239 - .../javax/swing/DefaultDesktopManager.java | 627 -- libjava/javax/swing/DefaultFocusManager.java | 155 - .../javax/swing/DefaultListCellRenderer.java | 179 - libjava/javax/swing/DefaultListModel.java | 521 - .../swing/DefaultListSelectionModel.java | 620 -- .../swing/DefaultSingleSelectionModel.java | 172 - libjava/javax/swing/DesktopManager.java | 177 - libjava/javax/swing/FocusManager.java | 186 - libjava/javax/swing/GrayFilter.java | 85 - libjava/javax/swing/Icon.java | 48 - libjava/javax/swing/ImageIcon.java | 198 - libjava/javax/swing/InputMap.java | 213 - libjava/javax/swing/InputVerifier.java | 75 - .../InternalFrameFocusTraversalPolicy.java | 55 - libjava/javax/swing/JApplet.java | 176 - libjava/javax/swing/JButton.java | 142 - libjava/javax/swing/JCheckBox.java | 143 - libjava/javax/swing/JCheckBoxMenuItem.java | 250 - libjava/javax/swing/JColorChooser.java | 704 -- libjava/javax/swing/JComboBox.java | 1221 --- libjava/javax/swing/JComponent.java | 2279 ----- libjava/javax/swing/JDesktopPane.java | 332 - libjava/javax/swing/JDialog.java | 561 - libjava/javax/swing/JEditorPane.java | 348 - libjava/javax/swing/JFileChooser.java | 959 -- libjava/javax/swing/JFormattedTextField.java | 300 - libjava/javax/swing/JFrame.java | 279 - libjava/javax/swing/JInternalFrame.java | 1716 ---- libjava/javax/swing/JLabel.java | 647 -- libjava/javax/swing/JLayeredPane.java | 560 - libjava/javax/swing/JList.java | 1338 --- libjava/javax/swing/JMenu.java | 894 -- libjava/javax/swing/JMenuBar.java | 459 - libjava/javax/swing/JMenuItem.java | 674 -- libjava/javax/swing/JOptionPane.java | 1547 --- libjava/javax/swing/JPanel.java | 114 - libjava/javax/swing/JPasswordField.java | 270 - libjava/javax/swing/JPopupMenu.java | 1074 -- libjava/javax/swing/JProgressBar.java | 654 -- libjava/javax/swing/JRadioButton.java | 258 - libjava/javax/swing/JRadioButtonMenuItem.java | 212 - libjava/javax/swing/JRootPane.java | 625 -- libjava/javax/swing/JScrollBar.java | 647 -- libjava/javax/swing/JScrollPane.java | 681 -- libjava/javax/swing/JSeparator.java | 208 - libjava/javax/swing/JSlider.java | 907 -- libjava/javax/swing/JSpinner.java | 546 - libjava/javax/swing/JSplitPane.java | 815 -- libjava/javax/swing/JTabbedPane.java | 1476 --- libjava/javax/swing/JTable.java | 1877 ---- libjava/javax/swing/JTextArea.java | 480 - libjava/javax/swing/JTextField.java | 428 - libjava/javax/swing/JTextPane.java | 279 - libjava/javax/swing/JToggleButton.java | 304 - libjava/javax/swing/JToolBar.java | 779 -- libjava/javax/swing/JToolTip.java | 195 - libjava/javax/swing/JTree.java | 1392 --- libjava/javax/swing/JViewport.java | 395 - libjava/javax/swing/JWindow.java | 205 - libjava/javax/swing/KeyStroke.java | 122 - .../swing/LayoutFocusTraversalPolicy.java | 87 - libjava/javax/swing/ListCellRenderer.java | 49 - libjava/javax/swing/ListModel.java | 81 - libjava/javax/swing/ListSelectionModel.java | 82 - libjava/javax/swing/LookAndFeel.java | 203 - libjava/javax/swing/MenuElement.java | 92 - libjava/javax/swing/MenuSelectionManager.java | 382 - libjava/javax/swing/MutableComboBoxModel.java | 83 - libjava/javax/swing/OverlayLayout.java | 191 - libjava/javax/swing/Popup.java | 189 - libjava/javax/swing/PopupFactory.java | 139 - libjava/javax/swing/ProgressMonitor.java | 228 - .../swing/ProgressMonitorInputStream.java | 160 - libjava/javax/swing/Renderer.java | 67 - libjava/javax/swing/RepaintManager.java | 543 - libjava/javax/swing/RootPaneContainer.java | 98 - libjava/javax/swing/ScrollPaneConstants.java | 151 - libjava/javax/swing/ScrollPaneLayout.java | 475 - libjava/javax/swing/Scrollable.java | 50 - libjava/javax/swing/SingleSelectionModel.java | 89 - libjava/javax/swing/SizeRequirements.java | 171 - libjava/javax/swing/SizeSequence.java | 249 - .../swing/SortingFocusTraversalPolicy.java | 333 - libjava/javax/swing/SpinnerDateModel.java | 237 - libjava/javax/swing/SpinnerListModel.java | 296 - libjava/javax/swing/SpinnerModel.java | 109 - libjava/javax/swing/SpinnerNumberModel.java | 298 - libjava/javax/swing/Spring.java | 580 -- libjava/javax/swing/SpringLayout.java | 657 -- libjava/javax/swing/SwingConstants.java | 74 - libjava/javax/swing/SwingUtilities.java | 1322 --- libjava/javax/swing/Timer.java | 485 - libjava/javax/swing/ToolTipManager.java | 642 -- libjava/javax/swing/TransferHandler.java | 190 - libjava/javax/swing/UIDefaults.java | 828 -- libjava/javax/swing/UIManager.java | 474 - .../UnsupportedLookAndFeelException.java | 47 - libjava/javax/swing/ViewportLayout.java | 169 - libjava/javax/swing/WindowConstants.java | 72 - .../javax/swing/border/AbstractBorder.java | 192 - libjava/javax/swing/border/BevelBorder.java | 568 -- libjava/javax/swing/border/Border.java | 105 - .../javax/swing/border/CompoundBorder.java | 257 - libjava/javax/swing/border/EmptyBorder.java | 223 - libjava/javax/swing/border/EtchedBorder.java | 411 - libjava/javax/swing/border/LineBorder.java | 343 - libjava/javax/swing/border/MatteBorder.java | 404 - .../javax/swing/border/SoftBevelBorder.java | 329 - libjava/javax/swing/border/TitledBorder.java | 1155 --- .../AbstractColorChooserPanel.java | 162 - .../ColorChooserComponentFactory.java | 85 - .../colorchooser/ColorSelectionModel.java | 81 - .../DefaultColorSelectionModel.java | 163 - .../colorchooser/DefaultHSBChooserPanel.java | 891 -- .../colorchooser/DefaultPreviewPanel.java | 318 - .../colorchooser/DefaultRGBChooserPanel.java | 402 - .../DefaultSwatchChooserPanel.java | 893 -- libjava/javax/swing/event/AncestorEvent.java | 100 - .../javax/swing/event/AncestorListener.java | 69 - libjava/javax/swing/event/CaretEvent.java | 79 - libjava/javax/swing/event/CaretListener.java | 56 - .../javax/swing/event/CellEditorListener.java | 62 - libjava/javax/swing/event/ChangeEvent.java | 59 - libjava/javax/swing/event/ChangeListener.java | 57 - libjava/javax/swing/event/DocumentEvent.java | 166 - .../javax/swing/event/DocumentListener.java | 68 - .../javax/swing/event/EventListenerList.java | 302 - libjava/javax/swing/event/HyperlinkEvent.java | 162 - .../javax/swing/event/HyperlinkListener.java | 57 - .../swing/event/InternalFrameAdapter.java | 113 - .../javax/swing/event/InternalFrameEvent.java | 115 - .../swing/event/InternalFrameListener.java | 92 - libjava/javax/swing/event/ListDataEvent.java | 98 - .../javax/swing/event/ListDataListener.java | 69 - .../javax/swing/event/ListSelectionEvent.java | 126 - .../swing/event/ListSelectionListener.java | 57 - .../javax/swing/event/MenuDragMouseEvent.java | 115 - .../swing/event/MenuDragMouseListener.java | 74 - libjava/javax/swing/event/MenuEvent.java | 59 - libjava/javax/swing/event/MenuKeyEvent.java | 113 - .../javax/swing/event/MenuKeyListener.java | 68 - libjava/javax/swing/event/MenuListener.java | 68 - .../javax/swing/event/MouseInputAdapter.java | 119 - .../javax/swing/event/MouseInputListener.java | 52 - libjava/javax/swing/event/PopupMenuEvent.java | 58 - .../javax/swing/event/PopupMenuListener.java | 68 - .../event/SwingPropertyChangeSupport.java | 255 - .../swing/event/TableColumnModelEvent.java | 105 - .../swing/event/TableColumnModelListener.java | 80 - .../javax/swing/event/TableModelEvent.java | 158 - .../javax/swing/event/TableModelListener.java | 55 - .../javax/swing/event/TreeExpansionEvent.java | 89 - .../swing/event/TreeExpansionListener.java | 62 - libjava/javax/swing/event/TreeModelEvent.java | 171 - .../javax/swing/event/TreeModelListener.java | 74 - .../javax/swing/event/TreeSelectionEvent.java | 190 - .../swing/event/TreeSelectionListener.java | 56 - .../swing/event/TreeWillExpandListener.java | 65 - .../javax/swing/event/UndoableEditEvent.java | 92 - .../swing/event/UndoableEditListener.java | 56 - .../javax/swing/filechooser/FileFilter.java | 80 - .../swing/filechooser/FileSystemView.java | 150 - libjava/javax/swing/filechooser/FileView.java | 114 - .../javax/swing/plaf/ActionMapUIResource.java | 64 - .../javax/swing/plaf/BorderUIResource.java | 933 -- libjava/javax/swing/plaf/ButtonUI.java | 52 - libjava/javax/swing/plaf/ColorChooserUI.java | 60 - libjava/javax/swing/plaf/ColorUIResource.java | 114 - libjava/javax/swing/plaf/ComboBoxUI.java | 96 - .../plaf/ComponentInputMapUIResource.java | 70 - libjava/javax/swing/plaf/ComponentUI.java | 326 - libjava/javax/swing/plaf/DesktopIconUI.java | 56 - libjava/javax/swing/plaf/DesktopPaneUI.java | 59 - .../javax/swing/plaf/DimensionUIResource.java | 68 - libjava/javax/swing/plaf/FileChooserUI.java | 138 - libjava/javax/swing/plaf/FontUIResource.java | 101 - libjava/javax/swing/plaf/IconUIResource.java | 122 - .../javax/swing/plaf/InputMapUIResource.java | 63 - .../javax/swing/plaf/InsetsUIResource.java | 77 - libjava/javax/swing/plaf/InternalFrameUI.java | 59 - libjava/javax/swing/plaf/LabelUI.java | 59 - libjava/javax/swing/plaf/ListUI.java | 114 - libjava/javax/swing/plaf/MenuBarUI.java | 59 - libjava/javax/swing/plaf/MenuItemUI.java | 59 - libjava/javax/swing/plaf/OptionPaneUI.java | 75 - libjava/javax/swing/plaf/PanelUI.java | 58 - libjava/javax/swing/plaf/PopupMenuUI.java | 117 - libjava/javax/swing/plaf/ProgressBarUI.java | 59 - libjava/javax/swing/plaf/RootPaneUI.java | 58 - libjava/javax/swing/plaf/ScrollBarUI.java | 58 - libjava/javax/swing/plaf/ScrollPaneUI.java | 59 - libjava/javax/swing/plaf/SeparatorUI.java | 58 - libjava/javax/swing/plaf/SliderUI.java | 59 - libjava/javax/swing/plaf/SpinnerUI.java | 59 - libjava/javax/swing/plaf/SplitPaneUI.java | 133 - libjava/javax/swing/plaf/TabbedPaneUI.java | 111 - libjava/javax/swing/plaf/TableHeaderUI.java | 59 - libjava/javax/swing/plaf/TableUI.java | 59 - libjava/javax/swing/plaf/TextUI.java | 284 - libjava/javax/swing/plaf/ToolBarUI.java | 59 - libjava/javax/swing/plaf/ToolTipUI.java | 59 - libjava/javax/swing/plaf/TreeUI.java | 211 - libjava/javax/swing/plaf/UIResource.java | 55 - libjava/javax/swing/plaf/ViewportUI.java | 60 - .../swing/plaf/basic/BasicArrowButton.java | 350 - .../javax/swing/plaf/basic/BasicBorders.java | 1815 ---- .../swing/plaf/basic/BasicButtonListener.java | 234 - .../javax/swing/plaf/basic/BasicButtonUI.java | 421 - .../plaf/basic/BasicCheckBoxMenuItemUI.java | 104 - .../swing/plaf/basic/BasicCheckBoxUI.java | 67 - .../swing/plaf/basic/BasicColorChooserUI.java | 339 - .../swing/plaf/basic/BasicComboBoxEditor.java | 170 - .../plaf/basic/BasicComboBoxRenderer.java | 142 - .../swing/plaf/basic/BasicComboBoxUI.java | 1243 --- .../swing/plaf/basic/BasicComboPopup.java | 1055 -- .../swing/plaf/basic/BasicDesktopIconUI.java | 590 -- .../swing/plaf/basic/BasicDesktopPaneUI.java | 464 - .../swing/plaf/basic/BasicEditorPaneUI.java | 68 - .../plaf/basic/BasicFormattedTextFieldUI.java | 62 - .../swing/plaf/basic/BasicGraphicsUtils.java | 637 -- .../swing/plaf/basic/BasicIconFactory.java | 238 - .../basic/BasicInternalFrameTitlePane.java | 1014 -- .../plaf/basic/BasicInternalFrameUI.java | 1652 --- .../javax/swing/plaf/basic/BasicLabelUI.java | 427 - .../javax/swing/plaf/basic/BasicListUI.java | 870 -- .../swing/plaf/basic/BasicLookAndFeel.java | 1033 -- .../swing/plaf/basic/BasicMenuBarUI.java | 303 - .../swing/plaf/basic/BasicMenuItemUI.java | 1008 -- .../javax/swing/plaf/basic/BasicMenuUI.java | 518 - .../swing/plaf/basic/BasicOptionPaneUI.java | 1323 --- .../javax/swing/plaf/basic/BasicPanelUI.java | 56 - .../plaf/basic/BasicPasswordFieldUI.java | 67 - .../plaf/basic/BasicPopupMenuSeparatorUI.java | 114 - .../swing/plaf/basic/BasicPopupMenuUI.java | 401 - .../swing/plaf/basic/BasicProgressBarUI.java | 825 -- .../basic/BasicRadioButtonMenuItemUI.java | 102 - .../swing/plaf/basic/BasicRadioButtonUI.java | 87 - .../swing/plaf/basic/BasicRootPaneUI.java | 67 - .../swing/plaf/basic/BasicScrollBarUI.java | 1277 --- .../swing/plaf/basic/BasicScrollPaneUI.java | 130 - .../swing/plaf/basic/BasicSeparatorUI.java | 269 - .../javax/swing/plaf/basic/BasicSliderUI.java | 2219 ---- .../swing/plaf/basic/BasicSpinnerUI.java | 573 -- .../plaf/basic/BasicSplitPaneDivider.java | 912 -- .../swing/plaf/basic/BasicSplitPaneUI.java | 1521 --- .../swing/plaf/basic/BasicTabbedPaneUI.java | 3064 ------ .../swing/plaf/basic/BasicTableHeaderUI.java | 224 - .../javax/swing/plaf/basic/BasicTableUI.java | 341 - .../swing/plaf/basic/BasicTextAreaUI.java | 68 - .../swing/plaf/basic/BasicTextFieldUI.java | 80 - .../swing/plaf/basic/BasicTextPaneUI.java | 68 - .../javax/swing/plaf/basic/BasicTextUI.java | 496 - .../swing/plaf/basic/BasicToggleButtonUI.java | 62 - .../plaf/basic/BasicToolBarSeparatorUI.java | 127 - .../swing/plaf/basic/BasicToolBarUI.java | 1435 --- .../swing/plaf/basic/BasicToolTipUI.java | 288 - .../javax/swing/plaf/basic/BasicTreeUI.java | 398 - .../swing/plaf/basic/BasicViewportUI.java | 235 - .../javax/swing/plaf/basic/ComboPopup.java | 103 - .../swing/plaf/metal/DefaultMetalTheme.java | 143 - .../javax/swing/plaf/metal/MetalBorders.java | 443 - .../javax/swing/plaf/metal/MetalButtonUI.java | 101 - .../swing/plaf/metal/MetalCheckBoxUI.java | 74 - .../swing/plaf/metal/MetalComboBoxUI.java | 74 - .../swing/plaf/metal/MetalDesktopIconUI.java | 74 - .../plaf/metal/MetalInternalFrameUI.java | 88 - .../javax/swing/plaf/metal/MetalLabelUI.java | 74 - .../swing/plaf/metal/MetalLookAndFeel.java | 532 - .../plaf/metal/MetalPopupMenuSeparatorUI.java | 73 - .../swing/plaf/metal/MetalProgressBarUI.java | 74 - .../swing/plaf/metal/MetalRadioButtonUI.java | 74 - .../swing/plaf/metal/MetalRootPaneUI.java | 74 - .../swing/plaf/metal/MetalScrollBarUI.java | 165 - .../swing/plaf/metal/MetalScrollPaneUI.java | 74 - .../swing/plaf/metal/MetalSeparatorUI.java | 74 - .../javax/swing/plaf/metal/MetalSliderUI.java | 87 - .../swing/plaf/metal/MetalSplitPaneUI.java | 74 - .../swing/plaf/metal/MetalTabbedPaneUI.java | 86 - .../swing/plaf/metal/MetalTextFieldUI.java | 86 - .../javax/swing/plaf/metal/MetalTheme.java | 259 - .../swing/plaf/metal/MetalToggleButtonUI.java | 74 - .../swing/plaf/metal/MetalToolBarUI.java | 74 - .../swing/plaf/metal/MetalToolTipUI.java | 74 - .../javax/swing/plaf/metal/MetalTreeUI.java | 74 - .../javax/swing/table/AbstractTableModel.java | 275 - .../swing/table/DefaultTableCellRenderer.java | 230 - .../swing/table/DefaultTableColumnModel.java | 542 - .../javax/swing/table/DefaultTableModel.java | 582 -- libjava/javax/swing/table/JTableHeader.java | 631 -- .../javax/swing/table/TableCellEditor.java | 65 - .../javax/swing/table/TableCellRenderer.java | 66 - libjava/javax/swing/table/TableColumn.java | 554 - .../javax/swing/table/TableColumnModel.java | 166 - libjava/javax/swing/table/TableModel.java | 134 - .../javax/swing/text/AbstractDocument.java | 912 -- libjava/javax/swing/text/AttributeSet.java | 72 - .../swing/text/BadLocationException.java | 65 - libjava/javax/swing/text/Caret.java | 81 - .../swing/text/ChangedCharSetException.java | 100 - libjava/javax/swing/text/ComponentView.java | 103 - libjava/javax/swing/text/DefaultCaret.java | 315 - .../javax/swing/text/DefaultEditorKit.java | 394 - .../javax/swing/text/DefaultHighlighter.java | 257 - .../swing/text/DefaultStyledDocument.java | 195 - libjava/javax/swing/text/Document.java | 221 - libjava/javax/swing/text/DocumentFilter.java | 83 - libjava/javax/swing/text/EditorKit.java | 96 - libjava/javax/swing/text/Element.java | 54 - libjava/javax/swing/text/FieldView.java | 101 - libjava/javax/swing/text/GapContent.java | 356 - libjava/javax/swing/text/Highlighter.java | 79 - libjava/javax/swing/text/JTextComponent.java | 1564 --- libjava/javax/swing/text/Keymap.java | 60 - .../javax/swing/text/LayeredHighlighter.java | 57 - .../javax/swing/text/MutableAttributeSet.java | 85 - .../javax/swing/text/NavigationFilter.java | 71 - libjava/javax/swing/text/PasswordView.java | 170 - libjava/javax/swing/text/PlainDocument.java | 166 - libjava/javax/swing/text/PlainView.java | 206 - libjava/javax/swing/text/Position.java | 62 - libjava/javax/swing/text/Segment.java | 176 - .../javax/swing/text/SimpleAttributeSet.java | 193 - libjava/javax/swing/text/StringContent.java | 307 - libjava/javax/swing/text/Style.java | 64 - libjava/javax/swing/text/StyleConstants.java | 443 - libjava/javax/swing/text/StyleContext.java | 703 -- libjava/javax/swing/text/StyledDocument.java | 145 - libjava/javax/swing/text/StyledEditorKit.java | 503 - libjava/javax/swing/text/TabExpander.java | 43 - libjava/javax/swing/text/TabSet.java | 102 - libjava/javax/swing/text/TabStop.java | 133 - libjava/javax/swing/text/TabableView.java | 44 - libjava/javax/swing/text/TextAction.java | 111 - libjava/javax/swing/text/Utilities.java | 198 - libjava/javax/swing/text/View.java | 264 - libjava/javax/swing/text/ViewFactory.java | 50 - libjava/javax/swing/text/html/HTML.java | 1294 --- .../javax/swing/text/html/HTMLDocument.java | 53 - .../javax/swing/text/html/HTMLEditorKit.java | 173 - .../text/html/HTMLFrameHyperlinkEvent.java | 132 - .../swing/text/html/parser/AttributeList.java | 294 - .../swing/text/html/parser/ContentModel.java | 218 - libjava/javax/swing/text/html/parser/DTD.java | 607 -- .../swing/text/html/parser/DTDConstants.java | 290 - .../text/html/parser/DocumentParser.java | 261 - .../javax/swing/text/html/parser/Element.java | 317 - .../javax/swing/text/html/parser/Entity.java | 185 - .../javax/swing/text/html/parser/Parser.java | 436 - .../text/html/parser/ParserDelegator.java | 208 - .../swing/text/html/parser/TagElement.java | 142 - .../swing/text/rtf/ControlWordToken.java | 86 - .../javax/swing/text/rtf/RTFEditorKit.java | 114 - .../swing/text/rtf/RTFParseException.java | 65 - libjava/javax/swing/text/rtf/RTFParser.java | 195 - libjava/javax/swing/text/rtf/RTFScanner.java | 268 - libjava/javax/swing/text/rtf/TextToken.java | 65 - libjava/javax/swing/text/rtf/Token.java | 91 - .../javax/swing/tree/AbstractLayoutCache.java | 405 - .../swing/tree/DefaultMutableTreeNode.java | 954 -- .../swing/tree/DefaultTreeCellEditor.java | 516 - .../swing/tree/DefaultTreeCellRenderer.java | 497 - .../javax/swing/tree/DefaultTreeModel.java | 451 - .../swing/tree/DefaultTreeSelectionModel.java | 646 -- .../javax/swing/tree/ExpandVetoException.java | 83 - .../swing/tree/FixedHeightLayoutCache.java | 236 - libjava/javax/swing/tree/MutableTreeNode.java | 104 - libjava/javax/swing/tree/RowMapper.java | 54 - libjava/javax/swing/tree/TreeCellEditor.java | 65 - .../javax/swing/tree/TreeCellRenderer.java | 67 - libjava/javax/swing/tree/TreeModel.java | 109 - libjava/javax/swing/tree/TreeNode.java | 99 - libjava/javax/swing/tree/TreePath.java | 300 - .../javax/swing/tree/TreeSelectionModel.java | 84 - .../swing/tree/VariableHeightLayoutCache.java | 261 - .../swing/undo/AbstractUndoableEdit.java | 323 - .../javax/swing/undo/CannotRedoException.java | 56 - .../javax/swing/undo/CannotUndoException.java | 57 - libjava/javax/swing/undo/CompoundEdit.java | 400 - libjava/javax/swing/undo/StateEdit.java | 263 - libjava/javax/swing/undo/StateEditable.java | 112 - libjava/javax/swing/undo/UndoManager.java | 625 -- libjava/javax/swing/undo/UndoableEdit.java | 114 - .../javax/swing/undo/UndoableEditSupport.java | 271 - .../transaction/HeuristicCommitException.java | 57 - .../transaction/HeuristicMixedException.java | 57 - .../HeuristicRollbackException.java | 57 - .../InvalidTransactionException.java | 58 - .../transaction/NotSupportedException.java | 57 - .../javax/transaction/RollbackException.java | 57 - libjava/javax/transaction/Status.java | 58 - .../javax/transaction/Synchronization.java | 50 - .../javax/transaction/SystemException.java | 65 - libjava/javax/transaction/Transaction.java | 70 - .../javax/transaction/TransactionManager.java | 72 - .../TransactionRequiredException.java | 58 - .../TransactionRolledbackException.java | 58 - .../javax/transaction/UserTransaction.java | 64 - libjava/javax/transaction/xa/XAException.java | 89 - libjava/javax/transaction/xa/XAResource.java | 69 - libjava/javax/transaction/xa/Xid.java | 53 - libjava/javax/xml/XMLConstants.java | 126 - .../DatatypeConfigurationException.java | 70 - .../javax/xml/datatype/DatatypeConstants.java | 259 - .../javax/xml/datatype/DatatypeFactory.java | 401 - libjava/javax/xml/datatype/Duration.java | 295 - .../xml/datatype/XMLGregorianCalendar.java | 217 - .../javax/xml/namespace/NamespaceContext.java | 66 - libjava/javax/xml/namespace/QName.java | 160 - .../javax/xml/parsers/DocumentBuilder.java | 203 - .../xml/parsers/DocumentBuilderFactory.java | 346 - .../parsers/FactoryConfigurationError.java | 113 - .../parsers/ParserConfigurationException.java | 66 - libjava/javax/xml/parsers/SAXParser.java | 340 - .../javax/xml/parsers/SAXParserFactory.java | 273 - .../javax/xml/transform/ErrorListener.java | 66 - libjava/javax/xml/transform/OutputKeys.java | 103 - libjava/javax/xml/transform/Result.java | 72 - libjava/javax/xml/transform/Source.java | 60 - .../javax/xml/transform/SourceLocator.java | 70 - libjava/javax/xml/transform/Templates.java | 67 - libjava/javax/xml/transform/Transformer.java | 164 - .../TransformerConfigurationException.java | 103 - .../xml/transform/TransformerException.java | 241 - .../xml/transform/TransformerFactory.java | 284 - .../TransformerFactoryConfigurationError.java | 104 - libjava/javax/xml/transform/URIResolver.java | 58 - .../javax/xml/transform/dom/DOMLocator.java | 57 - .../javax/xml/transform/dom/DOMResult.java | 163 - .../javax/xml/transform/dom/DOMSource.java | 118 - .../javax/xml/transform/sax/SAXResult.java | 132 - .../javax/xml/transform/sax/SAXSource.java | 197 - .../transform/sax/SAXTransformerFactory.java | 115 - .../xml/transform/sax/TemplatesHandler.java | 68 - .../xml/transform/sax/TransformerHandler.java | 78 - .../xml/transform/stream/StreamResult.java | 173 - .../xml/transform/stream/StreamSource.java | 210 - libjava/javax/xml/validation/Schema.java | 61 - .../javax/xml/validation/SchemaFactory.java | 168 - .../xml/validation/TypeInfoProvider.java | 83 - libjava/javax/xml/validation/Validator.java | 117 - .../xml/validation/ValidatorHandler.java | 115 - libjava/javax/xml/xpath/XPath.java | 115 - libjava/javax/xml/xpath/XPathConstants.java | 87 - libjava/javax/xml/xpath/XPathException.java | 86 - libjava/javax/xml/xpath/XPathExpression.java | 86 - .../xml/xpath/XPathExpressionException.java | 60 - libjava/javax/xml/xpath/XPathFactory.java | 227 - .../XPathFactoryConfigurationException.java | 60 - libjava/javax/xml/xpath/XPathFunction.java | 58 - .../xml/xpath/XPathFunctionException.java | 60 - .../xml/xpath/XPathFunctionResolver.java | 59 - .../xml/xpath/XPathVariableResolver.java | 52 - libjava/jni/classpath/classpath_jawt.h | 64 - libjava/jni/classpath/native_state.c | 247 - libjava/jni/classpath/native_state.h | 71 - libjava/jni/gtk-peer/gdkfont.h | 142 - ...a_awt_peer_gtk_GThreadNativeMethodRunner.c | 70 - .../gnu_java_awt_peer_gtk_GdkFontPeer.c | 401 - .../gnu_java_awt_peer_gtk_GdkGraphics.c | 692 -- .../gnu_java_awt_peer_gtk_GdkGraphics2D.c | 1621 --- ...java_awt_peer_gtk_GdkGraphicsEnvironment.c | 99 - .../gnu_java_awt_peer_gtk_GdkPixbufDecoder.c | 445 - .../gnu_java_awt_peer_gtk_GdkRobotPeer.c | 328 - .../gnu_java_awt_peer_gtk_GdkTextLayout.c | 183 - .../gnu_java_awt_peer_gtk_GtkButtonPeer.c | 355 - .../gnu_java_awt_peer_gtk_GtkCanvasPeer.c | 60 - ...u_java_awt_peer_gtk_GtkCheckboxGroupPeer.c | 77 - ...ava_awt_peer_gtk_GtkCheckboxMenuItemPeer.c | 76 - .../gnu_java_awt_peer_gtk_GtkCheckboxPeer.c | 217 - .../gnu_java_awt_peer_gtk_GtkChoicePeer.c | 207 - .../gnu_java_awt_peer_gtk_GtkClipboard.c | 183 - .../gnu_java_awt_peer_gtk_GtkComponentPeer.c | 1078 -- ..._java_awt_peer_gtk_GtkEmbeddedWindowPeer.c | 82 - .../gnu_java_awt_peer_gtk_GtkEvents.c | 1176 --- .../gnu_java_awt_peer_gtk_GtkFileDialogPeer.c | 274 - .../gnu_java_awt_peer_gtk_GtkFramePeer.c | 223 - .../gnu_java_awt_peer_gtk_GtkGenericPeer.c | 100 - .../gnu_java_awt_peer_gtk_GtkImagePainter.c | 168 - .../gnu_java_awt_peer_gtk_GtkLabelPeer.c | 179 - .../gnu_java_awt_peer_gtk_GtkListPeer.c | 513 - .../gnu_java_awt_peer_gtk_GtkMenuBarPeer.c | 112 - ...u_java_awt_peer_gtk_GtkMenuComponentPeer.c | 56 - .../gnu_java_awt_peer_gtk_GtkMenuItemPeer.c | 170 - .../gnu_java_awt_peer_gtk_GtkMenuPeer.c | 172 - .../gnu_java_awt_peer_gtk_GtkPanelPeer.c | 62 - .../gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c | 101 - .../gnu_java_awt_peer_gtk_GtkScrollBarPeer.c | 165 - .../gnu_java_awt_peer_gtk_GtkScrollPanePeer.c | 193 - .../gnu_java_awt_peer_gtk_GtkTextAreaPeer.c | 248 - ...u_java_awt_peer_gtk_GtkTextComponentPeer.c | 498 - .../gnu_java_awt_peer_gtk_GtkTextFieldPeer.c | 209 - .../gnu_java_awt_peer_gtk_GtkToolkit.c | 537 - .../gnu_java_awt_peer_gtk_GtkWindowPeer.c | 744 -- libjava/jni/gtk-peer/gthread-jni.c | 2592 ----- libjava/jni/gtk-peer/gthread-jni.h | 48 - libjava/jni/gtk-peer/gtk_jawt.c | 197 - libjava/jni/gtk-peer/gtkcairopeer.h | 92 - libjava/jni/gtk-peer/gtkpeer.h | 522 - libjava/org/ietf/jgss/ChannelBinding.java | 215 - libjava/org/ietf/jgss/GSSContext.java | 924 -- libjava/org/ietf/jgss/GSSCredential.java | 334 - libjava/org/ietf/jgss/GSSException.java | 431 - libjava/org/ietf/jgss/GSSManager.java | 501 - libjava/org/ietf/jgss/GSSName.java | 269 - libjava/org/ietf/jgss/MessageProp.java | 273 - .../org/ietf/jgss/MessagesBundle.properties | 60 - libjava/org/ietf/jgss/Oid.java | 385 - libjava/scripts/classes.pl | 44 +- libjava/scripts/makemake.tcl | 357 + libjava/sources.am | 5323 ++++++++++ libjava/standard.omit | 21 + libjava/testsuite/Makefile.in | 8 +- libjava/testsuite/libjava.jni/jni.exp | 8 +- 2817 files changed, 11656 insertions(+), 643398 deletions(-) delete mode 100644 libjava/external/Makefile.am delete mode 100644 libjava/external/Makefile.in delete mode 100644 libjava/external/README delete mode 100644 libjava/external/sax/Makefile.am delete mode 100644 libjava/external/sax/Makefile.in delete mode 100644 libjava/external/sax/README delete mode 100644 libjava/external/sax/org/xml/sax/AttributeList.java delete mode 100644 libjava/external/sax/org/xml/sax/Attributes.java delete mode 100644 libjava/external/sax/org/xml/sax/ContentHandler.java delete mode 100644 libjava/external/sax/org/xml/sax/DTDHandler.java delete mode 100644 libjava/external/sax/org/xml/sax/DocumentHandler.java delete mode 100644 libjava/external/sax/org/xml/sax/EntityResolver.java delete mode 100644 libjava/external/sax/org/xml/sax/ErrorHandler.java delete mode 100644 libjava/external/sax/org/xml/sax/HandlerBase.java delete mode 100644 libjava/external/sax/org/xml/sax/InputSource.java delete mode 100644 libjava/external/sax/org/xml/sax/Locator.java delete mode 100644 libjava/external/sax/org/xml/sax/Parser.java delete mode 100644 libjava/external/sax/org/xml/sax/SAXException.java delete mode 100644 libjava/external/sax/org/xml/sax/SAXNotRecognizedException.java delete mode 100644 libjava/external/sax/org/xml/sax/SAXNotSupportedException.java delete mode 100644 libjava/external/sax/org/xml/sax/SAXParseException.java delete mode 100644 libjava/external/sax/org/xml/sax/XMLFilter.java delete mode 100644 libjava/external/sax/org/xml/sax/XMLReader.java delete mode 100644 libjava/external/sax/org/xml/sax/ext/Attributes2.java delete mode 100644 libjava/external/sax/org/xml/sax/ext/Attributes2Impl.java delete mode 100644 libjava/external/sax/org/xml/sax/ext/DeclHandler.java delete mode 100644 libjava/external/sax/org/xml/sax/ext/DefaultHandler2.java delete mode 100644 libjava/external/sax/org/xml/sax/ext/EntityResolver2.java delete mode 100644 libjava/external/sax/org/xml/sax/ext/LexicalHandler.java delete mode 100644 libjava/external/sax/org/xml/sax/ext/Locator2.java delete mode 100644 libjava/external/sax/org/xml/sax/ext/Locator2Impl.java delete mode 100644 libjava/external/sax/org/xml/sax/ext/package.html delete mode 100644 libjava/external/sax/org/xml/sax/helpers/AttributeListImpl.java delete mode 100644 libjava/external/sax/org/xml/sax/helpers/AttributesImpl.java delete mode 100644 libjava/external/sax/org/xml/sax/helpers/DefaultHandler.java delete mode 100644 libjava/external/sax/org/xml/sax/helpers/LocatorImpl.java delete mode 100644 libjava/external/sax/org/xml/sax/helpers/NamespaceSupport.java delete mode 100644 libjava/external/sax/org/xml/sax/helpers/NewInstance.java delete mode 100644 libjava/external/sax/org/xml/sax/helpers/ParserAdapter.java delete mode 100644 libjava/external/sax/org/xml/sax/helpers/ParserFactory.java delete mode 100644 libjava/external/sax/org/xml/sax/helpers/XMLFilterImpl.java delete mode 100644 libjava/external/sax/org/xml/sax/helpers/XMLReaderAdapter.java delete mode 100644 libjava/external/sax/org/xml/sax/helpers/XMLReaderFactory.java delete mode 100644 libjava/external/sax/org/xml/sax/helpers/package.html delete mode 100644 libjava/external/sax/org/xml/sax/package.html delete mode 100644 libjava/external/w3c_dom/COPYRIGHT.html delete mode 100644 libjava/external/w3c_dom/Makefile.am delete mode 100644 libjava/external/w3c_dom/Makefile.in delete mode 100644 libjava/external/w3c_dom/README delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/Attr.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/CDATASection.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/CharacterData.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/Comment.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/DOMConfiguration.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/DOMError.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/DOMErrorHandler.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/DOMException.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/DOMImplementation.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/DOMImplementationList.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/DOMImplementationSource.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/DOMLocator.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/DOMStringList.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/Document.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/DocumentFragment.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/DocumentType.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/Element.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/Entity.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/EntityReference.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/NameList.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/NamedNodeMap.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/Node.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/NodeList.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/Notation.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ProcessingInstruction.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/Text.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/TypeInfo.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/UserDataHandler.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/bootstrap/DOMImplementationRegistry.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSS2Properties.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSCharsetRule.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSFontFaceRule.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSImportRule.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSMediaRule.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSPageRule.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSPrimitiveValue.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSRule.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSRuleList.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSStyleDeclaration.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSStyleRule.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSStyleSheet.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSUnknownRule.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSValue.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/CSSValueList.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/Counter.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/DOMImplementationCSS.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/DocumentCSS.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/ElementCSSInlineStyle.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/RGBColor.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/Rect.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/css/ViewCSS.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/events/DocumentEvent.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/events/Event.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/events/EventException.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/events/EventListener.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/events/EventTarget.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/events/MouseEvent.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/events/MutationEvent.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/events/UIEvent.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLAnchorElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLAppletElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLAreaElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBRElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBaseElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBaseFontElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBodyElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLButtonElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLCollection.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDListElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDirectoryElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDivElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDocument.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFieldSetElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFontElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFormElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFrameElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFrameSetElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHRElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHeadElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHeadingElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHtmlElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLIFrameElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLImageElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLInputElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLIsIndexElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLIElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLabelElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLegendElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLinkElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLMapElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLMenuElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLMetaElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLModElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOListElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLObjectElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOptGroupElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOptionElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOptionsCollection.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLParagraphElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLParamElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLPreElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLQuoteElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLScriptElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLSelectElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLStyleElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableCaptionElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableCellElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableColElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableRowElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableSectionElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTextAreaElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTitleElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/html2/HTMLUListElement.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ls/DOMImplementationLS.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ls/LSException.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ls/LSInput.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ls/LSLoadEvent.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ls/LSOutput.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ls/LSParser.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ls/LSParserFilter.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ls/LSProgressEvent.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ls/LSResourceResolver.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ls/LSSerializer.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ls/LSSerializerFilter.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ranges/DocumentRange.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ranges/Range.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/ranges/RangeException.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/stylesheets/DocumentStyle.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/stylesheets/LinkStyle.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/stylesheets/MediaList.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/stylesheets/StyleSheet.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/stylesheets/StyleSheetList.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/traversal/DocumentTraversal.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/traversal/NodeFilter.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/traversal/NodeIterator.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/traversal/TreeWalker.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/views/AbstractView.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/views/DocumentView.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/xpath/XPathEvaluator.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/xpath/XPathException.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/xpath/XPathExpression.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/xpath/XPathNSResolver.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/xpath/XPathNamespace.java delete mode 100644 libjava/external/w3c_dom/org/w3c/dom/xpath/XPathResult.java delete mode 100644 libjava/gnu/classpath/Configuration.java.in delete mode 100644 libjava/gnu/classpath/ServiceFactory.java delete mode 100644 libjava/gnu/classpath/ServiceProviderLoadingAction.java delete mode 100644 libjava/gnu/classpath/jdwp/exception/InvalidClassException.java delete mode 100644 libjava/gnu/classpath/jdwp/exception/InvalidCountException.java delete mode 100644 libjava/gnu/classpath/jdwp/exception/InvalidEventTypeException.java delete mode 100644 libjava/gnu/classpath/jdwp/exception/InvalidObjectException.java delete mode 100644 libjava/gnu/classpath/jdwp/exception/InvalidStringException.java delete mode 100644 libjava/gnu/classpath/jdwp/exception/InvalidThreadException.java delete mode 100644 libjava/gnu/classpath/jdwp/exception/InvalidThreadGroupException.java delete mode 100644 libjava/gnu/classpath/jdwp/exception/JdwpException.java delete mode 100644 libjava/gnu/classpath/jdwp/exception/JdwpInternalErrorException.java delete mode 100644 libjava/gnu/classpath/jdwp/exception/NotImplementedException.java delete mode 100644 libjava/gnu/classpath/jdwp/exception/VmDeadException.java delete mode 100644 libjava/gnu/classpath/jdwp/id/ArrayId.java delete mode 100644 libjava/gnu/classpath/jdwp/id/ArrayReferenceTypeId.java delete mode 100644 libjava/gnu/classpath/jdwp/id/ClassLoaderId.java delete mode 100644 libjava/gnu/classpath/jdwp/id/ClassObjectId.java delete mode 100644 libjava/gnu/classpath/jdwp/id/ClassReferenceTypeId.java delete mode 100644 libjava/gnu/classpath/jdwp/id/InterfaceReferenceTypeId.java delete mode 100644 libjava/gnu/classpath/jdwp/id/JdwpId.java delete mode 100644 libjava/gnu/classpath/jdwp/id/JdwpIdFactory.java delete mode 100644 libjava/gnu/classpath/jdwp/id/ObjectId.java delete mode 100644 libjava/gnu/classpath/jdwp/id/ReferenceTypeId.java delete mode 100644 libjava/gnu/classpath/jdwp/id/StringId.java delete mode 100644 libjava/gnu/classpath/jdwp/id/ThreadGroupId.java delete mode 100644 libjava/gnu/classpath/jdwp/id/ThreadId.java delete mode 100644 libjava/gnu/classpath/jdwp/processor/CommandSet.java delete mode 100644 libjava/gnu/classpath/jdwp/processor/FieldCommandSet.java delete mode 100644 libjava/gnu/classpath/jdwp/processor/InterfaceTypeCommandSet.java delete mode 100644 libjava/gnu/classpath/jdwp/processor/ObjectReferenceCommandSet.java delete mode 100644 libjava/gnu/classpath/jdwp/processor/PacketProcessor.java delete mode 100644 libjava/gnu/classpath/jdwp/processor/ReferenceTypeCommandSet.java delete mode 100644 libjava/gnu/classpath/jdwp/processor/StringReferenceCommandSet.java delete mode 100644 libjava/gnu/classpath/jdwp/processor/VirtualMachineCommandSet.java delete mode 100644 libjava/gnu/classpath/jdwp/transport/ITransport.java delete mode 100644 libjava/gnu/classpath/jdwp/transport/JdwpCommandPacket.java delete mode 100644 libjava/gnu/classpath/jdwp/transport/JdwpConnection.java delete mode 100644 libjava/gnu/classpath/jdwp/transport/JdwpPacket.java delete mode 100644 libjava/gnu/classpath/jdwp/transport/JdwpReplyPacket.java delete mode 100644 libjava/gnu/classpath/jdwp/transport/SocketTransport.java delete mode 100644 libjava/gnu/classpath/jdwp/transport/TransportException.java delete mode 100644 libjava/gnu/classpath/jdwp/transport/TransportFactory.java delete mode 100644 libjava/gnu/classpath/jdwp/util/JdwpString.java delete mode 100644 libjava/gnu/classpath/jdwp/util/Signature.java delete mode 100644 libjava/gnu/java/awt/BitMaskExtent.java delete mode 100644 libjava/gnu/java/awt/BitwiseXORComposite.java delete mode 100644 libjava/gnu/java/awt/Buffers.java delete mode 100644 libjava/gnu/java/awt/ClasspathToolkit.java delete mode 100644 libjava/gnu/java/awt/ComponentDataBlitOp.java delete mode 100644 libjava/gnu/java/awt/EmbeddedWindow.java delete mode 100644 libjava/gnu/java/awt/EmbeddedWindowSupport.java delete mode 100644 libjava/gnu/java/awt/EventModifier.java delete mode 100644 libjava/gnu/java/awt/color/CieXyzConverter.java delete mode 100644 libjava/gnu/java/awt/color/ClutProfileConverter.java delete mode 100644 libjava/gnu/java/awt/color/ColorLookUpTable.java delete mode 100644 libjava/gnu/java/awt/color/ColorSpaceConverter.java delete mode 100644 libjava/gnu/java/awt/color/GrayProfileConverter.java delete mode 100644 libjava/gnu/java/awt/color/GrayScaleConverter.java delete mode 100644 libjava/gnu/java/awt/color/LinearRGBConverter.java delete mode 100644 libjava/gnu/java/awt/color/ProfileHeader.java delete mode 100644 libjava/gnu/java/awt/color/PyccConverter.java delete mode 100644 libjava/gnu/java/awt/color/RgbProfileConverter.java delete mode 100644 libjava/gnu/java/awt/color/SrgbConverter.java delete mode 100644 libjava/gnu/java/awt/color/TagEntry.java delete mode 100644 libjava/gnu/java/awt/color/ToneReproductionCurve.java delete mode 100644 libjava/gnu/java/awt/doc-files/BitwiseXORComposite-1.png delete mode 100644 libjava/gnu/java/awt/image/ImageDecoder.java delete mode 100644 libjava/gnu/java/awt/image/XBMDecoder.java delete mode 100644 libjava/gnu/java/awt/peer/ClasspathFontPeer.java delete mode 100644 libjava/gnu/java/awt/peer/ClasspathTextLayoutPeer.java delete mode 100644 libjava/gnu/java/awt/peer/EmbeddedWindowPeer.java delete mode 100644 libjava/gnu/java/awt/peer/GLightweightPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GThreadMutex.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GdkFontMetrics.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GdkFontPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GdkGlyphVector.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GdkGraphics.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GdkGraphics2D.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GdkGraphicsConfiguration.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GdkPixbufDecoder.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GdkRobotPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GdkScreenGraphicsDevice.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GdkTextLayout.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkButtonPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkCanvasPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkCheckboxPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkChoicePeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkClipboard.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkContainerPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkDialogPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkFontPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkFramePeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkGenericPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkImage.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkImagePainter.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkLabelPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkListPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkMenuBarPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkMenuItemPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkMenuPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkOffScreenImage.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkPanelPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkScrollPanePeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkScrollbarPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkTextAreaPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkTextComponentPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkTextFieldPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkToolkit.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkVolatileImage.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/GtkWindowPeer.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/Test.java delete mode 100644 libjava/gnu/java/awt/peer/gtk/TestAWT.java delete mode 100644 libjava/gnu/java/beans/BeanInfoEmbryo.java delete mode 100644 libjava/gnu/java/beans/DummyAppletContext.java delete mode 100644 libjava/gnu/java/beans/DummyAppletStub.java delete mode 100644 libjava/gnu/java/beans/ExplicitBeanInfo.java delete mode 100644 libjava/gnu/java/beans/IntrospectionIncubator.java delete mode 100644 libjava/gnu/java/beans/decoder/AbstractContext.java delete mode 100644 libjava/gnu/java/beans/decoder/AbstractCreatableObjectContext.java delete mode 100644 libjava/gnu/java/beans/decoder/AbstractElementHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/AbstractObjectContext.java delete mode 100644 libjava/gnu/java/beans/decoder/ArrayContext.java delete mode 100644 libjava/gnu/java/beans/decoder/ArrayHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/AssemblyException.java delete mode 100644 libjava/gnu/java/beans/decoder/BooleanHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/ByteHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/CharHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/ClassHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/ConstructorContext.java delete mode 100644 libjava/gnu/java/beans/decoder/Context.java delete mode 100644 libjava/gnu/java/beans/decoder/DecoderContext.java delete mode 100644 libjava/gnu/java/beans/decoder/DefaultExceptionListener.java delete mode 100644 libjava/gnu/java/beans/decoder/DoubleHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/DummyContext.java delete mode 100644 libjava/gnu/java/beans/decoder/DummyHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/ElementHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/FloatHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/GrowableArrayContext.java delete mode 100644 libjava/gnu/java/beans/decoder/IndexContext.java delete mode 100644 libjava/gnu/java/beans/decoder/IntHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/JavaHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/LongHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/MethodContext.java delete mode 100644 libjava/gnu/java/beans/decoder/MethodFinder.java delete mode 100644 libjava/gnu/java/beans/decoder/NullHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/ObjectContext.java delete mode 100644 libjava/gnu/java/beans/decoder/ObjectHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/PersistenceParser.java delete mode 100644 libjava/gnu/java/beans/decoder/PropertyContext.java delete mode 100644 libjava/gnu/java/beans/decoder/ShortHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/SimpleHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/StaticMethodContext.java delete mode 100644 libjava/gnu/java/beans/decoder/StringHandler.java delete mode 100644 libjava/gnu/java/beans/decoder/VoidHandler.java delete mode 100644 libjava/gnu/java/beans/editors/ColorEditor.java delete mode 100644 libjava/gnu/java/beans/editors/FontEditor.java delete mode 100644 libjava/gnu/java/beans/editors/NativeBooleanEditor.java delete mode 100644 libjava/gnu/java/beans/editors/NativeByteEditor.java delete mode 100644 libjava/gnu/java/beans/editors/NativeDoubleEditor.java delete mode 100644 libjava/gnu/java/beans/editors/NativeFloatEditor.java delete mode 100644 libjava/gnu/java/beans/editors/NativeIntEditor.java delete mode 100644 libjava/gnu/java/beans/editors/NativeLongEditor.java delete mode 100644 libjava/gnu/java/beans/editors/NativeShortEditor.java delete mode 100644 libjava/gnu/java/beans/editors/StringEditor.java delete mode 100644 libjava/gnu/java/io/ASN1ParsingException.java delete mode 100644 libjava/gnu/java/io/Base64InputStream.java delete mode 100644 libjava/gnu/java/io/ClassLoaderObjectInputStream.java delete mode 100644 libjava/gnu/java/io/NullOutputStream.java delete mode 100644 libjava/gnu/java/io/ObjectIdentityWrapper.java delete mode 100644 libjava/gnu/java/lang/ArrayHelper.java delete mode 100644 libjava/gnu/java/lang/CharData.java delete mode 100644 libjava/gnu/java/lang/ClassHelper.java delete mode 100644 libjava/gnu/java/lang/reflect/TypeSignature.java delete mode 100644 libjava/gnu/java/math/MPN.java delete mode 100644 libjava/gnu/java/net/BASE64.java delete mode 100644 libjava/gnu/java/net/CRLFInputStream.java delete mode 100644 libjava/gnu/java/net/CRLFOutputStream.java delete mode 100644 libjava/gnu/java/net/EmptyX509TrustManager.java delete mode 100644 libjava/gnu/java/net/GetLocalHostAction.java delete mode 100644 libjava/gnu/java/net/HeaderFieldHelper.java delete mode 100644 libjava/gnu/java/net/LineInputStream.java delete mode 100644 libjava/gnu/java/net/URLParseError.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/ActiveModeDTP.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/BlockInputStream.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/BlockOutputStream.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/CompressedInputStream.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/CompressedOutputStream.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/DTP.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/DTPInputStream.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/DTPOutputStream.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/FTPConnection.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/FTPException.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/FTPResponse.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/FTPURLConnection.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/Handler.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/PassiveModeDTP.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/StreamInputStream.java delete mode 100644 libjava/gnu/java/net/protocol/ftp/StreamOutputStream.java delete mode 100644 libjava/gnu/java/net/protocol/http/Authenticator.java delete mode 100644 libjava/gnu/java/net/protocol/http/ByteArrayRequestBodyWriter.java delete mode 100644 libjava/gnu/java/net/protocol/http/ByteArrayResponseBodyReader.java delete mode 100644 libjava/gnu/java/net/protocol/http/ChunkedInputStream.java delete mode 100644 libjava/gnu/java/net/protocol/http/Cookie.java delete mode 100644 libjava/gnu/java/net/protocol/http/CookieManager.java delete mode 100644 libjava/gnu/java/net/protocol/http/Credentials.java delete mode 100644 libjava/gnu/java/net/protocol/http/HTTPConnection.java delete mode 100644 libjava/gnu/java/net/protocol/http/HTTPDateFormat.java delete mode 100644 libjava/gnu/java/net/protocol/http/HTTPURLConnection.java delete mode 100644 libjava/gnu/java/net/protocol/http/Handler.java delete mode 100644 libjava/gnu/java/net/protocol/http/Headers.java delete mode 100644 libjava/gnu/java/net/protocol/http/Request.java delete mode 100644 libjava/gnu/java/net/protocol/http/RequestBodyWriter.java delete mode 100644 libjava/gnu/java/net/protocol/http/Response.java delete mode 100644 libjava/gnu/java/net/protocol/http/ResponseBodyReader.java delete mode 100644 libjava/gnu/java/net/protocol/http/ResponseHeaderHandler.java delete mode 100644 libjava/gnu/java/net/protocol/http/SimpleCookieManager.java delete mode 100644 libjava/gnu/java/net/protocol/http/event/ConnectionEvent.java delete mode 100644 libjava/gnu/java/net/protocol/http/event/ConnectionListener.java delete mode 100644 libjava/gnu/java/net/protocol/http/event/RequestEvent.java delete mode 100644 libjava/gnu/java/net/protocol/http/event/RequestListener.java delete mode 100644 libjava/gnu/java/net/protocol/https/Handler.java delete mode 100644 libjava/gnu/java/net/protocol/jar/Handler.java delete mode 100644 libjava/gnu/java/nio/ChannelInputStream.java delete mode 100644 libjava/gnu/java/nio/ChannelOutputStream.java delete mode 100644 libjava/gnu/java/nio/ChannelReader.java delete mode 100644 libjava/gnu/java/nio/FileLockImpl.java delete mode 100644 libjava/gnu/java/nio/InputStreamChannel.java delete mode 100644 libjava/gnu/java/nio/NIOConstants.java delete mode 100644 libjava/gnu/java/nio/NIODatagramSocket.java delete mode 100644 libjava/gnu/java/nio/NIOSocket.java delete mode 100644 libjava/gnu/java/nio/OutputStreamChannel.java delete mode 100644 libjava/gnu/java/nio/PipeImpl.java delete mode 100644 libjava/gnu/java/nio/SelectionKeyImpl.java delete mode 100644 libjava/gnu/java/nio/SelectorImpl.java delete mode 100644 libjava/gnu/java/nio/SelectorProviderImpl.java delete mode 100644 libjava/gnu/java/nio/charset/ISO_8859_1.java delete mode 100644 libjava/gnu/java/nio/charset/US_ASCII.java delete mode 100644 libjava/gnu/java/nio/charset/UTF_16.java delete mode 100644 libjava/gnu/java/nio/charset/UTF_16BE.java delete mode 100644 libjava/gnu/java/nio/charset/UTF_16Decoder.java delete mode 100644 libjava/gnu/java/nio/charset/UTF_16Encoder.java delete mode 100644 libjava/gnu/java/nio/charset/UTF_16LE.java delete mode 100644 libjava/gnu/java/nio/charset/UTF_8.java delete mode 100644 libjava/gnu/java/rmi/RMIMarshalledObjectInputStream.java delete mode 100644 libjava/gnu/java/rmi/RMIMarshalledObjectOutputStream.java delete mode 100644 libjava/gnu/java/rmi/dgc/DGCImpl.java delete mode 100644 libjava/gnu/java/rmi/dgc/DGCImpl_Skel.java delete mode 100644 libjava/gnu/java/rmi/dgc/DGCImpl_Stub.java delete mode 100644 libjava/gnu/java/rmi/registry/RegistryImpl.java delete mode 100644 libjava/gnu/java/rmi/registry/RegistryImpl_Skel.java delete mode 100644 libjava/gnu/java/rmi/registry/RegistryImpl_Stub.java delete mode 100644 libjava/gnu/java/rmi/server/ConnectionRunnerPool.java delete mode 100644 libjava/gnu/java/rmi/server/ProtocolConstants.java delete mode 100644 libjava/gnu/java/rmi/server/RMIDefaultSocketFactory.java delete mode 100644 libjava/gnu/java/rmi/server/RMIHashes.java delete mode 100644 libjava/gnu/java/rmi/server/RMIIncomingThread.java delete mode 100644 libjava/gnu/java/rmi/server/RMIObjectInputStream.java delete mode 100644 libjava/gnu/java/rmi/server/RMIObjectOutputStream.java delete mode 100644 libjava/gnu/java/rmi/server/RMIVoidValue.java delete mode 100644 libjava/gnu/java/rmi/server/UnicastConnection.java delete mode 100644 libjava/gnu/java/rmi/server/UnicastConnectionManager.java delete mode 100644 libjava/gnu/java/rmi/server/UnicastRef.java delete mode 100644 libjava/gnu/java/rmi/server/UnicastRemoteCall.java delete mode 100644 libjava/gnu/java/rmi/server/UnicastRemoteStub.java delete mode 100644 libjava/gnu/java/rmi/server/UnicastServer.java delete mode 100644 libjava/gnu/java/rmi/server/UnicastServerRef.java delete mode 100644 libjava/gnu/java/security/Engine.java delete mode 100644 libjava/gnu/java/security/OID.java delete mode 100644 libjava/gnu/java/security/PolicyFile.java delete mode 100644 libjava/gnu/java/security/action/GetPropertyAction.java delete mode 100644 libjava/gnu/java/security/action/GetSecurityPropertyAction.java delete mode 100644 libjava/gnu/java/security/action/SetAccessibleAction.java delete mode 100644 libjava/gnu/java/security/ber/BER.java delete mode 100644 libjava/gnu/java/security/ber/BEREncodingException.java delete mode 100644 libjava/gnu/java/security/ber/BERReader.java delete mode 100644 libjava/gnu/java/security/ber/BERValue.java delete mode 100644 libjava/gnu/java/security/der/BitString.java delete mode 100644 libjava/gnu/java/security/der/DER.java delete mode 100644 libjava/gnu/java/security/der/DEREncodingException.java delete mode 100644 libjava/gnu/java/security/der/DERReader.java delete mode 100644 libjava/gnu/java/security/der/DERValue.java delete mode 100644 libjava/gnu/java/security/der/DERWriter.java delete mode 100644 libjava/gnu/java/security/pkcs/PKCS7SignedData.java delete mode 100644 libjava/gnu/java/security/pkcs/SignerInfo.java delete mode 100644 libjava/gnu/java/security/provider/CollectionCertStoreImpl.java delete mode 100644 libjava/gnu/java/security/provider/DSAKeyFactory.java delete mode 100644 libjava/gnu/java/security/provider/DSAKeyPairGenerator.java delete mode 100644 libjava/gnu/java/security/provider/DSAParameterGenerator.java delete mode 100644 libjava/gnu/java/security/provider/DSAParameters.java delete mode 100644 libjava/gnu/java/security/provider/DSASignature.java delete mode 100644 libjava/gnu/java/security/provider/DefaultPolicy.java delete mode 100644 libjava/gnu/java/security/provider/EncodedKeyFactory.java delete mode 100644 libjava/gnu/java/security/provider/Gnu.java delete mode 100644 libjava/gnu/java/security/provider/GnuDHPublicKey.java delete mode 100644 libjava/gnu/java/security/provider/GnuDSAPrivateKey.java delete mode 100644 libjava/gnu/java/security/provider/GnuDSAPublicKey.java delete mode 100644 libjava/gnu/java/security/provider/GnuRSAPrivateKey.java delete mode 100644 libjava/gnu/java/security/provider/GnuRSAPublicKey.java delete mode 100644 libjava/gnu/java/security/provider/MD2withRSA.java delete mode 100644 libjava/gnu/java/security/provider/MD4withRSA.java delete mode 100644 libjava/gnu/java/security/provider/MD5.java delete mode 100644 libjava/gnu/java/security/provider/MD5withRSA.java delete mode 100644 libjava/gnu/java/security/provider/PKIXCertPathValidatorImpl.java delete mode 100644 libjava/gnu/java/security/provider/RSA.java delete mode 100644 libjava/gnu/java/security/provider/RSAKeyFactory.java delete mode 100644 libjava/gnu/java/security/provider/SHA.java delete mode 100644 libjava/gnu/java/security/provider/SHA1PRNG.java delete mode 100644 libjava/gnu/java/security/provider/SHA1withRSA.java delete mode 100644 libjava/gnu/java/security/provider/X509CertificateFactory.java delete mode 100644 libjava/gnu/java/security/util/Prime.java delete mode 100644 libjava/gnu/java/security/x509/GnuPKIExtension.java delete mode 100644 libjava/gnu/java/security/x509/PolicyNodeImpl.java delete mode 100644 libjava/gnu/java/security/x509/Util.java delete mode 100644 libjava/gnu/java/security/x509/X500DistinguishedName.java delete mode 100644 libjava/gnu/java/security/x509/X509CRL.java delete mode 100644 libjava/gnu/java/security/x509/X509CRLEntry.java delete mode 100644 libjava/gnu/java/security/x509/X509CRLSelectorImpl.java delete mode 100644 libjava/gnu/java/security/x509/X509CertPath.java delete mode 100644 libjava/gnu/java/security/x509/X509CertSelectorImpl.java delete mode 100644 libjava/gnu/java/security/x509/X509Certificate.java delete mode 100644 libjava/gnu/java/security/x509/ext/AuthorityKeyIdentifier.java delete mode 100644 libjava/gnu/java/security/x509/ext/BasicConstraints.java delete mode 100644 libjava/gnu/java/security/x509/ext/CRLNumber.java delete mode 100644 libjava/gnu/java/security/x509/ext/CertificatePolicies.java delete mode 100644 libjava/gnu/java/security/x509/ext/ExtendedKeyUsage.java delete mode 100644 libjava/gnu/java/security/x509/ext/Extension.java delete mode 100644 libjava/gnu/java/security/x509/ext/GeneralNames.java delete mode 100644 libjava/gnu/java/security/x509/ext/IssuerAlternativeNames.java delete mode 100644 libjava/gnu/java/security/x509/ext/KeyUsage.java delete mode 100644 libjava/gnu/java/security/x509/ext/PolicyConstraint.java delete mode 100644 libjava/gnu/java/security/x509/ext/PolicyMappings.java delete mode 100644 libjava/gnu/java/security/x509/ext/PrivateKeyUsagePeriod.java delete mode 100644 libjava/gnu/java/security/x509/ext/ReasonCode.java delete mode 100644 libjava/gnu/java/security/x509/ext/SubjectAlternativeNames.java delete mode 100644 libjava/gnu/java/security/x509/ext/SubjectKeyIdentifier.java delete mode 100644 libjava/gnu/java/text/AttributedFormatBuffer.java delete mode 100644 libjava/gnu/java/text/BaseBreakIterator.java delete mode 100644 libjava/gnu/java/text/CharacterBreakIterator.java delete mode 100644 libjava/gnu/java/text/FormatBuffer.java delete mode 100644 libjava/gnu/java/text/FormatCharacterIterator.java delete mode 100644 libjava/gnu/java/text/LineBreakIterator.java delete mode 100644 libjava/gnu/java/text/SentenceBreakIterator.java delete mode 100644 libjava/gnu/java/text/StringFormatBuffer.java delete mode 100644 libjava/gnu/java/text/WordBreakIterator.java delete mode 100644 libjava/gnu/java/util/DoubleEnumeration.java delete mode 100644 libjava/gnu/java/util/EmptyEnumeration.java delete mode 100644 libjava/gnu/java/util/prefs/FileBasedFactory.java delete mode 100644 libjava/gnu/java/util/prefs/MemoryBasedFactory.java delete mode 100644 libjava/gnu/java/util/prefs/MemoryBasedPreferences.java delete mode 100644 libjava/gnu/java/util/prefs/NodeReader.java delete mode 100644 libjava/gnu/java/util/prefs/NodeWriter.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/HTML_401F.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/gnuDTD.java delete mode 100644 libjava/gnu/javax/swing/text/html/parser/htmlAttributeSet.java delete mode 100644 libjava/gnu/javax/swing/text/html/parser/htmlValidator.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/models/PCDATAonly_model.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/models/TableRowContentModel.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/models/list.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/models/noTagModel.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/models/node.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/models/transformer.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/support/Parser.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/support/gnuStringIntMapper.java delete mode 100644 libjava/gnu/javax/swing/text/html/parser/support/low/Buffer.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/support/low/Constants.java delete mode 100644 libjava/gnu/javax/swing/text/html/parser/support/low/Location.java delete mode 100644 libjava/gnu/javax/swing/text/html/parser/support/low/ParseException.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/support/low/Queue.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/support/low/ReaderTokenizer.java delete mode 100644 libjava/gnu/javax/swing/text/html/parser/support/low/Token.java delete mode 100644 libjava/gnu/javax/swing/text/html/parser/support/low/node.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/support/low/pattern.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/support/parameterDefaulter.java delete mode 100755 libjava/gnu/javax/swing/text/html/parser/support/textPreProcessor.java delete mode 100644 libjava/gnu/regexp/CharIndexed.java delete mode 100644 libjava/gnu/regexp/CharIndexedCharArray.java delete mode 100644 libjava/gnu/regexp/CharIndexedInputStream.java delete mode 100644 libjava/gnu/regexp/CharIndexedString.java delete mode 100644 libjava/gnu/regexp/CharIndexedStringBuffer.java delete mode 100644 libjava/gnu/regexp/RE.java delete mode 100644 libjava/gnu/regexp/REException.java delete mode 100644 libjava/gnu/regexp/REFilterInputStream.java delete mode 100644 libjava/gnu/regexp/REMatch.java delete mode 100644 libjava/gnu/regexp/REMatchEnumeration.java delete mode 100644 libjava/gnu/regexp/RESyntax.java delete mode 100644 libjava/gnu/regexp/REToken.java delete mode 100644 libjava/gnu/regexp/RETokenAny.java delete mode 100644 libjava/gnu/regexp/RETokenBackRef.java delete mode 100644 libjava/gnu/regexp/RETokenChar.java delete mode 100644 libjava/gnu/regexp/RETokenEnd.java delete mode 100644 libjava/gnu/regexp/RETokenEndSub.java delete mode 100644 libjava/gnu/regexp/RETokenLookAhead.java delete mode 100644 libjava/gnu/regexp/RETokenOneOf.java delete mode 100644 libjava/gnu/regexp/RETokenPOSIX.java delete mode 100644 libjava/gnu/regexp/RETokenRange.java delete mode 100644 libjava/gnu/regexp/RETokenRepeated.java delete mode 100644 libjava/gnu/regexp/RETokenStart.java delete mode 100644 libjava/gnu/regexp/RETokenWordBoundary.java delete mode 100644 libjava/gnu/regexp/UncheckedRE.java delete mode 100644 libjava/gnu/xml/aelfred2/ContentHandler2.java delete mode 100644 libjava/gnu/xml/aelfred2/JAXPFactory.java delete mode 100644 libjava/gnu/xml/aelfred2/SAXDriver.java delete mode 100644 libjava/gnu/xml/aelfred2/XmlParser.java delete mode 100644 libjava/gnu/xml/aelfred2/XmlReader.java delete mode 100644 libjava/gnu/xml/dom/Consumer.java delete mode 100644 libjava/gnu/xml/dom/DTDAttributeTypeInfo.java delete mode 100644 libjava/gnu/xml/dom/DTDElementTypeInfo.java delete mode 100644 libjava/gnu/xml/dom/DomAttr.java delete mode 100644 libjava/gnu/xml/dom/DomCDATASection.java delete mode 100644 libjava/gnu/xml/dom/DomCharacterData.java delete mode 100644 libjava/gnu/xml/dom/DomComment.java delete mode 100644 libjava/gnu/xml/dom/DomDOMException.java delete mode 100644 libjava/gnu/xml/dom/DomDoctype.java delete mode 100644 libjava/gnu/xml/dom/DomDocument.java delete mode 100644 libjava/gnu/xml/dom/DomDocumentBuilder.java delete mode 100644 libjava/gnu/xml/dom/DomDocumentBuilderFactory.java delete mode 100644 libjava/gnu/xml/dom/DomDocumentConfiguration.java delete mode 100644 libjava/gnu/xml/dom/DomDocumentFragment.java delete mode 100644 libjava/gnu/xml/dom/DomElement.java delete mode 100644 libjava/gnu/xml/dom/DomEntity.java delete mode 100644 libjava/gnu/xml/dom/DomEntityReference.java delete mode 100644 libjava/gnu/xml/dom/DomEvent.java delete mode 100644 libjava/gnu/xml/dom/DomExtern.java delete mode 100644 libjava/gnu/xml/dom/DomImpl.java delete mode 100644 libjava/gnu/xml/dom/DomIterator.java delete mode 100644 libjava/gnu/xml/dom/DomNSResolverContext.java delete mode 100644 libjava/gnu/xml/dom/DomNamedNodeMap.java delete mode 100644 libjava/gnu/xml/dom/DomNode.java delete mode 100644 libjava/gnu/xml/dom/DomNodeIterator.java delete mode 100644 libjava/gnu/xml/dom/DomNotation.java delete mode 100644 libjava/gnu/xml/dom/DomNsNode.java delete mode 100644 libjava/gnu/xml/dom/DomProcessingInstruction.java delete mode 100644 libjava/gnu/xml/dom/DomText.java delete mode 100644 libjava/gnu/xml/dom/DomXPathExpression.java delete mode 100644 libjava/gnu/xml/dom/DomXPathNSResolver.java delete mode 100644 libjava/gnu/xml/dom/DomXPathResult.java delete mode 100644 libjava/gnu/xml/dom/ImplementationList.java delete mode 100644 libjava/gnu/xml/dom/ImplementationSource.java delete mode 100644 libjava/gnu/xml/dom/JAXPFactory.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLAnchorElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLAppletElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLAreaElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLBRElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLBaseElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLBaseFontElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLBodyElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLButtonElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLCollection.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLDListElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLDirectoryElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLDivElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLDocument.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLFieldSetElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLFontElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLFormElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLFrameElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLFrameSetElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLHRElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLHeadElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLHeadingElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLHtmlElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLIFrameElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLImageElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLImpl.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLInputElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLIsIndexElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLLIElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLLabelElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLLegendElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLLinkElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLMapElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLMenuElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLMetaElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLModElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLOListElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLObjectElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLOptGroupElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLOptionElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLParagraphElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLParamElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLParser.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLPreElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLQuoteElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLScriptElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLSelectElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLStyleElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLTableCaptionElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLTableCellElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLTableColElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLTableElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLTableRowElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLTableSectionElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLTextAreaElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLTitleElement.java delete mode 100644 libjava/gnu/xml/dom/html2/DomHTMLUListElement.java delete mode 100644 libjava/gnu/xml/dom/ls/DomLSException.java delete mode 100644 libjava/gnu/xml/dom/ls/DomLSInput.java delete mode 100644 libjava/gnu/xml/dom/ls/DomLSOutput.java delete mode 100644 libjava/gnu/xml/dom/ls/DomLSParser.java delete mode 100644 libjava/gnu/xml/dom/ls/DomLSSerializer.java delete mode 100644 libjava/gnu/xml/dom/ls/FilteredSAXEventSink.java delete mode 100644 libjava/gnu/xml/dom/ls/ReaderInputStream.java delete mode 100644 libjava/gnu/xml/dom/ls/SAXEventSink.java delete mode 100644 libjava/gnu/xml/dom/ls/WriterOutputStream.java delete mode 100644 libjava/gnu/xml/pipeline/CallFilter.java delete mode 100644 libjava/gnu/xml/pipeline/DomConsumer.java delete mode 100644 libjava/gnu/xml/pipeline/EventConsumer.java delete mode 100644 libjava/gnu/xml/pipeline/EventFilter.java delete mode 100644 libjava/gnu/xml/pipeline/LinkFilter.java delete mode 100644 libjava/gnu/xml/pipeline/NSFilter.java delete mode 100644 libjava/gnu/xml/pipeline/PipelineFactory.java delete mode 100644 libjava/gnu/xml/pipeline/TeeConsumer.java delete mode 100644 libjava/gnu/xml/pipeline/TextConsumer.java delete mode 100644 libjava/gnu/xml/pipeline/ValidationConsumer.java delete mode 100644 libjava/gnu/xml/pipeline/WellFormednessFilter.java delete mode 100644 libjava/gnu/xml/pipeline/XIncludeFilter.java delete mode 100644 libjava/gnu/xml/pipeline/XsltFilter.java delete mode 100644 libjava/gnu/xml/transform/AbstractNumberNode.java delete mode 100644 libjava/gnu/xml/transform/ApplyImportsNode.java delete mode 100644 libjava/gnu/xml/transform/ApplyTemplatesNode.java delete mode 100644 libjava/gnu/xml/transform/AttributeNode.java delete mode 100644 libjava/gnu/xml/transform/AttributeSet.java delete mode 100644 libjava/gnu/xml/transform/Bindings.java delete mode 100644 libjava/gnu/xml/transform/CallTemplateNode.java delete mode 100644 libjava/gnu/xml/transform/ChooseNode.java delete mode 100644 libjava/gnu/xml/transform/CommentNode.java delete mode 100644 libjava/gnu/xml/transform/CopyNode.java delete mode 100644 libjava/gnu/xml/transform/CopyOfNode.java delete mode 100644 libjava/gnu/xml/transform/CurrentFunction.java delete mode 100644 libjava/gnu/xml/transform/DOMSourceLocator.java delete mode 100644 libjava/gnu/xml/transform/DocumentFunction.java delete mode 100644 libjava/gnu/xml/transform/ElementAvailableFunction.java delete mode 100644 libjava/gnu/xml/transform/ElementNode.java delete mode 100644 libjava/gnu/xml/transform/ErrorListenerErrorHandler.java delete mode 100644 libjava/gnu/xml/transform/ForEachNode.java delete mode 100644 libjava/gnu/xml/transform/FormatNumberFunction.java delete mode 100644 libjava/gnu/xml/transform/FunctionAvailableFunction.java delete mode 100644 libjava/gnu/xml/transform/GenerateIdFunction.java delete mode 100644 libjava/gnu/xml/transform/IfNode.java delete mode 100644 libjava/gnu/xml/transform/Key.java delete mode 100644 libjava/gnu/xml/transform/KeyFunction.java delete mode 100644 libjava/gnu/xml/transform/LiteralNode.java delete mode 100644 libjava/gnu/xml/transform/MessageNode.java delete mode 100644 libjava/gnu/xml/transform/NodeNumberNode.java delete mode 100644 libjava/gnu/xml/transform/NumberNode.java delete mode 100644 libjava/gnu/xml/transform/OtherwiseNode.java delete mode 100644 libjava/gnu/xml/transform/ParameterNode.java delete mode 100644 libjava/gnu/xml/transform/ProcessingInstructionNode.java delete mode 100644 libjava/gnu/xml/transform/SAXSerializer.java delete mode 100644 libjava/gnu/xml/transform/SortKey.java delete mode 100644 libjava/gnu/xml/transform/StreamSerializer.java delete mode 100644 libjava/gnu/xml/transform/Stylesheet.java delete mode 100644 libjava/gnu/xml/transform/SystemPropertyFunction.java delete mode 100644 libjava/gnu/xml/transform/Template.java delete mode 100644 libjava/gnu/xml/transform/TemplateNode.java delete mode 100644 libjava/gnu/xml/transform/TemplatesImpl.java delete mode 100644 libjava/gnu/xml/transform/TextNode.java delete mode 100644 libjava/gnu/xml/transform/TransformerFactoryImpl.java delete mode 100644 libjava/gnu/xml/transform/TransformerImpl.java delete mode 100644 libjava/gnu/xml/transform/TransformerOutputProperties.java delete mode 100644 libjava/gnu/xml/transform/URIResolverEntityResolver.java delete mode 100644 libjava/gnu/xml/transform/UnparsedEntityUriFunction.java delete mode 100644 libjava/gnu/xml/transform/ValueOfNode.java delete mode 100644 libjava/gnu/xml/transform/WhenNode.java delete mode 100644 libjava/gnu/xml/transform/WithParam.java delete mode 100644 libjava/gnu/xml/transform/XSLComparator.java delete mode 100644 libjava/gnu/xml/transform/XSLURIResolver.java delete mode 100644 libjava/gnu/xml/util/DoParse.java delete mode 100644 libjava/gnu/xml/util/DomParser.java delete mode 100644 libjava/gnu/xml/util/Resolver.java delete mode 100644 libjava/gnu/xml/util/SAXNullTransformerFactory.java delete mode 100644 libjava/gnu/xml/util/XCat.java delete mode 100644 libjava/gnu/xml/util/XHTMLWriter.java delete mode 100644 libjava/gnu/xml/util/XMLWriter.java delete mode 100644 libjava/gnu/xml/xpath/AndExpr.java delete mode 100644 libjava/gnu/xml/xpath/ArithmeticExpr.java delete mode 100644 libjava/gnu/xml/xpath/BooleanFunction.java delete mode 100644 libjava/gnu/xml/xpath/CeilingFunction.java delete mode 100644 libjava/gnu/xml/xpath/ConcatFunction.java delete mode 100644 libjava/gnu/xml/xpath/Constant.java delete mode 100644 libjava/gnu/xml/xpath/ContainsFunction.java delete mode 100644 libjava/gnu/xml/xpath/CountFunction.java delete mode 100644 libjava/gnu/xml/xpath/DocumentOrderComparator.java delete mode 100644 libjava/gnu/xml/xpath/EqualityExpr.java delete mode 100644 libjava/gnu/xml/xpath/Expr.java delete mode 100644 libjava/gnu/xml/xpath/FalseFunction.java delete mode 100644 libjava/gnu/xml/xpath/FloorFunction.java delete mode 100644 libjava/gnu/xml/xpath/Function.java delete mode 100644 libjava/gnu/xml/xpath/FunctionCall.java delete mode 100644 libjava/gnu/xml/xpath/IdFunction.java delete mode 100644 libjava/gnu/xml/xpath/LangFunction.java delete mode 100644 libjava/gnu/xml/xpath/LastFunction.java delete mode 100644 libjava/gnu/xml/xpath/LocalNameFunction.java delete mode 100644 libjava/gnu/xml/xpath/NameFunction.java delete mode 100644 libjava/gnu/xml/xpath/NameTest.java delete mode 100644 libjava/gnu/xml/xpath/NamespaceTest.java delete mode 100644 libjava/gnu/xml/xpath/NamespaceUriFunction.java delete mode 100644 libjava/gnu/xml/xpath/NegativeExpr.java delete mode 100644 libjava/gnu/xml/xpath/NodeTypeTest.java delete mode 100644 libjava/gnu/xml/xpath/NormalizeSpaceFunction.java delete mode 100644 libjava/gnu/xml/xpath/NotFunction.java delete mode 100644 libjava/gnu/xml/xpath/NumberFunction.java delete mode 100644 libjava/gnu/xml/xpath/OrExpr.java delete mode 100644 libjava/gnu/xml/xpath/ParenthesizedExpr.java delete mode 100644 libjava/gnu/xml/xpath/Path.java delete mode 100644 libjava/gnu/xml/xpath/Pattern.java delete mode 100644 libjava/gnu/xml/xpath/PositionFunction.java delete mode 100644 libjava/gnu/xml/xpath/Predicate.java delete mode 100644 libjava/gnu/xml/xpath/RelationalExpr.java delete mode 100644 libjava/gnu/xml/xpath/Root.java delete mode 100644 libjava/gnu/xml/xpath/RoundFunction.java delete mode 100644 libjava/gnu/xml/xpath/Selector.java delete mode 100644 libjava/gnu/xml/xpath/StartsWithFunction.java delete mode 100644 libjava/gnu/xml/xpath/Steps.java delete mode 100644 libjava/gnu/xml/xpath/StringFunction.java delete mode 100644 libjava/gnu/xml/xpath/StringLengthFunction.java delete mode 100644 libjava/gnu/xml/xpath/SubstringAfterFunction.java delete mode 100644 libjava/gnu/xml/xpath/SubstringBeforeFunction.java delete mode 100644 libjava/gnu/xml/xpath/SubstringFunction.java delete mode 100644 libjava/gnu/xml/xpath/SumFunction.java delete mode 100644 libjava/gnu/xml/xpath/Test.java delete mode 100644 libjava/gnu/xml/xpath/TranslateFunction.java delete mode 100644 libjava/gnu/xml/xpath/TrueFunction.java delete mode 100644 libjava/gnu/xml/xpath/UnionExpr.java delete mode 100644 libjava/gnu/xml/xpath/VariableReference.java delete mode 100644 libjava/gnu/xml/xpath/XPathFactoryImpl.java delete mode 100644 libjava/gnu/xml/xpath/XPathImpl.java delete mode 100644 libjava/gnu/xml/xpath/XPathParser.java delete mode 100644 libjava/gnu/xml/xpath/XPathTokenizer.java delete mode 100644 libjava/include/jni.h delete mode 100644 libjava/java/applet/Applet.java delete mode 100644 libjava/java/applet/AppletContext.java delete mode 100644 libjava/java/applet/AppletStub.java delete mode 100644 libjava/java/applet/AudioClip.java delete mode 100644 libjava/java/awt/AWTError.java delete mode 100644 libjava/java/awt/AWTEvent.java delete mode 100644 libjava/java/awt/AWTEventMulticaster.java delete mode 100644 libjava/java/awt/AWTException.java delete mode 100644 libjava/java/awt/AWTKeyStroke.java delete mode 100644 libjava/java/awt/AWTPermission.java delete mode 100644 libjava/java/awt/ActiveEvent.java delete mode 100644 libjava/java/awt/Adjustable.java delete mode 100644 libjava/java/awt/AlphaComposite.java delete mode 100644 libjava/java/awt/AttributeValue.java delete mode 100644 libjava/java/awt/BasicStroke.java delete mode 100644 libjava/java/awt/BorderLayout.java delete mode 100644 libjava/java/awt/BufferCapabilities.java delete mode 100644 libjava/java/awt/Button.java delete mode 100644 libjava/java/awt/Canvas.java delete mode 100644 libjava/java/awt/CardLayout.java delete mode 100644 libjava/java/awt/Checkbox.java delete mode 100644 libjava/java/awt/CheckboxGroup.java delete mode 100644 libjava/java/awt/CheckboxMenuItem.java delete mode 100644 libjava/java/awt/Choice.java delete mode 100644 libjava/java/awt/Color.java delete mode 100644 libjava/java/awt/ColorPaintContext.java delete mode 100644 libjava/java/awt/Component.java delete mode 100644 libjava/java/awt/ComponentOrientation.java delete mode 100644 libjava/java/awt/Composite.java delete mode 100644 libjava/java/awt/CompositeContext.java delete mode 100644 libjava/java/awt/Container.java delete mode 100644 libjava/java/awt/ContainerOrderFocusTraversalPolicy.java delete mode 100644 libjava/java/awt/Cursor.java delete mode 100644 libjava/java/awt/DefaultFocusTraversalPolicy.java delete mode 100644 libjava/java/awt/DefaultKeyboardFocusManager.java delete mode 100644 libjava/java/awt/Dialog.java delete mode 100644 libjava/java/awt/Dimension.java delete mode 100644 libjava/java/awt/DisplayMode.java delete mode 100644 libjava/java/awt/Event.java delete mode 100644 libjava/java/awt/EventDispatchThread.java delete mode 100644 libjava/java/awt/EventQueue.java delete mode 100644 libjava/java/awt/FileDialog.java delete mode 100644 libjava/java/awt/FlowLayout.java delete mode 100644 libjava/java/awt/FocusTraversalPolicy.java delete mode 100644 libjava/java/awt/Font.java delete mode 100644 libjava/java/awt/FontFormatException.java delete mode 100644 libjava/java/awt/FontMetrics.java delete mode 100644 libjava/java/awt/Frame.java delete mode 100644 libjava/java/awt/GradientPaint.java delete mode 100644 libjava/java/awt/Graphics.java delete mode 100644 libjava/java/awt/Graphics2D.java delete mode 100644 libjava/java/awt/GraphicsConfigTemplate.java delete mode 100644 libjava/java/awt/GraphicsConfiguration.java delete mode 100644 libjava/java/awt/GraphicsDevice.java delete mode 100644 libjava/java/awt/GraphicsEnvironment.java delete mode 100644 libjava/java/awt/GridBagConstraints.java delete mode 100644 libjava/java/awt/GridBagLayout.java delete mode 100644 libjava/java/awt/GridBagLayoutInfo.java delete mode 100644 libjava/java/awt/GridLayout.java delete mode 100644 libjava/java/awt/HeadlessException.java delete mode 100644 libjava/java/awt/IllegalComponentStateException.java delete mode 100644 libjava/java/awt/Image.java delete mode 100644 libjava/java/awt/ImageCapabilities.java delete mode 100644 libjava/java/awt/Insets.java delete mode 100644 libjava/java/awt/ItemSelectable.java delete mode 100644 libjava/java/awt/JobAttributes.java delete mode 100644 libjava/java/awt/KeyEventDispatcher.java delete mode 100644 libjava/java/awt/KeyEventPostProcessor.java delete mode 100644 libjava/java/awt/KeyboardFocusManager.java delete mode 100644 libjava/java/awt/Label.java delete mode 100644 libjava/java/awt/LayoutManager.java delete mode 100644 libjava/java/awt/LayoutManager2.java delete mode 100644 libjava/java/awt/List.java delete mode 100644 libjava/java/awt/MediaTracker.java delete mode 100644 libjava/java/awt/Menu.java delete mode 100644 libjava/java/awt/MenuBar.java delete mode 100644 libjava/java/awt/MenuComponent.java delete mode 100644 libjava/java/awt/MenuContainer.java delete mode 100644 libjava/java/awt/MenuItem.java delete mode 100644 libjava/java/awt/MenuShortcut.java delete mode 100644 libjava/java/awt/PageAttributes.java delete mode 100644 libjava/java/awt/Paint.java delete mode 100644 libjava/java/awt/PaintContext.java delete mode 100644 libjava/java/awt/Panel.java delete mode 100644 libjava/java/awt/Point.java delete mode 100644 libjava/java/awt/Polygon.java delete mode 100644 libjava/java/awt/PopupMenu.java delete mode 100644 libjava/java/awt/PrintGraphics.java delete mode 100644 libjava/java/awt/PrintJob.java delete mode 100644 libjava/java/awt/Rectangle.java delete mode 100644 libjava/java/awt/RenderingHints.java delete mode 100644 libjava/java/awt/Robot.java delete mode 100644 libjava/java/awt/ScrollPane.java delete mode 100644 libjava/java/awt/ScrollPaneAdjustable.java delete mode 100644 libjava/java/awt/Scrollbar.java delete mode 100644 libjava/java/awt/Shape.java delete mode 100644 libjava/java/awt/Stroke.java delete mode 100644 libjava/java/awt/SystemColor.java delete mode 100644 libjava/java/awt/TextArea.java delete mode 100644 libjava/java/awt/TextComponent.java delete mode 100644 libjava/java/awt/TextField.java delete mode 100644 libjava/java/awt/TexturePaint.java delete mode 100644 libjava/java/awt/Toolkit.java delete mode 100644 libjava/java/awt/Transparency.java delete mode 100644 libjava/java/awt/Window.java delete mode 100644 libjava/java/awt/color/CMMException.java delete mode 100644 libjava/java/awt/color/ColorSpace.java delete mode 100644 libjava/java/awt/color/ICC_ColorSpace.java delete mode 100644 libjava/java/awt/color/ICC_Profile.java delete mode 100644 libjava/java/awt/color/ICC_ProfileGray.java delete mode 100644 libjava/java/awt/color/ICC_ProfileRGB.java delete mode 100644 libjava/java/awt/color/ProfileDataException.java delete mode 100644 libjava/java/awt/datatransfer/Clipboard.java delete mode 100644 libjava/java/awt/datatransfer/ClipboardOwner.java delete mode 100644 libjava/java/awt/datatransfer/DataFlavor.java delete mode 100644 libjava/java/awt/datatransfer/FlavorMap.java delete mode 100644 libjava/java/awt/datatransfer/FlavorTable.java delete mode 100644 libjava/java/awt/datatransfer/MimeTypeParseException.java delete mode 100644 libjava/java/awt/datatransfer/StringSelection.java delete mode 100644 libjava/java/awt/datatransfer/SystemFlavorMap.java delete mode 100644 libjava/java/awt/datatransfer/Transferable.java delete mode 100644 libjava/java/awt/datatransfer/UnsupportedFlavorException.java delete mode 100644 libjava/java/awt/dnd/Autoscroll.java delete mode 100644 libjava/java/awt/dnd/DnDConstants.java delete mode 100644 libjava/java/awt/dnd/DnDEventMulticaster.java delete mode 100644 libjava/java/awt/dnd/DragGestureEvent.java delete mode 100644 libjava/java/awt/dnd/DragGestureListener.java delete mode 100644 libjava/java/awt/dnd/DragGestureRecognizer.java delete mode 100644 libjava/java/awt/dnd/DragSource.java delete mode 100644 libjava/java/awt/dnd/DragSourceAdapter.java delete mode 100644 libjava/java/awt/dnd/DragSourceContext.java delete mode 100644 libjava/java/awt/dnd/DragSourceDragEvent.java delete mode 100644 libjava/java/awt/dnd/DragSourceDropEvent.java delete mode 100644 libjava/java/awt/dnd/DragSourceEvent.java delete mode 100644 libjava/java/awt/dnd/DragSourceListener.java delete mode 100644 libjava/java/awt/dnd/DragSourceMotionListener.java delete mode 100644 libjava/java/awt/dnd/DropTarget.java delete mode 100644 libjava/java/awt/dnd/DropTargetAdapter.java delete mode 100644 libjava/java/awt/dnd/DropTargetContext.java delete mode 100644 libjava/java/awt/dnd/DropTargetDragEvent.java delete mode 100644 libjava/java/awt/dnd/DropTargetDropEvent.java delete mode 100644 libjava/java/awt/dnd/DropTargetEvent.java delete mode 100644 libjava/java/awt/dnd/DropTargetListener.java delete mode 100644 libjava/java/awt/dnd/InvalidDnDOperationException.java delete mode 100644 libjava/java/awt/dnd/MouseDragGestureRecognizer.java delete mode 100644 libjava/java/awt/dnd/peer/DragSourceContextPeer.java delete mode 100644 libjava/java/awt/dnd/peer/DropTargetContextPeer.java delete mode 100644 libjava/java/awt/dnd/peer/DropTargetPeer.java delete mode 100644 libjava/java/awt/event/AWTEventListener.java delete mode 100644 libjava/java/awt/event/AWTEventListenerProxy.java delete mode 100644 libjava/java/awt/event/ActionEvent.java delete mode 100644 libjava/java/awt/event/ActionListener.java delete mode 100644 libjava/java/awt/event/AdjustmentEvent.java delete mode 100644 libjava/java/awt/event/AdjustmentListener.java delete mode 100644 libjava/java/awt/event/ComponentAdapter.java delete mode 100644 libjava/java/awt/event/ComponentEvent.java delete mode 100644 libjava/java/awt/event/ComponentListener.java delete mode 100644 libjava/java/awt/event/ContainerAdapter.java delete mode 100644 libjava/java/awt/event/ContainerEvent.java delete mode 100644 libjava/java/awt/event/ContainerListener.java delete mode 100644 libjava/java/awt/event/FocusAdapter.java delete mode 100644 libjava/java/awt/event/FocusEvent.java delete mode 100644 libjava/java/awt/event/FocusListener.java delete mode 100644 libjava/java/awt/event/HierarchyBoundsAdapter.java delete mode 100644 libjava/java/awt/event/HierarchyBoundsListener.java delete mode 100644 libjava/java/awt/event/HierarchyEvent.java delete mode 100644 libjava/java/awt/event/HierarchyListener.java delete mode 100644 libjava/java/awt/event/InputEvent.java delete mode 100644 libjava/java/awt/event/InputMethodEvent.java delete mode 100644 libjava/java/awt/event/InputMethodListener.java delete mode 100644 libjava/java/awt/event/InvocationEvent.java delete mode 100644 libjava/java/awt/event/ItemEvent.java delete mode 100644 libjava/java/awt/event/ItemListener.java delete mode 100644 libjava/java/awt/event/KeyAdapter.java delete mode 100644 libjava/java/awt/event/KeyEvent.java delete mode 100644 libjava/java/awt/event/KeyListener.java delete mode 100644 libjava/java/awt/event/MouseAdapter.java delete mode 100644 libjava/java/awt/event/MouseEvent.java delete mode 100644 libjava/java/awt/event/MouseListener.java delete mode 100644 libjava/java/awt/event/MouseMotionAdapter.java delete mode 100644 libjava/java/awt/event/MouseMotionListener.java delete mode 100644 libjava/java/awt/event/MouseWheelEvent.java delete mode 100644 libjava/java/awt/event/MouseWheelListener.java delete mode 100644 libjava/java/awt/event/PaintEvent.java delete mode 100644 libjava/java/awt/event/TextEvent.java delete mode 100644 libjava/java/awt/event/TextListener.java delete mode 100644 libjava/java/awt/event/WindowAdapter.java delete mode 100644 libjava/java/awt/event/WindowEvent.java delete mode 100644 libjava/java/awt/event/WindowFocusListener.java delete mode 100644 libjava/java/awt/event/WindowListener.java delete mode 100644 libjava/java/awt/event/WindowStateListener.java delete mode 100644 libjava/java/awt/font/FontRenderContext.java delete mode 100644 libjava/java/awt/font/GlyphJustificationInfo.java delete mode 100644 libjava/java/awt/font/GlyphMetrics.java delete mode 100644 libjava/java/awt/font/GlyphVector.java delete mode 100644 libjava/java/awt/font/GraphicAttribute.java delete mode 100644 libjava/java/awt/font/ImageGraphicAttribute.java delete mode 100644 libjava/java/awt/font/LineBreakMeasurer.java delete mode 100644 libjava/java/awt/font/LineMetrics.java delete mode 100644 libjava/java/awt/font/MultipleMaster.java delete mode 100644 libjava/java/awt/font/NumericShaper.java delete mode 100644 libjava/java/awt/font/OpenType.java delete mode 100644 libjava/java/awt/font/ShapeGraphicAttribute.java delete mode 100644 libjava/java/awt/font/TextAttribute.java delete mode 100644 libjava/java/awt/font/TextHitInfo.java delete mode 100644 libjava/java/awt/font/TextLayout.java delete mode 100644 libjava/java/awt/font/TextMeasurer.java delete mode 100644 libjava/java/awt/font/TransformAttribute.java delete mode 100644 libjava/java/awt/geom/AffineTransform.java delete mode 100644 libjava/java/awt/geom/Arc2D.java delete mode 100644 libjava/java/awt/geom/Area.java delete mode 100644 libjava/java/awt/geom/CubicCurve2D.java delete mode 100644 libjava/java/awt/geom/Dimension2D.java delete mode 100644 libjava/java/awt/geom/Ellipse2D.java delete mode 100644 libjava/java/awt/geom/FlatteningPathIterator.java delete mode 100644 libjava/java/awt/geom/GeneralPath.java delete mode 100644 libjava/java/awt/geom/IllegalPathStateException.java delete mode 100644 libjava/java/awt/geom/Line2D.java delete mode 100644 libjava/java/awt/geom/NoninvertibleTransformException.java delete mode 100644 libjava/java/awt/geom/PathIterator.java delete mode 100644 libjava/java/awt/geom/Point2D.java delete mode 100644 libjava/java/awt/geom/QuadCurve2D.java delete mode 100644 libjava/java/awt/geom/Rectangle2D.java delete mode 100644 libjava/java/awt/geom/RectangularShape.java delete mode 100644 libjava/java/awt/geom/RoundRectangle2D.java delete mode 100644 libjava/java/awt/im/InputContext.java delete mode 100644 libjava/java/awt/im/InputMethodHighlight.java delete mode 100644 libjava/java/awt/im/InputMethodRequests.java delete mode 100644 libjava/java/awt/im/InputSubset.java delete mode 100644 libjava/java/awt/im/spi/InputMethod.java delete mode 100644 libjava/java/awt/im/spi/InputMethodContext.java delete mode 100644 libjava/java/awt/im/spi/InputMethodDescriptor.java delete mode 100644 libjava/java/awt/image/AffineTransformOp.java delete mode 100644 libjava/java/awt/image/AreaAveragingScaleFilter.java delete mode 100644 libjava/java/awt/image/BandCombineOp.java delete mode 100644 libjava/java/awt/image/BandedSampleModel.java delete mode 100644 libjava/java/awt/image/BufferStrategy.java delete mode 100644 libjava/java/awt/image/BufferedImage.java delete mode 100644 libjava/java/awt/image/BufferedImageFilter.java delete mode 100644 libjava/java/awt/image/BufferedImageOp.java delete mode 100644 libjava/java/awt/image/ByteLookupTable.java delete mode 100644 libjava/java/awt/image/ColorConvertOp.java delete mode 100644 libjava/java/awt/image/ColorModel.java delete mode 100644 libjava/java/awt/image/ComponentColorModel.java delete mode 100644 libjava/java/awt/image/ComponentSampleModel.java delete mode 100644 libjava/java/awt/image/ConvolveOp.java delete mode 100644 libjava/java/awt/image/CropImageFilter.java delete mode 100644 libjava/java/awt/image/DataBuffer.java delete mode 100644 libjava/java/awt/image/DataBufferByte.java delete mode 100644 libjava/java/awt/image/DataBufferDouble.java delete mode 100644 libjava/java/awt/image/DataBufferFloat.java delete mode 100644 libjava/java/awt/image/DataBufferInt.java delete mode 100644 libjava/java/awt/image/DataBufferShort.java delete mode 100644 libjava/java/awt/image/DataBufferUShort.java delete mode 100644 libjava/java/awt/image/DirectColorModel.java delete mode 100644 libjava/java/awt/image/FilteredImageSource.java delete mode 100644 libjava/java/awt/image/ImageConsumer.java delete mode 100644 libjava/java/awt/image/ImageFilter.java delete mode 100644 libjava/java/awt/image/ImageObserver.java delete mode 100644 libjava/java/awt/image/ImageProducer.java delete mode 100644 libjava/java/awt/image/ImagingOpException.java delete mode 100644 libjava/java/awt/image/IndexColorModel.java delete mode 100644 libjava/java/awt/image/Kernel.java delete mode 100644 libjava/java/awt/image/LookupOp.java delete mode 100644 libjava/java/awt/image/LookupTable.java delete mode 100644 libjava/java/awt/image/MemoryImageSource.java delete mode 100644 libjava/java/awt/image/MultiPixelPackedSampleModel.java delete mode 100644 libjava/java/awt/image/PackedColorModel.java delete mode 100644 libjava/java/awt/image/PixelGrabber.java delete mode 100644 libjava/java/awt/image/PixelInterleavedSampleModel.java delete mode 100644 libjava/java/awt/image/RGBImageFilter.java delete mode 100644 libjava/java/awt/image/Raster.java delete mode 100644 libjava/java/awt/image/RasterFormatException.java delete mode 100644 libjava/java/awt/image/RasterOp.java delete mode 100644 libjava/java/awt/image/RenderedImage.java delete mode 100644 libjava/java/awt/image/ReplicateScaleFilter.java delete mode 100644 libjava/java/awt/image/RescaleOp.java delete mode 100644 libjava/java/awt/image/SampleModel.java delete mode 100644 libjava/java/awt/image/ShortLookupTable.java delete mode 100644 libjava/java/awt/image/SinglePixelPackedSampleModel.java delete mode 100644 libjava/java/awt/image/TileObserver.java delete mode 100644 libjava/java/awt/image/VolatileImage.java delete mode 100644 libjava/java/awt/image/WritableRaster.java delete mode 100644 libjava/java/awt/image/WritableRenderedImage.java delete mode 100644 libjava/java/awt/image/renderable/ContextualRenderedImageFactory.java delete mode 100644 libjava/java/awt/image/renderable/ParameterBlock.java delete mode 100644 libjava/java/awt/image/renderable/RenderContext.java delete mode 100644 libjava/java/awt/image/renderable/RenderableImage.java delete mode 100644 libjava/java/awt/image/renderable/RenderableImageOp.java delete mode 100644 libjava/java/awt/image/renderable/RenderableImageProducer.java delete mode 100644 libjava/java/awt/image/renderable/RenderedImageFactory.java delete mode 100644 libjava/java/awt/peer/ButtonPeer.java delete mode 100644 libjava/java/awt/peer/CanvasPeer.java delete mode 100644 libjava/java/awt/peer/CheckboxMenuItemPeer.java delete mode 100644 libjava/java/awt/peer/CheckboxPeer.java delete mode 100644 libjava/java/awt/peer/ChoicePeer.java delete mode 100644 libjava/java/awt/peer/ComponentPeer.java delete mode 100644 libjava/java/awt/peer/ContainerPeer.java delete mode 100644 libjava/java/awt/peer/DialogPeer.java delete mode 100644 libjava/java/awt/peer/FileDialogPeer.java delete mode 100644 libjava/java/awt/peer/FontPeer.java delete mode 100644 libjava/java/awt/peer/FramePeer.java delete mode 100644 libjava/java/awt/peer/LabelPeer.java delete mode 100644 libjava/java/awt/peer/LightweightPeer.java delete mode 100644 libjava/java/awt/peer/ListPeer.java delete mode 100644 libjava/java/awt/peer/MenuBarPeer.java delete mode 100644 libjava/java/awt/peer/MenuComponentPeer.java delete mode 100644 libjava/java/awt/peer/MenuItemPeer.java delete mode 100644 libjava/java/awt/peer/MenuPeer.java delete mode 100644 libjava/java/awt/peer/PanelPeer.java delete mode 100644 libjava/java/awt/peer/PopupMenuPeer.java delete mode 100644 libjava/java/awt/peer/RobotPeer.java delete mode 100644 libjava/java/awt/peer/ScrollPanePeer.java delete mode 100644 libjava/java/awt/peer/ScrollbarPeer.java delete mode 100644 libjava/java/awt/peer/TextAreaPeer.java delete mode 100644 libjava/java/awt/peer/TextComponentPeer.java delete mode 100644 libjava/java/awt/peer/TextFieldPeer.java delete mode 100644 libjava/java/awt/peer/WindowPeer.java delete mode 100644 libjava/java/awt/print/Book.java delete mode 100644 libjava/java/awt/print/PageFormat.java delete mode 100644 libjava/java/awt/print/Pageable.java delete mode 100644 libjava/java/awt/print/Paper.java delete mode 100644 libjava/java/awt/print/Printable.java delete mode 100644 libjava/java/awt/print/PrinterAbortException.java delete mode 100644 libjava/java/awt/print/PrinterException.java delete mode 100644 libjava/java/awt/print/PrinterGraphics.java delete mode 100644 libjava/java/awt/print/PrinterIOException.java delete mode 100644 libjava/java/awt/print/PrinterJob.java delete mode 100644 libjava/java/beans/AppletInitializer.java delete mode 100644 libjava/java/beans/BeanDescriptor.java delete mode 100644 libjava/java/beans/BeanInfo.java delete mode 100644 libjava/java/beans/Beans.java delete mode 100644 libjava/java/beans/Customizer.java delete mode 100644 libjava/java/beans/DesignMode.java delete mode 100644 libjava/java/beans/EventHandler.java delete mode 100644 libjava/java/beans/EventSetDescriptor.java delete mode 100644 libjava/java/beans/ExceptionListener.java delete mode 100644 libjava/java/beans/Expression.java delete mode 100644 libjava/java/beans/FeatureDescriptor.java delete mode 100644 libjava/java/beans/IndexedPropertyDescriptor.java delete mode 100644 libjava/java/beans/IntrospectionException.java delete mode 100644 libjava/java/beans/Introspector.java delete mode 100644 libjava/java/beans/MethodDescriptor.java delete mode 100644 libjava/java/beans/ParameterDescriptor.java delete mode 100644 libjava/java/beans/PropertyChangeEvent.java delete mode 100644 libjava/java/beans/PropertyChangeListener.java delete mode 100644 libjava/java/beans/PropertyChangeListenerProxy.java delete mode 100644 libjava/java/beans/PropertyChangeSupport.java delete mode 100644 libjava/java/beans/PropertyDescriptor.java delete mode 100644 libjava/java/beans/PropertyEditor.java delete mode 100644 libjava/java/beans/PropertyEditorManager.java delete mode 100644 libjava/java/beans/PropertyEditorSupport.java delete mode 100644 libjava/java/beans/PropertyVetoException.java delete mode 100644 libjava/java/beans/SimpleBeanInfo.java delete mode 100644 libjava/java/beans/Statement.java delete mode 100644 libjava/java/beans/VetoableChangeListener.java delete mode 100644 libjava/java/beans/VetoableChangeListenerProxy.java delete mode 100644 libjava/java/beans/VetoableChangeSupport.java delete mode 100644 libjava/java/beans/Visibility.java delete mode 100644 libjava/java/beans/XMLDecoder.java delete mode 100644 libjava/java/beans/beancontext/BeanContext.java delete mode 100644 libjava/java/beans/beancontext/BeanContextChild.java delete mode 100644 libjava/java/beans/beancontext/BeanContextChildComponentProxy.java delete mode 100644 libjava/java/beans/beancontext/BeanContextChildSupport.java delete mode 100644 libjava/java/beans/beancontext/BeanContextContainerProxy.java delete mode 100644 libjava/java/beans/beancontext/BeanContextEvent.java delete mode 100644 libjava/java/beans/beancontext/BeanContextMembershipEvent.java delete mode 100644 libjava/java/beans/beancontext/BeanContextMembershipListener.java delete mode 100644 libjava/java/beans/beancontext/BeanContextProxy.java delete mode 100644 libjava/java/beans/beancontext/BeanContextServiceAvailableEvent.java delete mode 100644 libjava/java/beans/beancontext/BeanContextServiceProvider.java delete mode 100644 libjava/java/beans/beancontext/BeanContextServiceProviderBeanInfo.java delete mode 100644 libjava/java/beans/beancontext/BeanContextServiceRevokedEvent.java delete mode 100644 libjava/java/beans/beancontext/BeanContextServiceRevokedListener.java delete mode 100644 libjava/java/beans/beancontext/BeanContextServices.java delete mode 100644 libjava/java/beans/beancontext/BeanContextServicesListener.java delete mode 100644 libjava/java/beans/beancontext/BeanContextServicesSupport.java delete mode 100644 libjava/java/beans/beancontext/BeanContextSupport.java delete mode 100644 libjava/java/io/BufferedOutputStream.java delete mode 100644 libjava/java/io/BufferedReader.java delete mode 100644 libjava/java/io/BufferedWriter.java delete mode 100644 libjava/java/io/ByteArrayInputStream.java delete mode 100644 libjava/java/io/ByteArrayOutputStream.java delete mode 100644 libjava/java/io/CharArrayReader.java delete mode 100644 libjava/java/io/CharArrayWriter.java delete mode 100644 libjava/java/io/CharConversionException.java delete mode 100644 libjava/java/io/DataInput.java delete mode 100644 libjava/java/io/DataInputStream.java delete mode 100644 libjava/java/io/DataOutput.java delete mode 100644 libjava/java/io/DataOutputStream.java delete mode 100644 libjava/java/io/EOFException.java delete mode 100644 libjava/java/io/Externalizable.java delete mode 100644 libjava/java/io/FileDescriptor.java delete mode 100644 libjava/java/io/FileFilter.java delete mode 100644 libjava/java/io/FileNotFoundException.java delete mode 100644 libjava/java/io/FilePermission.java delete mode 100644 libjava/java/io/FileReader.java delete mode 100644 libjava/java/io/FileWriter.java delete mode 100644 libjava/java/io/FilenameFilter.java delete mode 100644 libjava/java/io/FilterInputStream.java delete mode 100644 libjava/java/io/FilterOutputStream.java delete mode 100644 libjava/java/io/FilterReader.java delete mode 100644 libjava/java/io/FilterWriter.java delete mode 100644 libjava/java/io/IOException.java delete mode 100644 libjava/java/io/InputStream.java delete mode 100644 libjava/java/io/InterruptedIOException.java delete mode 100644 libjava/java/io/InvalidClassException.java delete mode 100644 libjava/java/io/InvalidObjectException.java delete mode 100644 libjava/java/io/LineNumberInputStream.java delete mode 100644 libjava/java/io/LineNumberReader.java delete mode 100644 libjava/java/io/NotActiveException.java delete mode 100644 libjava/java/io/NotSerializableException.java delete mode 100644 libjava/java/io/ObjectInput.java delete mode 100644 libjava/java/io/ObjectInputValidation.java delete mode 100644 libjava/java/io/ObjectOutput.java delete mode 100644 libjava/java/io/ObjectOutputStream.java delete mode 100644 libjava/java/io/ObjectStreamConstants.java delete mode 100644 libjava/java/io/ObjectStreamException.java delete mode 100644 libjava/java/io/ObjectStreamField.java delete mode 100644 libjava/java/io/OptionalDataException.java delete mode 100644 libjava/java/io/OutputStream.java delete mode 100644 libjava/java/io/PipedInputStream.java delete mode 100644 libjava/java/io/PipedOutputStream.java delete mode 100644 libjava/java/io/PipedReader.java delete mode 100644 libjava/java/io/PipedWriter.java delete mode 100644 libjava/java/io/PrintWriter.java delete mode 100644 libjava/java/io/PushbackInputStream.java delete mode 100644 libjava/java/io/PushbackReader.java delete mode 100644 libjava/java/io/Reader.java delete mode 100644 libjava/java/io/SequenceInputStream.java delete mode 100644 libjava/java/io/Serializable.java delete mode 100644 libjava/java/io/SerializablePermission.java delete mode 100644 libjava/java/io/StreamCorruptedException.java delete mode 100644 libjava/java/io/StreamTokenizer.java delete mode 100644 libjava/java/io/StringBufferInputStream.java delete mode 100644 libjava/java/io/StringReader.java delete mode 100644 libjava/java/io/StringWriter.java delete mode 100644 libjava/java/io/SyncFailedException.java delete mode 100644 libjava/java/io/UTFDataFormatException.java delete mode 100644 libjava/java/io/UnsupportedEncodingException.java delete mode 100644 libjava/java/io/WriteAbortedException.java delete mode 100644 libjava/java/io/Writer.java delete mode 100644 libjava/java/lang/AbstractMethodError.java delete mode 100644 libjava/java/lang/ArithmeticException.java delete mode 100644 libjava/java/lang/ArrayIndexOutOfBoundsException.java delete mode 100644 libjava/java/lang/ArrayStoreException.java delete mode 100644 libjava/java/lang/AssertionError.java delete mode 100644 libjava/java/lang/Boolean.java delete mode 100644 libjava/java/lang/Byte.java delete mode 100644 libjava/java/lang/CharSequence.java delete mode 100644 libjava/java/lang/ClassCastException.java delete mode 100644 libjava/java/lang/ClassCircularityError.java delete mode 100644 libjava/java/lang/ClassFormatError.java delete mode 100644 libjava/java/lang/ClassNotFoundException.java delete mode 100644 libjava/java/lang/CloneNotSupportedException.java delete mode 100644 libjava/java/lang/Cloneable.java delete mode 100644 libjava/java/lang/Comparable.java delete mode 100644 libjava/java/lang/Compiler.java delete mode 100644 libjava/java/lang/Error.java delete mode 100644 libjava/java/lang/Exception.java delete mode 100644 libjava/java/lang/ExceptionInInitializerError.java delete mode 100644 libjava/java/lang/IllegalAccessError.java delete mode 100644 libjava/java/lang/IllegalAccessException.java delete mode 100644 libjava/java/lang/IllegalArgumentException.java delete mode 100644 libjava/java/lang/IllegalMonitorStateException.java delete mode 100644 libjava/java/lang/IllegalStateException.java delete mode 100644 libjava/java/lang/IllegalThreadStateException.java delete mode 100644 libjava/java/lang/IncompatibleClassChangeError.java delete mode 100644 libjava/java/lang/IndexOutOfBoundsException.java delete mode 100644 libjava/java/lang/InstantiationError.java delete mode 100644 libjava/java/lang/InstantiationException.java delete mode 100644 libjava/java/lang/Integer.java delete mode 100644 libjava/java/lang/InternalError.java delete mode 100644 libjava/java/lang/InterruptedException.java delete mode 100644 libjava/java/lang/LinkageError.java delete mode 100644 libjava/java/lang/Long.java delete mode 100644 libjava/java/lang/Math.java delete mode 100644 libjava/java/lang/NegativeArraySizeException.java delete mode 100644 libjava/java/lang/NoClassDefFoundError.java delete mode 100644 libjava/java/lang/NoSuchFieldError.java delete mode 100644 libjava/java/lang/NoSuchFieldException.java delete mode 100644 libjava/java/lang/NoSuchMethodError.java delete mode 100644 libjava/java/lang/NoSuchMethodException.java delete mode 100644 libjava/java/lang/NullPointerException.java delete mode 100644 libjava/java/lang/Number.java delete mode 100644 libjava/java/lang/NumberFormatException.java delete mode 100644 libjava/java/lang/OutOfMemoryError.java delete mode 100644 libjava/java/lang/Process.java delete mode 100644 libjava/java/lang/Runnable.java delete mode 100644 libjava/java/lang/RuntimeException.java delete mode 100644 libjava/java/lang/RuntimePermission.java delete mode 100644 libjava/java/lang/SecurityException.java delete mode 100644 libjava/java/lang/Short.java delete mode 100644 libjava/java/lang/StackOverflowError.java delete mode 100644 libjava/java/lang/StackTraceElement.java delete mode 100644 libjava/java/lang/StrictMath.java delete mode 100644 libjava/java/lang/StringIndexOutOfBoundsException.java delete mode 100644 libjava/java/lang/ThreadDeath.java delete mode 100644 libjava/java/lang/ThreadGroup.java delete mode 100644 libjava/java/lang/Throwable.java delete mode 100644 libjava/java/lang/UnknownError.java delete mode 100644 libjava/java/lang/UnsatisfiedLinkError.java delete mode 100644 libjava/java/lang/UnsupportedClassVersionError.java delete mode 100644 libjava/java/lang/UnsupportedOperationException.java delete mode 100644 libjava/java/lang/VerifyError.java delete mode 100644 libjava/java/lang/VirtualMachineError.java delete mode 100644 libjava/java/lang/Void.java delete mode 100644 libjava/java/lang/dtoa.c delete mode 100644 libjava/java/lang/e_acos.c delete mode 100644 libjava/java/lang/e_asin.c delete mode 100644 libjava/java/lang/e_atan2.c delete mode 100644 libjava/java/lang/e_exp.c delete mode 100644 libjava/java/lang/e_fmod.c delete mode 100644 libjava/java/lang/e_log.c delete mode 100644 libjava/java/lang/e_pow.c delete mode 100644 libjava/java/lang/e_rem_pio2.c delete mode 100644 libjava/java/lang/e_remainder.c delete mode 100644 libjava/java/lang/e_scalb.c delete mode 100644 libjava/java/lang/e_sqrt.c delete mode 100644 libjava/java/lang/fdlibm.h delete mode 100644 libjava/java/lang/ieeefp.h delete mode 100644 libjava/java/lang/k_cos.c delete mode 100644 libjava/java/lang/k_rem_pio2.c delete mode 100644 libjava/java/lang/k_sin.c delete mode 100644 libjava/java/lang/k_tan.c delete mode 100644 libjava/java/lang/mprec.c delete mode 100644 libjava/java/lang/mprec.h delete mode 100644 libjava/java/lang/ref/PhantomReference.java delete mode 100644 libjava/java/lang/ref/ReferenceQueue.java delete mode 100644 libjava/java/lang/ref/SoftReference.java delete mode 100644 libjava/java/lang/ref/WeakReference.java delete mode 100644 libjava/java/lang/reflect/AccessibleObject.java delete mode 100644 libjava/java/lang/reflect/InvocationHandler.java delete mode 100644 libjava/java/lang/reflect/InvocationTargetException.java delete mode 100644 libjava/java/lang/reflect/Member.java delete mode 100644 libjava/java/lang/reflect/Proxy.java delete mode 100644 libjava/java/lang/reflect/ReflectPermission.java delete mode 100644 libjava/java/lang/reflect/UndeclaredThrowableException.java delete mode 100644 libjava/java/lang/s_atan.c delete mode 100644 libjava/java/lang/s_ceil.c delete mode 100644 libjava/java/lang/s_copysign.c delete mode 100644 libjava/java/lang/s_cos.c delete mode 100644 libjava/java/lang/s_fabs.c delete mode 100644 libjava/java/lang/s_floor.c delete mode 100644 libjava/java/lang/s_rint.c delete mode 100644 libjava/java/lang/s_scalbn.c delete mode 100644 libjava/java/lang/s_sin.c delete mode 100644 libjava/java/lang/s_tan.c delete mode 100644 libjava/java/lang/sf_fabs.c delete mode 100644 libjava/java/lang/sf_rint.c delete mode 100644 libjava/java/lang/strtod.c delete mode 100644 libjava/java/lang/w_acos.c delete mode 100644 libjava/java/lang/w_asin.c delete mode 100644 libjava/java/lang/w_atan2.c delete mode 100644 libjava/java/lang/w_exp.c delete mode 100644 libjava/java/lang/w_fmod.c delete mode 100644 libjava/java/lang/w_log.c delete mode 100644 libjava/java/lang/w_pow.c delete mode 100644 libjava/java/lang/w_remainder.c delete mode 100644 libjava/java/lang/w_sqrt.c delete mode 100644 libjava/java/math/BigDecimal.java delete mode 100644 libjava/java/math/BigInteger.java delete mode 100644 libjava/java/net/Authenticator.java delete mode 100644 libjava/java/net/BindException.java delete mode 100644 libjava/java/net/ConnectException.java delete mode 100644 libjava/java/net/ContentHandler.java delete mode 100644 libjava/java/net/ContentHandlerFactory.java delete mode 100644 libjava/java/net/DatagramPacket.java delete mode 100644 libjava/java/net/DatagramSocket.java delete mode 100644 libjava/java/net/DatagramSocketImpl.java delete mode 100644 libjava/java/net/DatagramSocketImplFactory.java delete mode 100644 libjava/java/net/FileNameMap.java delete mode 100644 libjava/java/net/HttpURLConnection.java delete mode 100644 libjava/java/net/Inet4Address.java delete mode 100644 libjava/java/net/Inet6Address.java delete mode 100644 libjava/java/net/InetSocketAddress.java delete mode 100644 libjava/java/net/MalformedURLException.java delete mode 100644 libjava/java/net/MulticastSocket.java delete mode 100644 libjava/java/net/NetPermission.java delete mode 100644 libjava/java/net/NetworkInterface.java delete mode 100644 libjava/java/net/NoRouteToHostException.java delete mode 100644 libjava/java/net/PasswordAuthentication.java delete mode 100644 libjava/java/net/PortUnreachableException.java delete mode 100644 libjava/java/net/ProtocolException.java delete mode 100644 libjava/java/net/Socket.java delete mode 100644 libjava/java/net/SocketAddress.java delete mode 100644 libjava/java/net/SocketException.java delete mode 100644 libjava/java/net/SocketImpl.java delete mode 100644 libjava/java/net/SocketImplFactory.java delete mode 100644 libjava/java/net/SocketOptions.java delete mode 100644 libjava/java/net/SocketPermission.java delete mode 100644 libjava/java/net/SocketTimeoutException.java delete mode 100644 libjava/java/net/URI.java delete mode 100644 libjava/java/net/URISyntaxException.java delete mode 100644 libjava/java/net/URLDecoder.java delete mode 100644 libjava/java/net/URLEncoder.java delete mode 100644 libjava/java/net/URLStreamHandler.java delete mode 100644 libjava/java/net/URLStreamHandlerFactory.java delete mode 100644 libjava/java/net/UnknownHostException.java delete mode 100644 libjava/java/net/UnknownServiceException.java delete mode 100644 libjava/java/nio/BufferOverflowException.java delete mode 100644 libjava/java/nio/BufferUnderflowException.java delete mode 100644 libjava/java/nio/ByteBuffer.java delete mode 100644 libjava/java/nio/ByteBufferHelper.java delete mode 100644 libjava/java/nio/ByteBufferImpl.java delete mode 100644 libjava/java/nio/ByteOrder.java delete mode 100644 libjava/java/nio/CharBuffer.java delete mode 100644 libjava/java/nio/CharBufferImpl.java delete mode 100644 libjava/java/nio/CharViewBufferImpl.java delete mode 100644 libjava/java/nio/DoubleBuffer.java delete mode 100644 libjava/java/nio/DoubleBufferImpl.java delete mode 100644 libjava/java/nio/DoubleViewBufferImpl.java delete mode 100644 libjava/java/nio/FloatBuffer.java delete mode 100644 libjava/java/nio/FloatBufferImpl.java delete mode 100644 libjava/java/nio/FloatViewBufferImpl.java delete mode 100644 libjava/java/nio/IntBuffer.java delete mode 100644 libjava/java/nio/IntBufferImpl.java delete mode 100644 libjava/java/nio/IntViewBufferImpl.java delete mode 100644 libjava/java/nio/InvalidMarkException.java delete mode 100644 libjava/java/nio/LongBuffer.java delete mode 100644 libjava/java/nio/LongBufferImpl.java delete mode 100644 libjava/java/nio/LongViewBufferImpl.java delete mode 100644 libjava/java/nio/ReadOnlyBufferException.java delete mode 100644 libjava/java/nio/ShortBuffer.java delete mode 100644 libjava/java/nio/ShortBufferImpl.java delete mode 100644 libjava/java/nio/ShortViewBufferImpl.java delete mode 100644 libjava/java/nio/channels/AlreadyConnectedException.java delete mode 100644 libjava/java/nio/channels/AsynchronousCloseException.java delete mode 100644 libjava/java/nio/channels/ByteChannel.java delete mode 100644 libjava/java/nio/channels/CancelledKeyException.java delete mode 100644 libjava/java/nio/channels/Channel.java delete mode 100644 libjava/java/nio/channels/ClosedByInterruptException.java delete mode 100644 libjava/java/nio/channels/ClosedChannelException.java delete mode 100644 libjava/java/nio/channels/ClosedSelectorException.java delete mode 100644 libjava/java/nio/channels/ConnectionPendingException.java delete mode 100644 libjava/java/nio/channels/DatagramChannel.java delete mode 100644 libjava/java/nio/channels/FileChannel.java delete mode 100644 libjava/java/nio/channels/FileLock.java delete mode 100644 libjava/java/nio/channels/FileLockInterruptionException.java delete mode 100644 libjava/java/nio/channels/GatheringByteChannel.java delete mode 100644 libjava/java/nio/channels/IllegalBlockingModeException.java delete mode 100644 libjava/java/nio/channels/IllegalSelectorException.java delete mode 100644 libjava/java/nio/channels/InterruptibleChannel.java delete mode 100644 libjava/java/nio/channels/NoConnectionPendingException.java delete mode 100644 libjava/java/nio/channels/NonReadableChannelException.java delete mode 100644 libjava/java/nio/channels/NonWritableChannelException.java delete mode 100644 libjava/java/nio/channels/NotYetBoundException.java delete mode 100644 libjava/java/nio/channels/NotYetConnectedException.java delete mode 100644 libjava/java/nio/channels/OverlappingFileLockException.java delete mode 100644 libjava/java/nio/channels/Pipe.java delete mode 100644 libjava/java/nio/channels/ReadableByteChannel.java delete mode 100644 libjava/java/nio/channels/ScatteringByteChannel.java delete mode 100644 libjava/java/nio/channels/SelectableChannel.java delete mode 100644 libjava/java/nio/channels/SelectionKey.java delete mode 100644 libjava/java/nio/channels/Selector.java delete mode 100644 libjava/java/nio/channels/ServerSocketChannel.java delete mode 100644 libjava/java/nio/channels/SocketChannel.java delete mode 100644 libjava/java/nio/channels/UnresolvedAddressException.java delete mode 100644 libjava/java/nio/channels/UnsupportedAddressTypeException.java delete mode 100644 libjava/java/nio/channels/WritableByteChannel.java delete mode 100644 libjava/java/nio/channels/spi/AbstractInterruptibleChannel.java delete mode 100644 libjava/java/nio/channels/spi/AbstractSelectableChannel.java delete mode 100644 libjava/java/nio/channels/spi/AbstractSelectionKey.java delete mode 100644 libjava/java/nio/channels/spi/AbstractSelector.java delete mode 100644 libjava/java/nio/channels/spi/SelectorProvider.java delete mode 100644 libjava/java/nio/charset/CharacterCodingException.java delete mode 100644 libjava/java/nio/charset/CharsetDecoder.java delete mode 100644 libjava/java/nio/charset/CharsetEncoder.java delete mode 100644 libjava/java/nio/charset/CoderMalfunctionError.java delete mode 100644 libjava/java/nio/charset/CoderResult.java delete mode 100644 libjava/java/nio/charset/CodingErrorAction.java delete mode 100644 libjava/java/nio/charset/IllegalCharsetNameException.java delete mode 100644 libjava/java/nio/charset/MalformedInputException.java delete mode 100644 libjava/java/nio/charset/UnmappableCharacterException.java delete mode 100644 libjava/java/nio/charset/UnsupportedCharsetException.java delete mode 100644 libjava/java/nio/charset/spi/CharsetProvider.java delete mode 100644 libjava/java/rmi/AccessException.java delete mode 100644 libjava/java/rmi/AlreadyBoundException.java delete mode 100644 libjava/java/rmi/ConnectException.java delete mode 100644 libjava/java/rmi/ConnectIOException.java delete mode 100644 libjava/java/rmi/MarshalException.java delete mode 100644 libjava/java/rmi/MarshalledObject.java delete mode 100644 libjava/java/rmi/Naming.java delete mode 100644 libjava/java/rmi/NoSuchObjectException.java delete mode 100644 libjava/java/rmi/NotBoundException.java delete mode 100644 libjava/java/rmi/RMISecurityException.java delete mode 100644 libjava/java/rmi/RMISecurityManager.java delete mode 100644 libjava/java/rmi/Remote.java delete mode 100644 libjava/java/rmi/RemoteException.java delete mode 100644 libjava/java/rmi/ServerError.java delete mode 100644 libjava/java/rmi/ServerException.java delete mode 100644 libjava/java/rmi/ServerRuntimeException.java delete mode 100644 libjava/java/rmi/StubNotFoundException.java delete mode 100644 libjava/java/rmi/UnexpectedException.java delete mode 100644 libjava/java/rmi/UnknownHostException.java delete mode 100644 libjava/java/rmi/UnmarshalException.java delete mode 100644 libjava/java/rmi/activation/Activatable.java delete mode 100644 libjava/java/rmi/activation/ActivateFailedException.java delete mode 100644 libjava/java/rmi/activation/ActivationDesc.java delete mode 100644 libjava/java/rmi/activation/ActivationException.java delete mode 100644 libjava/java/rmi/activation/ActivationGroup.java delete mode 100644 libjava/java/rmi/activation/ActivationGroupDesc.java delete mode 100644 libjava/java/rmi/activation/ActivationGroupID.java delete mode 100644 libjava/java/rmi/activation/ActivationID.java delete mode 100644 libjava/java/rmi/activation/ActivationInstantiator.java delete mode 100644 libjava/java/rmi/activation/ActivationMonitor.java delete mode 100644 libjava/java/rmi/activation/ActivationSystem.java delete mode 100644 libjava/java/rmi/activation/Activator.java delete mode 100644 libjava/java/rmi/activation/UnknownGroupException.java delete mode 100644 libjava/java/rmi/activation/UnknownObjectException.java delete mode 100644 libjava/java/rmi/dgc/DGC.java delete mode 100644 libjava/java/rmi/dgc/Lease.java delete mode 100644 libjava/java/rmi/dgc/VMID.java delete mode 100644 libjava/java/rmi/registry/LocateRegistry.java delete mode 100644 libjava/java/rmi/registry/Registry.java delete mode 100644 libjava/java/rmi/registry/RegistryHandler.java delete mode 100644 libjava/java/rmi/server/ExportException.java delete mode 100644 libjava/java/rmi/server/LoaderHandler.java delete mode 100644 libjava/java/rmi/server/LogStream.java delete mode 100644 libjava/java/rmi/server/ObjID.java delete mode 100644 libjava/java/rmi/server/Operation.java delete mode 100644 libjava/java/rmi/server/RMIClassLoader.java delete mode 100644 libjava/java/rmi/server/RMIClassLoaderSpi.java delete mode 100644 libjava/java/rmi/server/RMIClientSocketFactory.java delete mode 100644 libjava/java/rmi/server/RMIFailureHandler.java delete mode 100644 libjava/java/rmi/server/RMIServerSocketFactory.java delete mode 100644 libjava/java/rmi/server/RMISocketFactory.java delete mode 100644 libjava/java/rmi/server/RemoteCall.java delete mode 100644 libjava/java/rmi/server/RemoteObject.java delete mode 100644 libjava/java/rmi/server/RemoteRef.java delete mode 100644 libjava/java/rmi/server/RemoteServer.java delete mode 100644 libjava/java/rmi/server/RemoteStub.java delete mode 100644 libjava/java/rmi/server/ServerCloneException.java delete mode 100644 libjava/java/rmi/server/ServerNotActiveException.java delete mode 100644 libjava/java/rmi/server/ServerRef.java delete mode 100644 libjava/java/rmi/server/Skeleton.java delete mode 100644 libjava/java/rmi/server/SkeletonMismatchException.java delete mode 100644 libjava/java/rmi/server/SkeletonNotFoundException.java delete mode 100644 libjava/java/rmi/server/SocketSecurityException.java delete mode 100644 libjava/java/rmi/server/UID.java delete mode 100644 libjava/java/rmi/server/UnicastRemoteObject.java delete mode 100644 libjava/java/rmi/server/Unreferenced.java delete mode 100644 libjava/java/security/AccessControlException.java delete mode 100644 libjava/java/security/AlgorithmParameterGenerator.java delete mode 100644 libjava/java/security/AlgorithmParameterGeneratorSpi.java delete mode 100644 libjava/java/security/AlgorithmParameters.java delete mode 100644 libjava/java/security/AlgorithmParametersSpi.java delete mode 100644 libjava/java/security/AllPermission.java delete mode 100644 libjava/java/security/BasicPermission.java delete mode 100644 libjava/java/security/Certificate.java delete mode 100644 libjava/java/security/CodeSource.java delete mode 100644 libjava/java/security/DigestException.java delete mode 100644 libjava/java/security/DigestInputStream.java delete mode 100644 libjava/java/security/DigestOutputStream.java delete mode 100644 libjava/java/security/DomainCombiner.java delete mode 100644 libjava/java/security/DummyKeyPairGenerator.java delete mode 100644 libjava/java/security/DummyMessageDigest.java delete mode 100644 libjava/java/security/DummySignature.java delete mode 100644 libjava/java/security/GeneralSecurityException.java delete mode 100644 libjava/java/security/Guard.java delete mode 100644 libjava/java/security/GuardedObject.java delete mode 100644 libjava/java/security/Identity.java delete mode 100644 libjava/java/security/IdentityScope.java delete mode 100644 libjava/java/security/InvalidAlgorithmParameterException.java delete mode 100644 libjava/java/security/InvalidKeyException.java delete mode 100644 libjava/java/security/InvalidParameterException.java delete mode 100644 libjava/java/security/Key.java delete mode 100644 libjava/java/security/KeyException.java delete mode 100644 libjava/java/security/KeyFactory.java delete mode 100644 libjava/java/security/KeyFactorySpi.java delete mode 100644 libjava/java/security/KeyManagementException.java delete mode 100644 libjava/java/security/KeyPair.java delete mode 100644 libjava/java/security/KeyPairGenerator.java delete mode 100644 libjava/java/security/KeyPairGeneratorSpi.java delete mode 100644 libjava/java/security/KeyStore.java delete mode 100644 libjava/java/security/KeyStoreException.java delete mode 100644 libjava/java/security/KeyStoreSpi.java delete mode 100644 libjava/java/security/MessageDigest.java delete mode 100644 libjava/java/security/MessageDigestSpi.java delete mode 100644 libjava/java/security/NoSuchAlgorithmException.java delete mode 100644 libjava/java/security/NoSuchProviderException.java delete mode 100644 libjava/java/security/Permission.java delete mode 100644 libjava/java/security/PermissionCollection.java delete mode 100644 libjava/java/security/Permissions.java delete mode 100644 libjava/java/security/Policy.java delete mode 100644 libjava/java/security/Principal.java delete mode 100644 libjava/java/security/PrivateKey.java delete mode 100644 libjava/java/security/PrivilegedAction.java delete mode 100644 libjava/java/security/PrivilegedActionException.java delete mode 100644 libjava/java/security/PrivilegedExceptionAction.java delete mode 100644 libjava/java/security/ProtectionDomain.java delete mode 100644 libjava/java/security/Provider.java delete mode 100644 libjava/java/security/ProviderException.java delete mode 100644 libjava/java/security/PublicKey.java delete mode 100644 libjava/java/security/SecureClassLoader.java delete mode 100644 libjava/java/security/SecureRandom.java delete mode 100644 libjava/java/security/SecureRandomSpi.java delete mode 100644 libjava/java/security/Security.java delete mode 100644 libjava/java/security/SecurityPermission.java delete mode 100644 libjava/java/security/Signature.java delete mode 100644 libjava/java/security/SignatureException.java delete mode 100644 libjava/java/security/SignatureSpi.java delete mode 100644 libjava/java/security/SignedObject.java delete mode 100644 libjava/java/security/Signer.java delete mode 100644 libjava/java/security/UnrecoverableKeyException.java delete mode 100644 libjava/java/security/UnresolvedPermission.java delete mode 100644 libjava/java/security/acl/Acl.java delete mode 100644 libjava/java/security/acl/AclEntry.java delete mode 100644 libjava/java/security/acl/AclNotFoundException.java delete mode 100644 libjava/java/security/acl/Group.java delete mode 100644 libjava/java/security/acl/LastOwnerException.java delete mode 100644 libjava/java/security/acl/NotOwnerException.java delete mode 100644 libjava/java/security/acl/Owner.java delete mode 100644 libjava/java/security/acl/Permission.java delete mode 100644 libjava/java/security/cert/CRL.java delete mode 100644 libjava/java/security/cert/CRLException.java delete mode 100644 libjava/java/security/cert/CRLSelector.java delete mode 100644 libjava/java/security/cert/CertPath.java delete mode 100644 libjava/java/security/cert/CertPathBuilder.java delete mode 100644 libjava/java/security/cert/CertPathBuilderException.java delete mode 100644 libjava/java/security/cert/CertPathBuilderResult.java delete mode 100644 libjava/java/security/cert/CertPathBuilderSpi.java delete mode 100644 libjava/java/security/cert/CertPathParameters.java delete mode 100644 libjava/java/security/cert/CertPathValidator.java delete mode 100644 libjava/java/security/cert/CertPathValidatorException.java delete mode 100644 libjava/java/security/cert/CertPathValidatorResult.java delete mode 100644 libjava/java/security/cert/CertPathValidatorSpi.java delete mode 100644 libjava/java/security/cert/CertSelector.java delete mode 100644 libjava/java/security/cert/CertStore.java delete mode 100644 libjava/java/security/cert/CertStoreException.java delete mode 100644 libjava/java/security/cert/CertStoreParameters.java delete mode 100644 libjava/java/security/cert/CertStoreSpi.java delete mode 100644 libjava/java/security/cert/Certificate.java delete mode 100644 libjava/java/security/cert/CertificateEncodingException.java delete mode 100644 libjava/java/security/cert/CertificateException.java delete mode 100644 libjava/java/security/cert/CertificateExpiredException.java delete mode 100644 libjava/java/security/cert/CertificateFactory.java delete mode 100644 libjava/java/security/cert/CertificateFactorySpi.java delete mode 100644 libjava/java/security/cert/CertificateNotYetValidException.java delete mode 100644 libjava/java/security/cert/CertificateParsingException.java delete mode 100644 libjava/java/security/cert/CollectionCertStoreParameters.java delete mode 100644 libjava/java/security/cert/LDAPCertStoreParameters.java delete mode 100644 libjava/java/security/cert/PKIXBuilderParameters.java delete mode 100644 libjava/java/security/cert/PKIXCertPathBuilderResult.java delete mode 100644 libjava/java/security/cert/PKIXCertPathChecker.java delete mode 100644 libjava/java/security/cert/PKIXCertPathValidatorResult.java delete mode 100644 libjava/java/security/cert/PKIXParameters.java delete mode 100644 libjava/java/security/cert/PolicyNode.java delete mode 100644 libjava/java/security/cert/PolicyQualifierInfo.java delete mode 100644 libjava/java/security/cert/TrustAnchor.java delete mode 100644 libjava/java/security/cert/X509CRL.java delete mode 100644 libjava/java/security/cert/X509CRLEntry.java delete mode 100644 libjava/java/security/cert/X509CRLSelector.java delete mode 100644 libjava/java/security/cert/X509CertSelector.java delete mode 100644 libjava/java/security/cert/X509Certificate.java delete mode 100644 libjava/java/security/cert/X509Extension.java delete mode 100644 libjava/java/security/interfaces/DSAKey.java delete mode 100644 libjava/java/security/interfaces/DSAKeyPairGenerator.java delete mode 100644 libjava/java/security/interfaces/DSAParams.java delete mode 100644 libjava/java/security/interfaces/DSAPrivateKey.java delete mode 100644 libjava/java/security/interfaces/DSAPublicKey.java delete mode 100644 libjava/java/security/interfaces/RSAKey.java delete mode 100644 libjava/java/security/interfaces/RSAMultiPrimePrivateCrtKey.java delete mode 100644 libjava/java/security/interfaces/RSAPrivateCrtKey.java delete mode 100644 libjava/java/security/interfaces/RSAPrivateKey.java delete mode 100644 libjava/java/security/interfaces/RSAPublicKey.java delete mode 100644 libjava/java/security/spec/AlgorithmParameterSpec.java delete mode 100644 libjava/java/security/spec/DSAParameterSpec.java delete mode 100644 libjava/java/security/spec/DSAPrivateKeySpec.java delete mode 100644 libjava/java/security/spec/DSAPublicKeySpec.java delete mode 100644 libjava/java/security/spec/EncodedKeySpec.java delete mode 100644 libjava/java/security/spec/InvalidKeySpecException.java delete mode 100644 libjava/java/security/spec/InvalidParameterSpecException.java delete mode 100644 libjava/java/security/spec/KeySpec.java delete mode 100644 libjava/java/security/spec/PKCS8EncodedKeySpec.java delete mode 100644 libjava/java/security/spec/PSSParameterSpec.java delete mode 100644 libjava/java/security/spec/RSAKeyGenParameterSpec.java delete mode 100644 libjava/java/security/spec/RSAMultiPrimePrivateCrtKeySpec.java delete mode 100644 libjava/java/security/spec/RSAOtherPrimeInfo.java delete mode 100644 libjava/java/security/spec/RSAPrivateCrtKeySpec.java delete mode 100644 libjava/java/security/spec/RSAPrivateKeySpec.java delete mode 100644 libjava/java/security/spec/RSAPublicKeySpec.java delete mode 100644 libjava/java/security/spec/X509EncodedKeySpec.java delete mode 100644 libjava/java/sql/Array.java delete mode 100644 libjava/java/sql/BatchUpdateException.java delete mode 100644 libjava/java/sql/Blob.java delete mode 100644 libjava/java/sql/CallableStatement.java delete mode 100644 libjava/java/sql/Clob.java delete mode 100644 libjava/java/sql/Connection.java delete mode 100644 libjava/java/sql/DataTruncation.java delete mode 100644 libjava/java/sql/DatabaseMetaData.java delete mode 100644 libjava/java/sql/Date.java delete mode 100644 libjava/java/sql/Driver.java delete mode 100644 libjava/java/sql/DriverManager.java delete mode 100644 libjava/java/sql/DriverPropertyInfo.java delete mode 100644 libjava/java/sql/ParameterMetaData.java delete mode 100644 libjava/java/sql/PreparedStatement.java delete mode 100644 libjava/java/sql/Ref.java delete mode 100644 libjava/java/sql/ResultSet.java delete mode 100644 libjava/java/sql/ResultSetMetaData.java delete mode 100644 libjava/java/sql/SQLData.java delete mode 100644 libjava/java/sql/SQLException.java delete mode 100644 libjava/java/sql/SQLInput.java delete mode 100644 libjava/java/sql/SQLOutput.java delete mode 100644 libjava/java/sql/SQLPermission.java delete mode 100644 libjava/java/sql/SQLWarning.java delete mode 100644 libjava/java/sql/Savepoint.java delete mode 100644 libjava/java/sql/Statement.java delete mode 100644 libjava/java/sql/Struct.java delete mode 100644 libjava/java/sql/Time.java delete mode 100644 libjava/java/sql/Timestamp.java delete mode 100644 libjava/java/sql/Types.java delete mode 100644 libjava/java/text/Annotation.java delete mode 100644 libjava/java/text/AttributedCharacterIterator.java delete mode 100644 libjava/java/text/AttributedString.java delete mode 100644 libjava/java/text/AttributedStringIterator.java delete mode 100644 libjava/java/text/BreakIterator.java delete mode 100644 libjava/java/text/CharacterIterator.java delete mode 100644 libjava/java/text/ChoiceFormat.java delete mode 100644 libjava/java/text/CollationElementIterator.java delete mode 100644 libjava/java/text/CollationKey.java delete mode 100644 libjava/java/text/DecimalFormat.java delete mode 100644 libjava/java/text/FieldPosition.java delete mode 100644 libjava/java/text/Format.java delete mode 100644 libjava/java/text/MessageFormat.java delete mode 100644 libjava/java/text/NumberFormat.java delete mode 100644 libjava/java/text/ParseException.java delete mode 100644 libjava/java/text/ParsePosition.java delete mode 100644 libjava/java/text/RuleBasedCollator.java delete mode 100644 libjava/java/text/StringCharacterIterator.java delete mode 100644 libjava/java/util/AbstractCollection.java delete mode 100644 libjava/java/util/AbstractList.java delete mode 100644 libjava/java/util/AbstractMap.java delete mode 100644 libjava/java/util/AbstractSequentialList.java delete mode 100644 libjava/java/util/AbstractSet.java delete mode 100644 libjava/java/util/ArrayList.java delete mode 100644 libjava/java/util/Arrays.java delete mode 100644 libjava/java/util/BitSet.java delete mode 100644 libjava/java/util/Collection.java delete mode 100644 libjava/java/util/Collections.java delete mode 100644 libjava/java/util/Comparator.java delete mode 100644 libjava/java/util/ConcurrentModificationException.java delete mode 100644 libjava/java/util/Dictionary.java delete mode 100644 libjava/java/util/EmptyStackException.java delete mode 100644 libjava/java/util/Enumeration.java delete mode 100644 libjava/java/util/EventListener.java delete mode 100644 libjava/java/util/EventListenerProxy.java delete mode 100644 libjava/java/util/EventObject.java delete mode 100644 libjava/java/util/HashMap.java delete mode 100644 libjava/java/util/HashSet.java delete mode 100644 libjava/java/util/Hashtable.java delete mode 100644 libjava/java/util/IdentityHashMap.java delete mode 100644 libjava/java/util/Iterator.java delete mode 100644 libjava/java/util/LinkedHashMap.java delete mode 100644 libjava/java/util/LinkedHashSet.java delete mode 100644 libjava/java/util/LinkedList.java delete mode 100644 libjava/java/util/List.java delete mode 100644 libjava/java/util/ListIterator.java delete mode 100644 libjava/java/util/ListResourceBundle.java delete mode 100644 libjava/java/util/Map.java delete mode 100644 libjava/java/util/MissingResourceException.java delete mode 100644 libjava/java/util/NoSuchElementException.java delete mode 100644 libjava/java/util/Observable.java delete mode 100644 libjava/java/util/Observer.java delete mode 100644 libjava/java/util/Properties.java delete mode 100644 libjava/java/util/PropertyPermission.java delete mode 100644 libjava/java/util/PropertyPermissionCollection.java delete mode 100644 libjava/java/util/PropertyResourceBundle.java delete mode 100644 libjava/java/util/Random.java delete mode 100644 libjava/java/util/RandomAccess.java delete mode 100644 libjava/java/util/Set.java delete mode 100644 libjava/java/util/SortedMap.java delete mode 100644 libjava/java/util/SortedSet.java delete mode 100644 libjava/java/util/Stack.java delete mode 100644 libjava/java/util/StringTokenizer.java delete mode 100644 libjava/java/util/TimeZone.java delete mode 100644 libjava/java/util/Timer.java delete mode 100644 libjava/java/util/TimerTask.java delete mode 100644 libjava/java/util/TooManyListenersException.java delete mode 100644 libjava/java/util/TreeMap.java delete mode 100644 libjava/java/util/TreeSet.java delete mode 100644 libjava/java/util/Vector.java delete mode 100644 libjava/java/util/WeakHashMap.java delete mode 100644 libjava/java/util/jar/Attributes.java delete mode 100644 libjava/java/util/jar/JarEntry.java delete mode 100644 libjava/java/util/jar/JarException.java delete mode 100644 libjava/java/util/jar/JarFile.java delete mode 100644 libjava/java/util/jar/JarInputStream.java delete mode 100644 libjava/java/util/jar/JarOutputStream.java delete mode 100644 libjava/java/util/jar/Manifest.java delete mode 100644 libjava/java/util/logging/ConsoleHandler.java delete mode 100644 libjava/java/util/logging/ErrorManager.java delete mode 100644 libjava/java/util/logging/FileHandler.java delete mode 100644 libjava/java/util/logging/Filter.java delete mode 100644 libjava/java/util/logging/Formatter.java delete mode 100644 libjava/java/util/logging/Handler.java delete mode 100644 libjava/java/util/logging/Level.java delete mode 100644 libjava/java/util/logging/LogRecord.java delete mode 100644 libjava/java/util/logging/LoggingPermission.java delete mode 100644 libjava/java/util/logging/MemoryHandler.java delete mode 100644 libjava/java/util/logging/SimpleFormatter.java delete mode 100644 libjava/java/util/logging/SocketHandler.java delete mode 100644 libjava/java/util/logging/StreamHandler.java delete mode 100644 libjava/java/util/logging/XMLFormatter.java delete mode 100644 libjava/java/util/prefs/AbstractPreferences.java delete mode 100644 libjava/java/util/prefs/BackingStoreException.java delete mode 100644 libjava/java/util/prefs/InvalidPreferencesFormatException.java delete mode 100644 libjava/java/util/prefs/NodeChangeEvent.java delete mode 100644 libjava/java/util/prefs/NodeChangeListener.java delete mode 100644 libjava/java/util/prefs/PreferenceChangeEvent.java delete mode 100644 libjava/java/util/prefs/PreferenceChangeListener.java delete mode 100644 libjava/java/util/prefs/Preferences.java delete mode 100644 libjava/java/util/prefs/PreferencesFactory.java delete mode 100644 libjava/java/util/regex/Matcher.java delete mode 100644 libjava/java/util/regex/Pattern.java delete mode 100644 libjava/java/util/regex/PatternSyntaxException.java delete mode 100644 libjava/java/util/zip/Adler32.java delete mode 100644 libjava/java/util/zip/CRC32.java delete mode 100644 libjava/java/util/zip/CheckedInputStream.java delete mode 100644 libjava/java/util/zip/CheckedOutputStream.java delete mode 100644 libjava/java/util/zip/Checksum.java delete mode 100644 libjava/java/util/zip/DataFormatException.java delete mode 100644 libjava/java/util/zip/ZipConstants.java delete mode 100644 libjava/java/util/zip/ZipException.java delete mode 100644 libjava/java/util/zip/ZipInputStream.java delete mode 100644 libjava/java/util/zip/ZipOutputStream.java delete mode 100644 libjava/javax/accessibility/Accessible.java delete mode 100644 libjava/javax/accessibility/AccessibleAction.java delete mode 100644 libjava/javax/accessibility/AccessibleBundle.java delete mode 100644 libjava/javax/accessibility/AccessibleComponent.java delete mode 100644 libjava/javax/accessibility/AccessibleContext.java delete mode 100644 libjava/javax/accessibility/AccessibleEditableText.java delete mode 100644 libjava/javax/accessibility/AccessibleExtendedComponent.java delete mode 100644 libjava/javax/accessibility/AccessibleExtendedTable.java delete mode 100644 libjava/javax/accessibility/AccessibleHyperlink.java delete mode 100644 libjava/javax/accessibility/AccessibleHypertext.java delete mode 100644 libjava/javax/accessibility/AccessibleIcon.java delete mode 100644 libjava/javax/accessibility/AccessibleKeyBinding.java delete mode 100644 libjava/javax/accessibility/AccessibleRelation.java delete mode 100644 libjava/javax/accessibility/AccessibleRelationSet.java delete mode 100644 libjava/javax/accessibility/AccessibleResourceBundle.java delete mode 100644 libjava/javax/accessibility/AccessibleRole.java delete mode 100644 libjava/javax/accessibility/AccessibleSelection.java delete mode 100644 libjava/javax/accessibility/AccessibleState.java delete mode 100644 libjava/javax/accessibility/AccessibleStateSet.java delete mode 100644 libjava/javax/accessibility/AccessibleTable.java delete mode 100644 libjava/javax/accessibility/AccessibleTableModelChange.java delete mode 100644 libjava/javax/accessibility/AccessibleText.java delete mode 100644 libjava/javax/accessibility/AccessibleValue.java delete mode 100644 libjava/javax/crypto/BadPaddingException.java delete mode 100644 libjava/javax/crypto/Cipher.java delete mode 100644 libjava/javax/crypto/CipherInputStream.java delete mode 100644 libjava/javax/crypto/CipherOutputStream.java delete mode 100644 libjava/javax/crypto/CipherSpi.java delete mode 100644 libjava/javax/crypto/EncryptedPrivateKeyInfo.java delete mode 100644 libjava/javax/crypto/ExemptionMechanism.java delete mode 100644 libjava/javax/crypto/ExemptionMechanismException.java delete mode 100644 libjava/javax/crypto/ExemptionMechanismSpi.java delete mode 100644 libjava/javax/crypto/IllegalBlockSizeException.java delete mode 100644 libjava/javax/crypto/KeyAgreement.java delete mode 100644 libjava/javax/crypto/KeyAgreementSpi.java delete mode 100644 libjava/javax/crypto/KeyGenerator.java delete mode 100644 libjava/javax/crypto/KeyGeneratorSpi.java delete mode 100644 libjava/javax/crypto/Mac.java delete mode 100644 libjava/javax/crypto/MacSpi.java delete mode 100644 libjava/javax/crypto/NoSuchPaddingException.java delete mode 100644 libjava/javax/crypto/NullCipher.java delete mode 100644 libjava/javax/crypto/NullCipherImpl.java delete mode 100644 libjava/javax/crypto/SealedObject.java delete mode 100644 libjava/javax/crypto/SecretKey.java delete mode 100644 libjava/javax/crypto/SecretKeyFactory.java delete mode 100644 libjava/javax/crypto/SecretKeyFactorySpi.java delete mode 100644 libjava/javax/crypto/ShortBufferException.java delete mode 100644 libjava/javax/crypto/interfaces/DHKey.java delete mode 100644 libjava/javax/crypto/interfaces/DHPrivateKey.java delete mode 100644 libjava/javax/crypto/interfaces/DHPublicKey.java delete mode 100644 libjava/javax/crypto/interfaces/PBEKey.java delete mode 100644 libjava/javax/crypto/spec/DESKeySpec.java delete mode 100644 libjava/javax/crypto/spec/DESedeKeySpec.java delete mode 100644 libjava/javax/crypto/spec/DHGenParameterSpec.java delete mode 100644 libjava/javax/crypto/spec/DHParameterSpec.java delete mode 100644 libjava/javax/crypto/spec/DHPrivateKeySpec.java delete mode 100644 libjava/javax/crypto/spec/DHPublicKeySpec.java delete mode 100644 libjava/javax/crypto/spec/IvParameterSpec.java delete mode 100644 libjava/javax/crypto/spec/PBEKeySpec.java delete mode 100644 libjava/javax/crypto/spec/PBEParameterSpec.java delete mode 100644 libjava/javax/crypto/spec/RC2ParameterSpec.java delete mode 100644 libjava/javax/crypto/spec/RC5ParameterSpec.java delete mode 100644 libjava/javax/crypto/spec/SecretKeySpec.java delete mode 100644 libjava/javax/imageio/IIOException.java delete mode 100644 libjava/javax/imageio/IIOImage.java delete mode 100644 libjava/javax/imageio/IIOParam.java delete mode 100644 libjava/javax/imageio/IIOParamController.java delete mode 100644 libjava/javax/imageio/ImageIO.java delete mode 100644 libjava/javax/imageio/ImageReadParam.java delete mode 100644 libjava/javax/imageio/ImageReader.java delete mode 100644 libjava/javax/imageio/ImageTranscoder.java delete mode 100644 libjava/javax/imageio/ImageTypeSpecifier.java delete mode 100644 libjava/javax/imageio/ImageWriteParam.java delete mode 100644 libjava/javax/imageio/ImageWriter.java delete mode 100644 libjava/javax/imageio/event/IIOReadProgressListener.java delete mode 100644 libjava/javax/imageio/event/IIOReadUpdateListener.java delete mode 100644 libjava/javax/imageio/event/IIOReadWarningListener.java delete mode 100644 libjava/javax/imageio/event/IIOWriteProgressListener.java delete mode 100644 libjava/javax/imageio/event/IIOWriteWarningListener.java delete mode 100644 libjava/javax/imageio/metadata/IIOAttr.java delete mode 100644 libjava/javax/imageio/metadata/IIOInvalidTreeException.java delete mode 100644 libjava/javax/imageio/metadata/IIOMetadata.java delete mode 100644 libjava/javax/imageio/metadata/IIOMetadataController.java delete mode 100644 libjava/javax/imageio/metadata/IIOMetadataFormat.java delete mode 100644 libjava/javax/imageio/metadata/IIOMetadataFormatImpl.java delete mode 100644 libjava/javax/imageio/metadata/IIOMetadataNode.java delete mode 100644 libjava/javax/imageio/metadata/IIONamedNodeMap.java delete mode 100644 libjava/javax/imageio/metadata/IIONodeList.java delete mode 100644 libjava/javax/imageio/spi/IIORegistry.java delete mode 100644 libjava/javax/imageio/spi/IIOServiceProvider.java delete mode 100644 libjava/javax/imageio/spi/ImageInputStreamSpi.java delete mode 100644 libjava/javax/imageio/spi/ImageOutputStreamSpi.java delete mode 100644 libjava/javax/imageio/spi/ImageReaderSpi.java delete mode 100644 libjava/javax/imageio/spi/ImageReaderWriterSpi.java delete mode 100644 libjava/javax/imageio/spi/ImageTranscoderSpi.java delete mode 100644 libjava/javax/imageio/spi/ImageWriterSpi.java delete mode 100644 libjava/javax/imageio/spi/RegisterableService.java delete mode 100644 libjava/javax/imageio/spi/ServiceRegistry.java delete mode 100644 libjava/javax/imageio/stream/FileCacheImageInputStream.java delete mode 100644 libjava/javax/imageio/stream/FileCacheImageOutputStream.java delete mode 100644 libjava/javax/imageio/stream/FileImageInputStream.java delete mode 100644 libjava/javax/imageio/stream/FileImageOutputStream.java delete mode 100644 libjava/javax/imageio/stream/IIOByteBuffer.java delete mode 100644 libjava/javax/imageio/stream/ImageInputStream.java delete mode 100644 libjava/javax/imageio/stream/ImageInputStreamImpl.java delete mode 100644 libjava/javax/imageio/stream/ImageOutputStream.java delete mode 100644 libjava/javax/imageio/stream/ImageOutputStreamImpl.java delete mode 100644 libjava/javax/imageio/stream/MemoryCacheImageInputStream.java delete mode 100644 libjava/javax/imageio/stream/MemoryCacheImageOutputStream.java delete mode 100644 libjava/javax/naming/AuthenticationException.java delete mode 100644 libjava/javax/naming/AuthenticationNotSupportedException.java delete mode 100644 libjava/javax/naming/BinaryRefAddr.java delete mode 100644 libjava/javax/naming/Binding.java delete mode 100644 libjava/javax/naming/CannotProceedException.java delete mode 100644 libjava/javax/naming/CommunicationException.java delete mode 100644 libjava/javax/naming/CompositeName.java delete mode 100644 libjava/javax/naming/CompoundName.java delete mode 100644 libjava/javax/naming/ConfigurationException.java delete mode 100644 libjava/javax/naming/Context.java delete mode 100644 libjava/javax/naming/ContextNotEmptyException.java delete mode 100644 libjava/javax/naming/InitialContext.java delete mode 100644 libjava/javax/naming/InsufficientResourcesException.java delete mode 100644 libjava/javax/naming/InterruptedNamingException.java delete mode 100644 libjava/javax/naming/InvalidNameException.java delete mode 100644 libjava/javax/naming/LimitExceededException.java delete mode 100644 libjava/javax/naming/LinkException.java delete mode 100644 libjava/javax/naming/LinkLoopException.java delete mode 100644 libjava/javax/naming/LinkRef.java delete mode 100644 libjava/javax/naming/MalformedLinkException.java delete mode 100644 libjava/javax/naming/Name.java delete mode 100644 libjava/javax/naming/NameAlreadyBoundException.java delete mode 100644 libjava/javax/naming/NameClassPair.java delete mode 100644 libjava/javax/naming/NameNotFoundException.java delete mode 100644 libjava/javax/naming/NameParser.java delete mode 100644 libjava/javax/naming/NamingEnumeration.java delete mode 100644 libjava/javax/naming/NamingException.java delete mode 100644 libjava/javax/naming/NamingSecurityException.java delete mode 100644 libjava/javax/naming/NoInitialContextException.java delete mode 100644 libjava/javax/naming/NoPermissionException.java delete mode 100644 libjava/javax/naming/NotContextException.java delete mode 100644 libjava/javax/naming/OperationNotSupportedException.java delete mode 100644 libjava/javax/naming/PartialResultException.java delete mode 100644 libjava/javax/naming/RefAddr.java delete mode 100644 libjava/javax/naming/Reference.java delete mode 100644 libjava/javax/naming/Referenceable.java delete mode 100644 libjava/javax/naming/ReferralException.java delete mode 100644 libjava/javax/naming/ServiceUnavailableException.java delete mode 100644 libjava/javax/naming/SizeLimitExceededException.java delete mode 100644 libjava/javax/naming/StringRefAddr.java delete mode 100644 libjava/javax/naming/TimeLimitExceededException.java delete mode 100644 libjava/javax/naming/directory/Attribute.java delete mode 100644 libjava/javax/naming/directory/AttributeInUseException.java delete mode 100644 libjava/javax/naming/directory/AttributeModificationException.java delete mode 100644 libjava/javax/naming/directory/Attributes.java delete mode 100644 libjava/javax/naming/directory/BasicAttribute.java delete mode 100644 libjava/javax/naming/directory/BasicAttributes.java delete mode 100644 libjava/javax/naming/directory/DirContext.java delete mode 100644 libjava/javax/naming/directory/InitialDirContext.java delete mode 100644 libjava/javax/naming/directory/InvalidAttributeIdentifierException.java delete mode 100644 libjava/javax/naming/directory/InvalidAttributeValueException.java delete mode 100644 libjava/javax/naming/directory/InvalidAttributesException.java delete mode 100644 libjava/javax/naming/directory/InvalidSearchControlsException.java delete mode 100644 libjava/javax/naming/directory/InvalidSearchFilterException.java delete mode 100644 libjava/javax/naming/directory/ModificationItem.java delete mode 100644 libjava/javax/naming/directory/NoSuchAttributeException.java delete mode 100644 libjava/javax/naming/directory/SchemaViolationException.java delete mode 100644 libjava/javax/naming/directory/SearchControls.java delete mode 100644 libjava/javax/naming/directory/SearchResult.java delete mode 100644 libjava/javax/naming/event/EventContext.java delete mode 100644 libjava/javax/naming/event/EventDirContext.java delete mode 100644 libjava/javax/naming/event/NamespaceChangeListener.java delete mode 100644 libjava/javax/naming/event/NamingEvent.java delete mode 100644 libjava/javax/naming/event/NamingExceptionEvent.java delete mode 100644 libjava/javax/naming/event/NamingListener.java delete mode 100644 libjava/javax/naming/event/ObjectChangeListener.java delete mode 100644 libjava/javax/naming/ldap/Control.java delete mode 100644 libjava/javax/naming/ldap/ControlFactory.java delete mode 100644 libjava/javax/naming/ldap/ExtendedRequest.java delete mode 100644 libjava/javax/naming/ldap/ExtendedResponse.java delete mode 100644 libjava/javax/naming/ldap/HasControls.java delete mode 100644 libjava/javax/naming/ldap/InitialLdapContext.java delete mode 100644 libjava/javax/naming/ldap/LdapContext.java delete mode 100644 libjava/javax/naming/ldap/LdapReferralException.java delete mode 100644 libjava/javax/naming/ldap/UnsolicitedNotification.java delete mode 100644 libjava/javax/naming/ldap/UnsolicitedNotificationEvent.java delete mode 100644 libjava/javax/naming/ldap/UnsolicitedNotificationListener.java delete mode 100644 libjava/javax/naming/spi/DirObjectFactory.java delete mode 100644 libjava/javax/naming/spi/DirStateFactory.java delete mode 100644 libjava/javax/naming/spi/DirectoryManager.java delete mode 100644 libjava/javax/naming/spi/InitialContextFactory.java delete mode 100644 libjava/javax/naming/spi/InitialContextFactoryBuilder.java delete mode 100644 libjava/javax/naming/spi/NamingManager.java delete mode 100644 libjava/javax/naming/spi/ObjectFactory.java delete mode 100644 libjava/javax/naming/spi/ObjectFactoryBuilder.java delete mode 100644 libjava/javax/naming/spi/ResolveResult.java delete mode 100644 libjava/javax/naming/spi/Resolver.java delete mode 100644 libjava/javax/naming/spi/StateFactory.java delete mode 100644 libjava/javax/net/ServerSocketFactory.java delete mode 100644 libjava/javax/net/SocketFactory.java delete mode 100644 libjava/javax/net/VanillaServerSocketFactory.java delete mode 100644 libjava/javax/net/VanillaSocketFactory.java delete mode 100644 libjava/javax/net/ssl/HandshakeCompletedEvent.java delete mode 100644 libjava/javax/net/ssl/HandshakeCompletedListener.java delete mode 100644 libjava/javax/net/ssl/HostnameVerifier.java delete mode 100644 libjava/javax/net/ssl/HttpsURLConnection.java delete mode 100644 libjava/javax/net/ssl/KeyManager.java delete mode 100644 libjava/javax/net/ssl/KeyManagerFactory.java delete mode 100644 libjava/javax/net/ssl/KeyManagerFactorySpi.java delete mode 100644 libjava/javax/net/ssl/ManagerFactoryParameters.java delete mode 100644 libjava/javax/net/ssl/SSLContext.java delete mode 100644 libjava/javax/net/ssl/SSLContextSpi.java delete mode 100644 libjava/javax/net/ssl/SSLException.java delete mode 100644 libjava/javax/net/ssl/SSLHandshakeException.java delete mode 100644 libjava/javax/net/ssl/SSLKeyException.java delete mode 100644 libjava/javax/net/ssl/SSLPeerUnverifiedException.java delete mode 100644 libjava/javax/net/ssl/SSLPermission.java delete mode 100644 libjava/javax/net/ssl/SSLProtocolException.java delete mode 100644 libjava/javax/net/ssl/SSLServerSocket.java delete mode 100644 libjava/javax/net/ssl/SSLServerSocketFactory.java delete mode 100644 libjava/javax/net/ssl/SSLSession.java delete mode 100644 libjava/javax/net/ssl/SSLSessionBindingEvent.java delete mode 100644 libjava/javax/net/ssl/SSLSessionBindingListener.java delete mode 100644 libjava/javax/net/ssl/SSLSessionContext.java delete mode 100644 libjava/javax/net/ssl/SSLSocket.java delete mode 100644 libjava/javax/net/ssl/SSLSocketFactory.java delete mode 100644 libjava/javax/net/ssl/TrivialHostnameVerifier.java delete mode 100644 libjava/javax/net/ssl/TrustManager.java delete mode 100644 libjava/javax/net/ssl/TrustManagerFactory.java delete mode 100644 libjava/javax/net/ssl/TrustManagerFactorySpi.java delete mode 100644 libjava/javax/net/ssl/X509KeyManager.java delete mode 100644 libjava/javax/net/ssl/X509TrustManager.java delete mode 100644 libjava/javax/print/AttributeException.java delete mode 100644 libjava/javax/print/CancelablePrintJob.java delete mode 100644 libjava/javax/print/Doc.java delete mode 100644 libjava/javax/print/DocFlavor.java delete mode 100644 libjava/javax/print/DocPrintJob.java delete mode 100644 libjava/javax/print/FlavorException.java delete mode 100644 libjava/javax/print/MultiDoc.java delete mode 100644 libjava/javax/print/MultiDocPrintJob.java delete mode 100644 libjava/javax/print/MultiDocPrintService.java delete mode 100644 libjava/javax/print/PrintException.java delete mode 100644 libjava/javax/print/PrintService.java delete mode 100644 libjava/javax/print/PrintServiceLookup.java delete mode 100644 libjava/javax/print/ServiceUIFactory.java delete mode 100644 libjava/javax/print/StreamPrintService.java delete mode 100644 libjava/javax/print/URIException.java delete mode 100644 libjava/javax/print/attribute/Attribute.java delete mode 100644 libjava/javax/print/attribute/AttributeSet.java delete mode 100644 libjava/javax/print/attribute/AttributeSetUtilities.java delete mode 100644 libjava/javax/print/attribute/DateTimeSyntax.java delete mode 100644 libjava/javax/print/attribute/DocAttribute.java delete mode 100644 libjava/javax/print/attribute/DocAttributeSet.java delete mode 100644 libjava/javax/print/attribute/EnumSyntax.java delete mode 100644 libjava/javax/print/attribute/HashAttributeSet.java delete mode 100644 libjava/javax/print/attribute/HashDocAttributeSet.java delete mode 100644 libjava/javax/print/attribute/HashPrintJobAttributeSet.java delete mode 100644 libjava/javax/print/attribute/HashPrintRequestAttributeSet.java delete mode 100644 libjava/javax/print/attribute/HashPrintServiceAttributeSet.java delete mode 100644 libjava/javax/print/attribute/IntegerSyntax.java delete mode 100644 libjava/javax/print/attribute/PrintJobAttribute.java delete mode 100644 libjava/javax/print/attribute/PrintJobAttributeSet.java delete mode 100644 libjava/javax/print/attribute/PrintRequestAttribute.java delete mode 100644 libjava/javax/print/attribute/PrintRequestAttributeSet.java delete mode 100644 libjava/javax/print/attribute/PrintServiceAttribute.java delete mode 100644 libjava/javax/print/attribute/PrintServiceAttributeSet.java delete mode 100644 libjava/javax/print/attribute/ResolutionSyntax.java delete mode 100644 libjava/javax/print/attribute/SetOfIntegerSyntax.java delete mode 100644 libjava/javax/print/attribute/Size2DSyntax.java delete mode 100644 libjava/javax/print/attribute/SupportedValuesAttribute.java delete mode 100644 libjava/javax/print/attribute/TextSyntax.java delete mode 100644 libjava/javax/print/attribute/URISyntax.java delete mode 100644 libjava/javax/print/attribute/UnmodifiableSetException.java delete mode 100644 libjava/javax/print/attribute/standard/Chromaticity.java delete mode 100644 libjava/javax/print/attribute/standard/ColorSupported.java delete mode 100644 libjava/javax/print/attribute/standard/Compression.java delete mode 100644 libjava/javax/print/attribute/standard/Copies.java delete mode 100644 libjava/javax/print/attribute/standard/CopiesSupported.java delete mode 100644 libjava/javax/print/attribute/standard/DateTimeAtCompleted.java delete mode 100644 libjava/javax/print/attribute/standard/DateTimeAtCreation.java delete mode 100644 libjava/javax/print/attribute/standard/DateTimeAtProcessing.java delete mode 100644 libjava/javax/print/attribute/standard/Destination.java delete mode 100644 libjava/javax/print/attribute/standard/DocumentName.java delete mode 100644 libjava/javax/print/attribute/standard/Fidelity.java delete mode 100644 libjava/javax/print/attribute/standard/Finishings.java delete mode 100644 libjava/javax/print/attribute/standard/JobHoldUntil.java delete mode 100644 libjava/javax/print/attribute/standard/JobImpressions.java delete mode 100644 libjava/javax/print/attribute/standard/JobImpressionsCompleted.java delete mode 100644 libjava/javax/print/attribute/standard/JobImpressionsSupported.java delete mode 100644 libjava/javax/print/attribute/standard/JobKOctets.java delete mode 100644 libjava/javax/print/attribute/standard/JobKOctetsProcessed.java delete mode 100644 libjava/javax/print/attribute/standard/JobKOctetsSupported.java delete mode 100644 libjava/javax/print/attribute/standard/JobMediaSheets.java delete mode 100644 libjava/javax/print/attribute/standard/JobMediaSheetsCompleted.java delete mode 100644 libjava/javax/print/attribute/standard/JobMediaSheetsSupported.java delete mode 100644 libjava/javax/print/attribute/standard/JobMessageFromOperator.java delete mode 100644 libjava/javax/print/attribute/standard/JobName.java delete mode 100644 libjava/javax/print/attribute/standard/JobOriginatingUserName.java delete mode 100644 libjava/javax/print/attribute/standard/JobPriority.java delete mode 100644 libjava/javax/print/attribute/standard/JobPrioritySupported.java delete mode 100644 libjava/javax/print/attribute/standard/JobSheets.java delete mode 100644 libjava/javax/print/attribute/standard/JobState.java delete mode 100644 libjava/javax/print/attribute/standard/JobStateReason.java delete mode 100644 libjava/javax/print/attribute/standard/JobStateReasons.java delete mode 100644 libjava/javax/print/attribute/standard/Media.java delete mode 100644 libjava/javax/print/attribute/standard/MediaPrintableArea.java delete mode 100644 libjava/javax/print/attribute/standard/MediaSize.java delete mode 100644 libjava/javax/print/attribute/standard/MediaSizeName.java delete mode 100644 libjava/javax/print/attribute/standard/MultipleDocumentHandling.java delete mode 100644 libjava/javax/print/attribute/standard/NumberOfDocuments.java delete mode 100644 libjava/javax/print/attribute/standard/NumberOfInterveningJobs.java delete mode 100644 libjava/javax/print/attribute/standard/NumberUp.java delete mode 100644 libjava/javax/print/attribute/standard/NumberUpSupported.java delete mode 100644 libjava/javax/print/attribute/standard/OrientationRequested.java delete mode 100644 libjava/javax/print/attribute/standard/OutputDeviceAssigned.java delete mode 100644 libjava/javax/print/attribute/standard/PDLOverrideSupported.java delete mode 100644 libjava/javax/print/attribute/standard/PageRanges.java delete mode 100644 libjava/javax/print/attribute/standard/PagesPerMinute.java delete mode 100644 libjava/javax/print/attribute/standard/PagesPerMinuteColor.java delete mode 100644 libjava/javax/print/attribute/standard/PresentationDirection.java delete mode 100644 libjava/javax/print/attribute/standard/PrintQuality.java delete mode 100644 libjava/javax/print/attribute/standard/PrinterInfo.java delete mode 100644 libjava/javax/print/attribute/standard/PrinterIsAcceptingJobs.java delete mode 100644 libjava/javax/print/attribute/standard/PrinterLocation.java delete mode 100644 libjava/javax/print/attribute/standard/PrinterMakeAndModel.java delete mode 100644 libjava/javax/print/attribute/standard/PrinterMessageFromOperator.java delete mode 100644 libjava/javax/print/attribute/standard/PrinterMoreInfo.java delete mode 100644 libjava/javax/print/attribute/standard/PrinterMoreInfoManufacturer.java delete mode 100644 libjava/javax/print/attribute/standard/PrinterName.java delete mode 100644 libjava/javax/print/attribute/standard/PrinterResolution.java delete mode 100644 libjava/javax/print/attribute/standard/PrinterState.java delete mode 100644 libjava/javax/print/attribute/standard/PrinterStateReason.java delete mode 100644 libjava/javax/print/attribute/standard/PrinterStateReasons.java delete mode 100644 libjava/javax/print/attribute/standard/PrinterURI.java delete mode 100644 libjava/javax/print/attribute/standard/QueuedJobCount.java delete mode 100644 libjava/javax/print/attribute/standard/ReferenceUriSchemesSupported.java delete mode 100644 libjava/javax/print/attribute/standard/RequestingUserName.java delete mode 100644 libjava/javax/print/attribute/standard/Severity.java delete mode 100644 libjava/javax/print/attribute/standard/SheetCollate.java delete mode 100644 libjava/javax/print/attribute/standard/Sides.java delete mode 100644 libjava/javax/print/event/PrintEvent.java delete mode 100644 libjava/javax/print/event/PrintJobAdapter.java delete mode 100644 libjava/javax/print/event/PrintJobAttributeEvent.java delete mode 100644 libjava/javax/print/event/PrintJobAttributeListener.java delete mode 100644 libjava/javax/print/event/PrintJobEvent.java delete mode 100644 libjava/javax/print/event/PrintJobListener.java delete mode 100644 libjava/javax/print/event/PrintServiceAttributeEvent.java delete mode 100644 libjava/javax/print/event/PrintServiceAttributeListener.java delete mode 100644 libjava/javax/security/auth/AuthPermission.java delete mode 100644 libjava/javax/security/auth/DestroyFailedException.java delete mode 100644 libjava/javax/security/auth/Destroyable.java delete mode 100644 libjava/javax/security/auth/Policy.java delete mode 100644 libjava/javax/security/auth/PrivateCredentialPermission.java delete mode 100644 libjava/javax/security/auth/RefreshFailedException.java delete mode 100644 libjava/javax/security/auth/Refreshable.java delete mode 100644 libjava/javax/security/auth/Subject.java delete mode 100644 libjava/javax/security/auth/SubjectDomainCombiner.java delete mode 100644 libjava/javax/security/auth/callback/Callback.java delete mode 100644 libjava/javax/security/auth/callback/CallbackHandler.java delete mode 100644 libjava/javax/security/auth/callback/ChoiceCallback.java delete mode 100644 libjava/javax/security/auth/callback/ConfirmationCallback.java delete mode 100644 libjava/javax/security/auth/callback/LanguageCallback.java delete mode 100644 libjava/javax/security/auth/callback/NameCallback.java delete mode 100644 libjava/javax/security/auth/callback/PasswordCallback.java delete mode 100644 libjava/javax/security/auth/callback/TextInputCallback.java delete mode 100644 libjava/javax/security/auth/callback/TextOutputCallback.java delete mode 100644 libjava/javax/security/auth/callback/UnsupportedCallbackException.java delete mode 100644 libjava/javax/security/auth/login/AccountExpiredException.java delete mode 100644 libjava/javax/security/auth/login/AppConfigurationEntry.java delete mode 100644 libjava/javax/security/auth/login/Configuration.java delete mode 100644 libjava/javax/security/auth/login/CredentialExpiredException.java delete mode 100644 libjava/javax/security/auth/login/FailedLoginException.java delete mode 100644 libjava/javax/security/auth/login/LoginContext.java delete mode 100644 libjava/javax/security/auth/login/LoginException.java delete mode 100644 libjava/javax/security/auth/login/NullConfiguration.java delete mode 100644 libjava/javax/security/auth/spi/LoginModule.java delete mode 100644 libjava/javax/security/auth/x500/X500Principal.java delete mode 100644 libjava/javax/security/auth/x500/X500PrivateCredential.java delete mode 100644 libjava/javax/security/cert/Certificate.java delete mode 100644 libjava/javax/security/cert/CertificateEncodingException.java delete mode 100644 libjava/javax/security/cert/CertificateException.java delete mode 100644 libjava/javax/security/cert/CertificateExpiredException.java delete mode 100644 libjava/javax/security/cert/CertificateNotYetValidException.java delete mode 100644 libjava/javax/security/cert/CertificateParsingException.java delete mode 100644 libjava/javax/security/cert/X509CertBridge.java delete mode 100644 libjava/javax/security/cert/X509Certificate.java delete mode 100644 libjava/javax/security/sasl/AuthenticationException.java delete mode 100644 libjava/javax/security/sasl/AuthorizeCallback.java delete mode 100644 libjava/javax/security/sasl/RealmCallback.java delete mode 100644 libjava/javax/security/sasl/RealmChoiceCallback.java delete mode 100644 libjava/javax/security/sasl/Sasl.java delete mode 100644 libjava/javax/security/sasl/SaslClient.java delete mode 100644 libjava/javax/security/sasl/SaslClientFactory.java delete mode 100644 libjava/javax/security/sasl/SaslException.java delete mode 100644 libjava/javax/security/sasl/SaslServer.java delete mode 100644 libjava/javax/security/sasl/SaslServerFactory.java delete mode 100644 libjava/javax/sql/ConnectionEvent.java delete mode 100644 libjava/javax/sql/ConnectionEventListener.java delete mode 100644 libjava/javax/sql/ConnectionPoolDataSource.java delete mode 100644 libjava/javax/sql/DataSource.java delete mode 100644 libjava/javax/sql/PooledConnection.java delete mode 100644 libjava/javax/sql/RowSet.java delete mode 100644 libjava/javax/sql/RowSetEvent.java delete mode 100644 libjava/javax/sql/RowSetInternal.java delete mode 100644 libjava/javax/sql/RowSetListener.java delete mode 100644 libjava/javax/sql/RowSetMetaData.java delete mode 100644 libjava/javax/sql/RowSetReader.java delete mode 100644 libjava/javax/sql/RowSetWriter.java delete mode 100644 libjava/javax/sql/XAConnection.java delete mode 100644 libjava/javax/sql/XADataSource.java delete mode 100644 libjava/javax/swing/AbstractAction.java delete mode 100644 libjava/javax/swing/AbstractButton.java delete mode 100644 libjava/javax/swing/AbstractCellEditor.java delete mode 100644 libjava/javax/swing/AbstractListModel.java delete mode 100644 libjava/javax/swing/AbstractSpinnerModel.java delete mode 100644 libjava/javax/swing/Action.java delete mode 100644 libjava/javax/swing/ActionMap.java delete mode 100644 libjava/javax/swing/BorderFactory.java delete mode 100644 libjava/javax/swing/BoundedRangeModel.java delete mode 100644 libjava/javax/swing/Box.java delete mode 100644 libjava/javax/swing/BoxLayout.java delete mode 100644 libjava/javax/swing/ButtonGroup.java delete mode 100644 libjava/javax/swing/ButtonModel.java delete mode 100644 libjava/javax/swing/CellEditor.java delete mode 100644 libjava/javax/swing/CellRendererPane.java delete mode 100644 libjava/javax/swing/ComboBoxEditor.java delete mode 100644 libjava/javax/swing/ComboBoxModel.java delete mode 100644 libjava/javax/swing/ComponentInputMap.java delete mode 100644 libjava/javax/swing/DebugGraphics.java delete mode 100644 libjava/javax/swing/DefaultBoundedRangeModel.java delete mode 100644 libjava/javax/swing/DefaultButtonModel.java delete mode 100644 libjava/javax/swing/DefaultCellEditor.java delete mode 100644 libjava/javax/swing/DefaultComboBoxModel.java delete mode 100644 libjava/javax/swing/DefaultDesktopManager.java delete mode 100644 libjava/javax/swing/DefaultFocusManager.java delete mode 100644 libjava/javax/swing/DefaultListCellRenderer.java delete mode 100644 libjava/javax/swing/DefaultListModel.java delete mode 100644 libjava/javax/swing/DefaultListSelectionModel.java delete mode 100644 libjava/javax/swing/DefaultSingleSelectionModel.java delete mode 100644 libjava/javax/swing/DesktopManager.java delete mode 100644 libjava/javax/swing/FocusManager.java delete mode 100644 libjava/javax/swing/GrayFilter.java delete mode 100644 libjava/javax/swing/Icon.java delete mode 100644 libjava/javax/swing/ImageIcon.java delete mode 100644 libjava/javax/swing/InputMap.java delete mode 100644 libjava/javax/swing/InputVerifier.java delete mode 100644 libjava/javax/swing/InternalFrameFocusTraversalPolicy.java delete mode 100644 libjava/javax/swing/JApplet.java delete mode 100644 libjava/javax/swing/JButton.java delete mode 100644 libjava/javax/swing/JCheckBox.java delete mode 100644 libjava/javax/swing/JCheckBoxMenuItem.java delete mode 100644 libjava/javax/swing/JColorChooser.java delete mode 100644 libjava/javax/swing/JComboBox.java delete mode 100644 libjava/javax/swing/JComponent.java delete mode 100644 libjava/javax/swing/JDesktopPane.java delete mode 100644 libjava/javax/swing/JDialog.java delete mode 100644 libjava/javax/swing/JEditorPane.java delete mode 100644 libjava/javax/swing/JFileChooser.java delete mode 100644 libjava/javax/swing/JFormattedTextField.java delete mode 100644 libjava/javax/swing/JFrame.java delete mode 100644 libjava/javax/swing/JInternalFrame.java delete mode 100644 libjava/javax/swing/JLabel.java delete mode 100644 libjava/javax/swing/JLayeredPane.java delete mode 100644 libjava/javax/swing/JList.java delete mode 100644 libjava/javax/swing/JMenu.java delete mode 100644 libjava/javax/swing/JMenuBar.java delete mode 100644 libjava/javax/swing/JMenuItem.java delete mode 100644 libjava/javax/swing/JOptionPane.java delete mode 100644 libjava/javax/swing/JPanel.java delete mode 100644 libjava/javax/swing/JPasswordField.java delete mode 100644 libjava/javax/swing/JPopupMenu.java delete mode 100644 libjava/javax/swing/JProgressBar.java delete mode 100644 libjava/javax/swing/JRadioButton.java delete mode 100644 libjava/javax/swing/JRadioButtonMenuItem.java delete mode 100644 libjava/javax/swing/JRootPane.java delete mode 100644 libjava/javax/swing/JScrollBar.java delete mode 100644 libjava/javax/swing/JScrollPane.java delete mode 100644 libjava/javax/swing/JSeparator.java delete mode 100644 libjava/javax/swing/JSlider.java delete mode 100644 libjava/javax/swing/JSpinner.java delete mode 100644 libjava/javax/swing/JSplitPane.java delete mode 100644 libjava/javax/swing/JTabbedPane.java delete mode 100644 libjava/javax/swing/JTable.java delete mode 100644 libjava/javax/swing/JTextArea.java delete mode 100644 libjava/javax/swing/JTextField.java delete mode 100644 libjava/javax/swing/JTextPane.java delete mode 100644 libjava/javax/swing/JToggleButton.java delete mode 100644 libjava/javax/swing/JToolBar.java delete mode 100644 libjava/javax/swing/JToolTip.java delete mode 100644 libjava/javax/swing/JTree.java delete mode 100644 libjava/javax/swing/JViewport.java delete mode 100644 libjava/javax/swing/JWindow.java delete mode 100644 libjava/javax/swing/KeyStroke.java delete mode 100644 libjava/javax/swing/LayoutFocusTraversalPolicy.java delete mode 100644 libjava/javax/swing/ListCellRenderer.java delete mode 100644 libjava/javax/swing/ListModel.java delete mode 100644 libjava/javax/swing/ListSelectionModel.java delete mode 100644 libjava/javax/swing/LookAndFeel.java delete mode 100644 libjava/javax/swing/MenuElement.java delete mode 100644 libjava/javax/swing/MenuSelectionManager.java delete mode 100644 libjava/javax/swing/MutableComboBoxModel.java delete mode 100644 libjava/javax/swing/OverlayLayout.java delete mode 100644 libjava/javax/swing/Popup.java delete mode 100644 libjava/javax/swing/PopupFactory.java delete mode 100644 libjava/javax/swing/ProgressMonitor.java delete mode 100644 libjava/javax/swing/ProgressMonitorInputStream.java delete mode 100644 libjava/javax/swing/Renderer.java delete mode 100644 libjava/javax/swing/RepaintManager.java delete mode 100644 libjava/javax/swing/RootPaneContainer.java delete mode 100644 libjava/javax/swing/ScrollPaneConstants.java delete mode 100644 libjava/javax/swing/ScrollPaneLayout.java delete mode 100644 libjava/javax/swing/Scrollable.java delete mode 100644 libjava/javax/swing/SingleSelectionModel.java delete mode 100644 libjava/javax/swing/SizeRequirements.java delete mode 100644 libjava/javax/swing/SizeSequence.java delete mode 100644 libjava/javax/swing/SortingFocusTraversalPolicy.java delete mode 100644 libjava/javax/swing/SpinnerDateModel.java delete mode 100644 libjava/javax/swing/SpinnerListModel.java delete mode 100644 libjava/javax/swing/SpinnerModel.java delete mode 100644 libjava/javax/swing/SpinnerNumberModel.java delete mode 100644 libjava/javax/swing/Spring.java delete mode 100644 libjava/javax/swing/SpringLayout.java delete mode 100644 libjava/javax/swing/SwingConstants.java delete mode 100644 libjava/javax/swing/SwingUtilities.java delete mode 100644 libjava/javax/swing/Timer.java delete mode 100644 libjava/javax/swing/ToolTipManager.java delete mode 100644 libjava/javax/swing/TransferHandler.java delete mode 100644 libjava/javax/swing/UIDefaults.java delete mode 100644 libjava/javax/swing/UIManager.java delete mode 100644 libjava/javax/swing/UnsupportedLookAndFeelException.java delete mode 100644 libjava/javax/swing/ViewportLayout.java delete mode 100644 libjava/javax/swing/WindowConstants.java delete mode 100644 libjava/javax/swing/border/AbstractBorder.java delete mode 100644 libjava/javax/swing/border/BevelBorder.java delete mode 100644 libjava/javax/swing/border/Border.java delete mode 100644 libjava/javax/swing/border/CompoundBorder.java delete mode 100644 libjava/javax/swing/border/EmptyBorder.java delete mode 100644 libjava/javax/swing/border/EtchedBorder.java delete mode 100644 libjava/javax/swing/border/LineBorder.java delete mode 100644 libjava/javax/swing/border/MatteBorder.java delete mode 100644 libjava/javax/swing/border/SoftBevelBorder.java delete mode 100644 libjava/javax/swing/border/TitledBorder.java delete mode 100644 libjava/javax/swing/colorchooser/AbstractColorChooserPanel.java delete mode 100644 libjava/javax/swing/colorchooser/ColorChooserComponentFactory.java delete mode 100644 libjava/javax/swing/colorchooser/ColorSelectionModel.java delete mode 100644 libjava/javax/swing/colorchooser/DefaultColorSelectionModel.java delete mode 100644 libjava/javax/swing/colorchooser/DefaultHSBChooserPanel.java delete mode 100644 libjava/javax/swing/colorchooser/DefaultPreviewPanel.java delete mode 100644 libjava/javax/swing/colorchooser/DefaultRGBChooserPanel.java delete mode 100644 libjava/javax/swing/colorchooser/DefaultSwatchChooserPanel.java delete mode 100644 libjava/javax/swing/event/AncestorEvent.java delete mode 100644 libjava/javax/swing/event/AncestorListener.java delete mode 100644 libjava/javax/swing/event/CaretEvent.java delete mode 100644 libjava/javax/swing/event/CaretListener.java delete mode 100644 libjava/javax/swing/event/CellEditorListener.java delete mode 100644 libjava/javax/swing/event/ChangeEvent.java delete mode 100644 libjava/javax/swing/event/ChangeListener.java delete mode 100644 libjava/javax/swing/event/DocumentEvent.java delete mode 100644 libjava/javax/swing/event/DocumentListener.java delete mode 100644 libjava/javax/swing/event/EventListenerList.java delete mode 100644 libjava/javax/swing/event/HyperlinkEvent.java delete mode 100644 libjava/javax/swing/event/HyperlinkListener.java delete mode 100644 libjava/javax/swing/event/InternalFrameAdapter.java delete mode 100644 libjava/javax/swing/event/InternalFrameEvent.java delete mode 100644 libjava/javax/swing/event/InternalFrameListener.java delete mode 100644 libjava/javax/swing/event/ListDataEvent.java delete mode 100644 libjava/javax/swing/event/ListDataListener.java delete mode 100644 libjava/javax/swing/event/ListSelectionEvent.java delete mode 100644 libjava/javax/swing/event/ListSelectionListener.java delete mode 100644 libjava/javax/swing/event/MenuDragMouseEvent.java delete mode 100644 libjava/javax/swing/event/MenuDragMouseListener.java delete mode 100644 libjava/javax/swing/event/MenuEvent.java delete mode 100644 libjava/javax/swing/event/MenuKeyEvent.java delete mode 100644 libjava/javax/swing/event/MenuKeyListener.java delete mode 100644 libjava/javax/swing/event/MenuListener.java delete mode 100644 libjava/javax/swing/event/MouseInputAdapter.java delete mode 100644 libjava/javax/swing/event/MouseInputListener.java delete mode 100644 libjava/javax/swing/event/PopupMenuEvent.java delete mode 100644 libjava/javax/swing/event/PopupMenuListener.java delete mode 100644 libjava/javax/swing/event/SwingPropertyChangeSupport.java delete mode 100644 libjava/javax/swing/event/TableColumnModelEvent.java delete mode 100644 libjava/javax/swing/event/TableColumnModelListener.java delete mode 100644 libjava/javax/swing/event/TableModelEvent.java delete mode 100644 libjava/javax/swing/event/TableModelListener.java delete mode 100644 libjava/javax/swing/event/TreeExpansionEvent.java delete mode 100644 libjava/javax/swing/event/TreeExpansionListener.java delete mode 100644 libjava/javax/swing/event/TreeModelEvent.java delete mode 100644 libjava/javax/swing/event/TreeModelListener.java delete mode 100644 libjava/javax/swing/event/TreeSelectionEvent.java delete mode 100644 libjava/javax/swing/event/TreeSelectionListener.java delete mode 100644 libjava/javax/swing/event/TreeWillExpandListener.java delete mode 100644 libjava/javax/swing/event/UndoableEditEvent.java delete mode 100644 libjava/javax/swing/event/UndoableEditListener.java delete mode 100644 libjava/javax/swing/filechooser/FileFilter.java delete mode 100644 libjava/javax/swing/filechooser/FileSystemView.java delete mode 100644 libjava/javax/swing/filechooser/FileView.java delete mode 100644 libjava/javax/swing/plaf/ActionMapUIResource.java delete mode 100644 libjava/javax/swing/plaf/BorderUIResource.java delete mode 100644 libjava/javax/swing/plaf/ButtonUI.java delete mode 100644 libjava/javax/swing/plaf/ColorChooserUI.java delete mode 100644 libjava/javax/swing/plaf/ColorUIResource.java delete mode 100644 libjava/javax/swing/plaf/ComboBoxUI.java delete mode 100644 libjava/javax/swing/plaf/ComponentInputMapUIResource.java delete mode 100644 libjava/javax/swing/plaf/ComponentUI.java delete mode 100644 libjava/javax/swing/plaf/DesktopIconUI.java delete mode 100644 libjava/javax/swing/plaf/DesktopPaneUI.java delete mode 100644 libjava/javax/swing/plaf/DimensionUIResource.java delete mode 100644 libjava/javax/swing/plaf/FileChooserUI.java delete mode 100644 libjava/javax/swing/plaf/FontUIResource.java delete mode 100644 libjava/javax/swing/plaf/IconUIResource.java delete mode 100644 libjava/javax/swing/plaf/InputMapUIResource.java delete mode 100644 libjava/javax/swing/plaf/InsetsUIResource.java delete mode 100644 libjava/javax/swing/plaf/InternalFrameUI.java delete mode 100644 libjava/javax/swing/plaf/LabelUI.java delete mode 100644 libjava/javax/swing/plaf/ListUI.java delete mode 100644 libjava/javax/swing/plaf/MenuBarUI.java delete mode 100644 libjava/javax/swing/plaf/MenuItemUI.java delete mode 100644 libjava/javax/swing/plaf/OptionPaneUI.java delete mode 100644 libjava/javax/swing/plaf/PanelUI.java delete mode 100644 libjava/javax/swing/plaf/PopupMenuUI.java delete mode 100644 libjava/javax/swing/plaf/ProgressBarUI.java delete mode 100644 libjava/javax/swing/plaf/RootPaneUI.java delete mode 100644 libjava/javax/swing/plaf/ScrollBarUI.java delete mode 100644 libjava/javax/swing/plaf/ScrollPaneUI.java delete mode 100644 libjava/javax/swing/plaf/SeparatorUI.java delete mode 100644 libjava/javax/swing/plaf/SliderUI.java delete mode 100644 libjava/javax/swing/plaf/SpinnerUI.java delete mode 100644 libjava/javax/swing/plaf/SplitPaneUI.java delete mode 100644 libjava/javax/swing/plaf/TabbedPaneUI.java delete mode 100644 libjava/javax/swing/plaf/TableHeaderUI.java delete mode 100644 libjava/javax/swing/plaf/TableUI.java delete mode 100644 libjava/javax/swing/plaf/TextUI.java delete mode 100644 libjava/javax/swing/plaf/ToolBarUI.java delete mode 100644 libjava/javax/swing/plaf/ToolTipUI.java delete mode 100644 libjava/javax/swing/plaf/TreeUI.java delete mode 100644 libjava/javax/swing/plaf/UIResource.java delete mode 100644 libjava/javax/swing/plaf/ViewportUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicArrowButton.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicBorders.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicButtonListener.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicButtonUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicCheckBoxMenuItemUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicCheckBoxUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicColorChooserUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicComboBoxEditor.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicComboBoxRenderer.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicComboBoxUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicComboPopup.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicDesktopIconUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicDesktopPaneUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicEditorPaneUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicFormattedTextFieldUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicGraphicsUtils.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicIconFactory.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicInternalFrameTitlePane.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicInternalFrameUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicLabelUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicListUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicLookAndFeel.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicMenuBarUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicMenuItemUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicMenuUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicOptionPaneUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicPanelUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicPasswordFieldUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicPopupMenuSeparatorUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicPopupMenuUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicProgressBarUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicRadioButtonMenuItemUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicRadioButtonUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicRootPaneUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicScrollBarUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicScrollPaneUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicSeparatorUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicSliderUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicSpinnerUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicSplitPaneDivider.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicSplitPaneUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicTabbedPaneUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicTableHeaderUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicTableUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicTextAreaUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicTextFieldUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicTextPaneUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicTextUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicToggleButtonUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicToolBarSeparatorUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicToolBarUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicToolTipUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicTreeUI.java delete mode 100644 libjava/javax/swing/plaf/basic/BasicViewportUI.java delete mode 100644 libjava/javax/swing/plaf/basic/ComboPopup.java delete mode 100644 libjava/javax/swing/plaf/metal/DefaultMetalTheme.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalBorders.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalButtonUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalCheckBoxUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalComboBoxUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalDesktopIconUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalInternalFrameUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalLabelUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalLookAndFeel.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalPopupMenuSeparatorUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalProgressBarUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalRadioButtonUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalRootPaneUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalScrollBarUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalScrollPaneUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalSeparatorUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalSliderUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalSplitPaneUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalTabbedPaneUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalTextFieldUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalTheme.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalToggleButtonUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalToolBarUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalToolTipUI.java delete mode 100644 libjava/javax/swing/plaf/metal/MetalTreeUI.java delete mode 100644 libjava/javax/swing/table/AbstractTableModel.java delete mode 100644 libjava/javax/swing/table/DefaultTableCellRenderer.java delete mode 100644 libjava/javax/swing/table/DefaultTableColumnModel.java delete mode 100644 libjava/javax/swing/table/DefaultTableModel.java delete mode 100644 libjava/javax/swing/table/JTableHeader.java delete mode 100644 libjava/javax/swing/table/TableCellEditor.java delete mode 100644 libjava/javax/swing/table/TableCellRenderer.java delete mode 100644 libjava/javax/swing/table/TableColumn.java delete mode 100644 libjava/javax/swing/table/TableColumnModel.java delete mode 100644 libjava/javax/swing/table/TableModel.java delete mode 100644 libjava/javax/swing/text/AbstractDocument.java delete mode 100644 libjava/javax/swing/text/AttributeSet.java delete mode 100644 libjava/javax/swing/text/BadLocationException.java delete mode 100644 libjava/javax/swing/text/Caret.java delete mode 100644 libjava/javax/swing/text/ChangedCharSetException.java delete mode 100644 libjava/javax/swing/text/ComponentView.java delete mode 100644 libjava/javax/swing/text/DefaultCaret.java delete mode 100644 libjava/javax/swing/text/DefaultEditorKit.java delete mode 100644 libjava/javax/swing/text/DefaultHighlighter.java delete mode 100644 libjava/javax/swing/text/DefaultStyledDocument.java delete mode 100644 libjava/javax/swing/text/Document.java delete mode 100644 libjava/javax/swing/text/DocumentFilter.java delete mode 100644 libjava/javax/swing/text/EditorKit.java delete mode 100644 libjava/javax/swing/text/Element.java delete mode 100644 libjava/javax/swing/text/FieldView.java delete mode 100644 libjava/javax/swing/text/GapContent.java delete mode 100644 libjava/javax/swing/text/Highlighter.java delete mode 100644 libjava/javax/swing/text/JTextComponent.java delete mode 100644 libjava/javax/swing/text/Keymap.java delete mode 100644 libjava/javax/swing/text/LayeredHighlighter.java delete mode 100644 libjava/javax/swing/text/MutableAttributeSet.java delete mode 100644 libjava/javax/swing/text/NavigationFilter.java delete mode 100644 libjava/javax/swing/text/PasswordView.java delete mode 100644 libjava/javax/swing/text/PlainDocument.java delete mode 100644 libjava/javax/swing/text/PlainView.java delete mode 100644 libjava/javax/swing/text/Position.java delete mode 100644 libjava/javax/swing/text/Segment.java delete mode 100644 libjava/javax/swing/text/SimpleAttributeSet.java delete mode 100644 libjava/javax/swing/text/StringContent.java delete mode 100644 libjava/javax/swing/text/Style.java delete mode 100644 libjava/javax/swing/text/StyleConstants.java delete mode 100644 libjava/javax/swing/text/StyleContext.java delete mode 100644 libjava/javax/swing/text/StyledDocument.java delete mode 100644 libjava/javax/swing/text/StyledEditorKit.java delete mode 100644 libjava/javax/swing/text/TabExpander.java delete mode 100644 libjava/javax/swing/text/TabSet.java delete mode 100644 libjava/javax/swing/text/TabStop.java delete mode 100644 libjava/javax/swing/text/TabableView.java delete mode 100644 libjava/javax/swing/text/TextAction.java delete mode 100644 libjava/javax/swing/text/Utilities.java delete mode 100644 libjava/javax/swing/text/View.java delete mode 100644 libjava/javax/swing/text/ViewFactory.java delete mode 100644 libjava/javax/swing/text/html/HTML.java delete mode 100644 libjava/javax/swing/text/html/HTMLDocument.java delete mode 100755 libjava/javax/swing/text/html/HTMLEditorKit.java delete mode 100644 libjava/javax/swing/text/html/HTMLFrameHyperlinkEvent.java delete mode 100755 libjava/javax/swing/text/html/parser/AttributeList.java delete mode 100755 libjava/javax/swing/text/html/parser/ContentModel.java delete mode 100755 libjava/javax/swing/text/html/parser/DTD.java delete mode 100755 libjava/javax/swing/text/html/parser/DTDConstants.java delete mode 100644 libjava/javax/swing/text/html/parser/DocumentParser.java delete mode 100755 libjava/javax/swing/text/html/parser/Element.java delete mode 100644 libjava/javax/swing/text/html/parser/Entity.java delete mode 100755 libjava/javax/swing/text/html/parser/Parser.java delete mode 100644 libjava/javax/swing/text/html/parser/ParserDelegator.java delete mode 100755 libjava/javax/swing/text/html/parser/TagElement.java delete mode 100644 libjava/javax/swing/text/rtf/ControlWordToken.java delete mode 100644 libjava/javax/swing/text/rtf/RTFEditorKit.java delete mode 100644 libjava/javax/swing/text/rtf/RTFParseException.java delete mode 100644 libjava/javax/swing/text/rtf/RTFParser.java delete mode 100644 libjava/javax/swing/text/rtf/RTFScanner.java delete mode 100644 libjava/javax/swing/text/rtf/TextToken.java delete mode 100644 libjava/javax/swing/text/rtf/Token.java delete mode 100644 libjava/javax/swing/tree/AbstractLayoutCache.java delete mode 100644 libjava/javax/swing/tree/DefaultMutableTreeNode.java delete mode 100644 libjava/javax/swing/tree/DefaultTreeCellEditor.java delete mode 100644 libjava/javax/swing/tree/DefaultTreeCellRenderer.java delete mode 100644 libjava/javax/swing/tree/DefaultTreeModel.java delete mode 100644 libjava/javax/swing/tree/DefaultTreeSelectionModel.java delete mode 100644 libjava/javax/swing/tree/ExpandVetoException.java delete mode 100644 libjava/javax/swing/tree/FixedHeightLayoutCache.java delete mode 100644 libjava/javax/swing/tree/MutableTreeNode.java delete mode 100644 libjava/javax/swing/tree/RowMapper.java delete mode 100644 libjava/javax/swing/tree/TreeCellEditor.java delete mode 100644 libjava/javax/swing/tree/TreeCellRenderer.java delete mode 100644 libjava/javax/swing/tree/TreeModel.java delete mode 100644 libjava/javax/swing/tree/TreeNode.java delete mode 100644 libjava/javax/swing/tree/TreePath.java delete mode 100644 libjava/javax/swing/tree/TreeSelectionModel.java delete mode 100644 libjava/javax/swing/tree/VariableHeightLayoutCache.java delete mode 100644 libjava/javax/swing/undo/AbstractUndoableEdit.java delete mode 100644 libjava/javax/swing/undo/CannotRedoException.java delete mode 100644 libjava/javax/swing/undo/CannotUndoException.java delete mode 100644 libjava/javax/swing/undo/CompoundEdit.java delete mode 100644 libjava/javax/swing/undo/StateEdit.java delete mode 100644 libjava/javax/swing/undo/StateEditable.java delete mode 100644 libjava/javax/swing/undo/UndoManager.java delete mode 100644 libjava/javax/swing/undo/UndoableEdit.java delete mode 100644 libjava/javax/swing/undo/UndoableEditSupport.java delete mode 100644 libjava/javax/transaction/HeuristicCommitException.java delete mode 100644 libjava/javax/transaction/HeuristicMixedException.java delete mode 100644 libjava/javax/transaction/HeuristicRollbackException.java delete mode 100644 libjava/javax/transaction/InvalidTransactionException.java delete mode 100644 libjava/javax/transaction/NotSupportedException.java delete mode 100644 libjava/javax/transaction/RollbackException.java delete mode 100644 libjava/javax/transaction/Status.java delete mode 100644 libjava/javax/transaction/Synchronization.java delete mode 100644 libjava/javax/transaction/SystemException.java delete mode 100644 libjava/javax/transaction/Transaction.java delete mode 100644 libjava/javax/transaction/TransactionManager.java delete mode 100644 libjava/javax/transaction/TransactionRequiredException.java delete mode 100644 libjava/javax/transaction/TransactionRolledbackException.java delete mode 100644 libjava/javax/transaction/UserTransaction.java delete mode 100644 libjava/javax/transaction/xa/XAException.java delete mode 100644 libjava/javax/transaction/xa/XAResource.java delete mode 100644 libjava/javax/transaction/xa/Xid.java delete mode 100644 libjava/javax/xml/XMLConstants.java delete mode 100644 libjava/javax/xml/datatype/DatatypeConfigurationException.java delete mode 100644 libjava/javax/xml/datatype/DatatypeConstants.java delete mode 100644 libjava/javax/xml/datatype/DatatypeFactory.java delete mode 100644 libjava/javax/xml/datatype/Duration.java delete mode 100644 libjava/javax/xml/datatype/XMLGregorianCalendar.java delete mode 100644 libjava/javax/xml/namespace/NamespaceContext.java delete mode 100644 libjava/javax/xml/namespace/QName.java delete mode 100644 libjava/javax/xml/parsers/DocumentBuilder.java delete mode 100644 libjava/javax/xml/parsers/DocumentBuilderFactory.java delete mode 100644 libjava/javax/xml/parsers/FactoryConfigurationError.java delete mode 100644 libjava/javax/xml/parsers/ParserConfigurationException.java delete mode 100644 libjava/javax/xml/parsers/SAXParser.java delete mode 100644 libjava/javax/xml/parsers/SAXParserFactory.java delete mode 100644 libjava/javax/xml/transform/ErrorListener.java delete mode 100644 libjava/javax/xml/transform/OutputKeys.java delete mode 100644 libjava/javax/xml/transform/Result.java delete mode 100644 libjava/javax/xml/transform/Source.java delete mode 100644 libjava/javax/xml/transform/SourceLocator.java delete mode 100644 libjava/javax/xml/transform/Templates.java delete mode 100644 libjava/javax/xml/transform/Transformer.java delete mode 100644 libjava/javax/xml/transform/TransformerConfigurationException.java delete mode 100644 libjava/javax/xml/transform/TransformerException.java delete mode 100644 libjava/javax/xml/transform/TransformerFactory.java delete mode 100644 libjava/javax/xml/transform/TransformerFactoryConfigurationError.java delete mode 100644 libjava/javax/xml/transform/URIResolver.java delete mode 100644 libjava/javax/xml/transform/dom/DOMLocator.java delete mode 100644 libjava/javax/xml/transform/dom/DOMResult.java delete mode 100644 libjava/javax/xml/transform/dom/DOMSource.java delete mode 100644 libjava/javax/xml/transform/sax/SAXResult.java delete mode 100644 libjava/javax/xml/transform/sax/SAXSource.java delete mode 100644 libjava/javax/xml/transform/sax/SAXTransformerFactory.java delete mode 100644 libjava/javax/xml/transform/sax/TemplatesHandler.java delete mode 100644 libjava/javax/xml/transform/sax/TransformerHandler.java delete mode 100644 libjava/javax/xml/transform/stream/StreamResult.java delete mode 100644 libjava/javax/xml/transform/stream/StreamSource.java delete mode 100644 libjava/javax/xml/validation/Schema.java delete mode 100644 libjava/javax/xml/validation/SchemaFactory.java delete mode 100644 libjava/javax/xml/validation/TypeInfoProvider.java delete mode 100644 libjava/javax/xml/validation/Validator.java delete mode 100644 libjava/javax/xml/validation/ValidatorHandler.java delete mode 100644 libjava/javax/xml/xpath/XPath.java delete mode 100644 libjava/javax/xml/xpath/XPathConstants.java delete mode 100644 libjava/javax/xml/xpath/XPathException.java delete mode 100644 libjava/javax/xml/xpath/XPathExpression.java delete mode 100644 libjava/javax/xml/xpath/XPathExpressionException.java delete mode 100644 libjava/javax/xml/xpath/XPathFactory.java delete mode 100644 libjava/javax/xml/xpath/XPathFactoryConfigurationException.java delete mode 100644 libjava/javax/xml/xpath/XPathFunction.java delete mode 100644 libjava/javax/xml/xpath/XPathFunctionException.java delete mode 100644 libjava/javax/xml/xpath/XPathFunctionResolver.java delete mode 100644 libjava/javax/xml/xpath/XPathVariableResolver.java delete mode 100644 libjava/jni/classpath/classpath_jawt.h delete mode 100644 libjava/jni/classpath/native_state.c delete mode 100644 libjava/jni/classpath/native_state.h delete mode 100644 libjava/jni/gtk-peer/gdkfont.h delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkTextLayout.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFramePeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c delete mode 100644 libjava/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c delete mode 100644 libjava/jni/gtk-peer/gthread-jni.c delete mode 100644 libjava/jni/gtk-peer/gthread-jni.h delete mode 100644 libjava/jni/gtk-peer/gtk_jawt.c delete mode 100644 libjava/jni/gtk-peer/gtkcairopeer.h delete mode 100644 libjava/jni/gtk-peer/gtkpeer.h delete mode 100644 libjava/org/ietf/jgss/ChannelBinding.java delete mode 100644 libjava/org/ietf/jgss/GSSContext.java delete mode 100644 libjava/org/ietf/jgss/GSSCredential.java delete mode 100644 libjava/org/ietf/jgss/GSSException.java delete mode 100644 libjava/org/ietf/jgss/GSSManager.java delete mode 100644 libjava/org/ietf/jgss/GSSName.java delete mode 100644 libjava/org/ietf/jgss/MessageProp.java delete mode 100644 libjava/org/ietf/jgss/MessagesBundle.properties delete mode 100644 libjava/org/ietf/jgss/Oid.java create mode 100755 libjava/scripts/makemake.tcl create mode 100644 libjava/sources.am create mode 100644 libjava/standard.omit diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 4fae8576c86..8870799b4e5 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,28 @@ +2005-07-15 Tom Tromey + + Major merge with Classpath. + Removed many duplicate files. + * HACKING: Updated.x + * classpath: Imported new directory. + * standard.omit: New file. + * Makefile.in, aclocal.m4, configure: Rebuilt. + * sources.am: New file. + * configure.ac: Run Classpath configure script. Moved code around + to support. Disable xlib AWT peers (temporarily). + * Makefile.am (SUBDIRS): Added 'classpath' + (JAVAC): Removed. + (AM_CPPFLAGS): Added more -I options. + (BOOTCLASSPATH): Simplified. + Completely redid how sources are built. + Include sources.am. + * include/Makefile.am (tool_include__HEADERS): Removed jni.h. + * include/jni.h: Removed (in Classpath). + * scripts/classes.pl: Updated to look at built classes. + * scripts/makemake.tcl: New file. + * testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Added + -I options. + (gcj_jni_invocation_compile_c_to_binary): Likewise. + 2005-07-15 Scott Gilbertson * gnu/awt/xlib/XCanvasPeer.java (attributes): New field. diff --git a/libjava/HACKING b/libjava/HACKING index a26590596a1..df74b06414e 100644 --- a/libjava/HACKING +++ b/libjava/HACKING @@ -7,36 +7,46 @@ explained in this HACKING file. Please add them if you discover them :) -- -A lot of the standard library files come from the GNU Classpath project. - -The libgcj and Classpath project have officially merged, but the merge -is not yet complete. Our eventual goal is for Classpath to be an upstream -source provider for libgcj, however it will be some time before this becomes -reality: libgcj and Classpath have different implementations of many core -java classes. In order to merge them, we need to select the best (most -efficient, cleanest) implementation of each method/class/package, resolve -any conflicts created by the merge, and test the final result. +libgcj uses GNU Classpath as an upstream provider. Snapshots of +Classpath are imported into the libgcj source tree. Some classes are +overridden by local versions; these files still appear in the libgcj +tree. -The merged files can be recognized by the standard Classpath copyright -comments at the top of the file. If you make changes to these files -then you should also check in the fix to Classpath. For small changes -it may be easier to send a patch to the classpath mailinglist. For -large changes, if you have direct write access to the libgcj tree, -then you will also need to get a Classpath account and do the work -yourself. - - +To import a new release: + +- Check out a classpath snapshot +- Use auto* to create configure, Makefile.in, etc + You have to make sure to use the gcc libtool.m4 and gcc lt* scripts + cd .../classpath + cp ../../lt* . + aclocal -I m4 -I ../.. + autoconf + autoheader + automake + rm -rf autom4te.cache +- Test everything first. The simplest way to do this is by overlaying + the checked out classpath on your gcc tree and then doing a build. +- Use 'cvs import' to import. The vendor tag is 'CLASSPATH'. For the + release tag, if this is a released classpath version, use something + like 'classpath-import-VERSION'; otherwise something like + 'classpath-import-DATE'. + Be sure to use -ko and -I\! +- Remove any files that were deleted in Classpath +- Run 'scripts/makemake.tcl > sources.am' in the source tree +- Run automake for libgcj + +Over time we plan to remove as many of the remaining divergences as +possible. + +File additions and deletions require running scripts/makemake.tcl +before running automake. -If you merge a libgcj class with a classpath class then you must update the -copyright notice at the top of the file so others can see that this is a -shared libgcj/classpath file. -- If you need to add new java files to libgcj then you have to edit the Makefile.am file in the top (libjava) directory. And run automake. -Tom Tromey adds: If you add a class to java.lang, java.io, or java.util (including sub-packages, like java.lang.ref). @@ -45,8 +55,10 @@ If you add a class to java.lang, java.io, or java.util * Go to the `namespace java' line, and delete that entire block (the entire contents of the namespace) -* Then insert the output of `perl ../scripts/classes.pl' into the file - at that point. +* Then insert the output of `perl scripts/classes.pl' into the file + at that point. This must be run from the build tree, in + /classpath/lib; it uses the .class file name to determine + what to print. If you're generating a patch there is a program you can get to do an offline `cvs add' (it will fake an `add' if you don't have write diff --git a/libjava/Makefile.am b/libjava/Makefile.am index ac0457e224b..bd1c267d5dd 100644 --- a/libjava/Makefile.am +++ b/libjava/Makefile.am @@ -7,7 +7,7 @@ ACLOCAL_AMFLAGS = -I . -I ../config # May be used by various substitution variables. gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER) -SUBDIRS = $(DIRLTDL) gcj include external +SUBDIRS = $(DIRLTDL) gcj include classpath if TESTSUBDIR SUBDIRS += testsuite endif @@ -94,8 +94,6 @@ GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated GCJLINK = $(LIBTOOL) --tag=GCJ --mode=link $(GCJ) -L$(here) $(JC1FLAGS) $(LDFLAGS) -o $@ LIBLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXX) -L$(here) $(JC1FLAGS) $(LDFLAGS) -o $@ -JAVAC = $(GCJ_WITH_FLAGS) -C - GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@ WARNINGS = -Wextra -Wall @@ -145,77 +143,23 @@ JC1FLAGS = @LIBGCJ_JAVAFLAGS@ $(GCJFLAGS) LIBFFIINCS = @LIBFFIINCS@ -AM_CPPFLAGS = -I$(top_srcdir) -Iinclude -I$(top_srcdir)/include \ +AM_CPPFLAGS = -I$(top_srcdir) \ + -Iinclude -I$(top_srcdir)/include \ + -I$(top_srcdir)/classpath/include \ + -I$(top_srcdir)/classpath/native/fdlibm \ $(GCINCS) $(THREADINCS) $(INCLTDL) \ $(GCC_UNWIND_INCLUDE) $(ZINCS) $(LIBFFIINCS) -BOOTCLASSPATH = $(here)'$(CLASSPATH_SEPARATOR)'$(srcdir)'$(CLASSPATH_SEPARATOR)'$(srcdir)/external/w3c_dom'$(CLASSPATH_SEPARATOR)'$(srcdir)/external/sax +BOOTCLASSPATH = $(here)/classpath/lib ## ################################################################ -# Files for which we build .lo files -all_native_compiled_source_files = \ - $(java_source_files) \ - $(built_java_source_files) \ - $(xlib_java_source_files) - -# Files for which we build .class files -# It *must* begin with $(all_native_compiled_source_files) -all_java_source_files = \ - $(all_native_compiled_source_files) \ - $(gtk_awt_peer_source_files) \ - $(gnu_xml_source_files) \ - $(javax_imageio_source_files) \ - $(javax_xml_source_files) \ - $(gnu_java_beans_source_files) \ - gnu/gcj/tools/gcj_dbtool/Main.java - -EXTRA_DIST = $(all_java_source_files) - -# Build dependencies between java, class and lo files. They are included -# below, together with automatically-generated dependencies between Java -# files. -# -# Dependencies from Java to .class files -# -------------------------------------- -# Each directory's filelist file depends on the corresponding Java source files. -# The stamp file depends on the filelist (using a `Static Pattern Rule'). -# Each class file depends on the its directory's .stamp file. This reflects -# the fact that 1) all classfiles are compiled in one go when the .stamp file -# is built and 2) anything which depends on a particular .class file must wait -# until its directory is processed and the .stamp file is created. -# -# Dependencies from Java to .lo files -# ----------------------------------- -# As above, each directory's filelist file depends on the corresponding Java -# source files, and the stamp file depends on the filelist. For native -# compilation, the lo file depends on the stamp file (also using a `Static -# Pattern Rule'). So, when one Java file changes, the filelist file is -# updated, the stamp file rule builds the .class files, and the .lo file rule -# recompiles to native code. -Makefile.deps: $(srcdir)/Makefile.in - @: $(call write_entries_to_file,$(all_java_source_files),files.tmplist) - echo 's,^\(.*\)/\([^/]*\)\.java$$,\1.list: &\' > tmpsed - echo '\1/\2.class: \1.stamp,' >> tmpsed - sed -ftmpsed files.tmplist > Makefile.deps - rm files.tmplist tmpsed - -all_native_compiled_dirs = $(sort $(patsubst %/, %, $(dir $(all_native_compiled_source_files)))) -all_java_dirs = $(sort $(patsubst %/, %, $(dir $(all_java_source_files)))) -all_java_lo_files = $(all_native_compiled_dirs:=.lo) -all_java_deps_files = $(all_java_dirs:=.deps) -all_java_stamp_files = $(all_java_dirs:=.stamp) -all_java_filelist_files = $(all_java_dirs:=.list) - # In the future these may be defined manually, if we decide to split libgcj.so # into multiple shared libraries. For now, everything but xlib goes into # all_libgcj_lo_files all_xlib_lo_files = gnu/gcj/xlib.lo gnu/awt/xlib.lo all_libgcj_lo_files = $(filter-out $(all_xlib_lo_files), $(all_java_lo_files)) -# Include automatically generated dependencies between Java source files. --include Makefile.deps $(all_java_deps_files) - all_property_files = $(property_files) \ java/util/logging/logging.properties @@ -233,7 +177,8 @@ libgij_la_LDFLAGS = -rpath $(toolexeclibdir) \ libgcj_la_SOURCES = prims.cc jni.cc exception.cc stacktrace.cc \ link.cc defineclass.cc interpret.cc verify.cc \ - $(nat_source_files) $(math_c_source_files) + java/lang/Class.java java/lang/Object.java \ + $(nat_source_files) if USING_BOEHMGC libgcj_la_SOURCES += boehm.cc @@ -282,14 +227,13 @@ libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) $(THREADLDFLAGS) $(THREADLIBS) \ $(LIBLTDL) $(SYS_ZLIBS) \ -version-info `grep -v '^\#' $(srcdir)/libtool-version` libgcj_la_LIBADD = \ - $(all_libgcj_lo_files) \ - gnu-xml.lo javax-imageio.lo \ - javax-xml.lo gnu-java-beans.lo \ - external/sax/libsax-gcj.la \ - external/w3c_dom/libw3c-gcj.la \ - $(LIBFFI) $(ZLIBS) $(GCLIBS) $(propertyo_files) + classpath/native/fdlibm/libfdlibm.la \ + $(all_packages_source_files:.list=.lo) \ + $(bc_objects) \ + $(propertyo_files) \ + $(LIBFFI) $(ZLIBS) $(GCLIBS) libgcj_la_DEPENDENCIES = libgcj-$(gcc_version).jar \ - java/lang/fdlibm.h java/lang/ieeefp.h java/lang/mprec.h \ + $(all_packages_source_files:.list=.lo) \ $(LIBLTDL) $(libgcj_la_LIBADD) libgcj_la_LINK = $(LIBLINK) @@ -304,210 +248,26 @@ $(db_name): gcj-dbtool$(EXEEXT) ## not available. ./gcj-dbtool -n $(db_name) || touch $(db_name) -## Gtk JNI sources. -lib_gnu_java_awt_peer_gtk_la_SOURCES = \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkTextLayout.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFramePeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c \ -jni/gtk-peer/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.c \ -jni/gtk-peer/gthread-jni.c \ -jni/gtk-peer/gtk_jawt.c \ -jni/classpath/native_state.c \ -jni/gtk-peer/gthread-jni.h \ -jni/gtk-peer/gtkpeer.h \ -jni/classpath/native_state.h - -# Gtk/Cairo JNI sources. -if GTK_CAIRO -lib_gnu_java_awt_peer_gtk_la_SOURCES += jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c -endif - -## Java sources for Gtk peers. -gtk_awt_peer_source_files = \ -gnu/java/awt/peer/gtk/GdkTextLayout.java \ -gnu/java/awt/peer/gtk/GdkFontMetrics.java \ -gnu/java/awt/peer/gtk/GdkFontPeer.java \ -gnu/java/awt/peer/gtk/GdkGlyphVector.java \ -gnu/java/awt/peer/gtk/GdkGraphics.java \ -gnu/java/awt/peer/gtk/GdkGraphics2D.java \ -gnu/java/awt/peer/gtk/GdkGraphicsConfiguration.java \ -gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java \ -gnu/java/awt/peer/gtk/GdkPixbufDecoder.java \ -gnu/java/awt/peer/gtk/GdkRobotPeer.java \ -gnu/java/awt/peer/gtk/GdkScreenGraphicsDevice.java \ -gnu/java/awt/peer/gtk/GtkButtonPeer.java \ -gnu/java/awt/peer/gtk/GtkCanvasPeer.java \ -gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java \ -gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java \ -gnu/java/awt/peer/gtk/GtkCheckboxPeer.java \ -gnu/java/awt/peer/gtk/GtkChoicePeer.java \ -gnu/java/awt/peer/gtk/GtkClipboard.java \ -gnu/java/awt/peer/gtk/GtkComponentPeer.java \ -gnu/java/awt/peer/gtk/GtkContainerPeer.java \ -gnu/java/awt/peer/gtk/GtkDialogPeer.java \ -gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java \ -gnu/java/awt/peer/gtk/GtkFileDialogPeer.java \ -gnu/java/awt/peer/gtk/GtkFramePeer.java \ -gnu/java/awt/peer/gtk/GtkGenericPeer.java \ -gnu/java/awt/peer/gtk/GtkImage.java \ -gnu/java/awt/peer/gtk/GtkImagePainter.java \ -gnu/java/awt/peer/gtk/GtkLabelPeer.java \ -gnu/java/awt/peer/gtk/GtkListPeer.java \ -gnu/java/awt/peer/gtk/GtkMenuBarPeer.java \ -gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java \ -gnu/java/awt/peer/gtk/GtkMenuItemPeer.java \ -gnu/java/awt/peer/gtk/GtkMenuPeer.java \ -gnu/java/awt/peer/gtk/GtkOffScreenImage.java \ -gnu/java/awt/peer/gtk/GtkPanelPeer.java \ -gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java \ -gnu/java/awt/peer/gtk/GtkScrollPanePeer.java \ -gnu/java/awt/peer/gtk/GtkScrollbarPeer.java \ -gnu/java/awt/peer/gtk/GtkTextAreaPeer.java \ -gnu/java/awt/peer/gtk/GtkTextComponentPeer.java \ -gnu/java/awt/peer/gtk/GtkTextFieldPeer.java \ -gnu/java/awt/peer/gtk/GtkToolkit.java \ -gnu/java/awt/peer/gtk/GtkVolatileImage.java \ -gnu/java/awt/peer/gtk/GtkWindowPeer.java \ -gnu/java/awt/peer/gtk/GThreadMutex.java \ -gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java - - -gtk_jni_headers = $(patsubst %.java,jniinclude/%.h,$(subst /,_,$(gtk_awt_peer_source_files))) - -jniinclude/gnu_java_awt_peer_gtk_GdkGraphics.h: gnu/java/awt/peer/gtk/GdkGraphics.java -jniinclude/gnu_java_awt_peer_gtk_GdkGraphics2D.h: gnu/java/awt/peer/gtk/GdkGraphics2D.java -jniinclude/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.h: gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java -jniinclude/gnu_java_awt_peer_gtk_GdkPixbufDecoder.h: gnu/java/awt/peer/gtk/GdkPixbufDecoder.java -jniinclude/gnu_java_awt_peer_gtk_GtkButtonPeer.h: gnu/java/awt/peer/gtk/GtkButtonPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkCanvasPeer.h: gnu/java/awt/peer/gtk/GtkCanvasPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.h: gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.h: gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkCheckboxPeer.h: gnu/java/awt/peer/gtk/GtkCheckboxPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkChoicePeer.h: gnu/java/awt/peer/gtk/GtkChoicePeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkClipboard.h: gnu/java/awt/peer/gtk/GtkClipboard.java -jniinclude/gnu_java_awt_peer_gtk_GtkComponentPeer.h: gnu/java/awt/peer/gtk/GtkComponentPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkContainerPeer.h: gnu/java/awt/peer/gtk/GtkContainerPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkDialogPeer.h: gnu/java/awt/peer/gtk/GtkDialogPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.h: gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkFileDialogPeer.h: gnu/java/awt/peer/gtk/GtkFileDialogPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkFontPeer.h: gnu/java/awt/peer/gtk/GtkFontPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkFramePeer.h: gnu/java/awt/peer/gtk/GtkFramePeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkGenericPeer.h: gnu/java/awt/peer/gtk/GtkGenericPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkImage.h: gnu/java/awt/peer/gtk/GtkImage.java -jniinclude/gnu_java_awt_peer_gtk_GtkImagePainter.h: gnu/java/awt/peer/gtk/GtkImagePainter.java -jniinclude/gnu_java_awt_peer_gtk_GtkLabelPeer.h: gnu/java/awt/peer/gtk/GtkLabelPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkListPeer.h: gnu/java/awt/peer/gtk/GtkListPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkMenuBarPeer.h: gnu/java/awt/peer/gtk/GtkMenuBarPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.h: gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkMenuItemPeer.h: gnu/java/awt/peer/gtk/GtkMenuItemPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkMenuPeer.h: gnu/java/awt/peer/gtk/GtkMenuPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkOffScreenImage.h: gnu/java/awt/peer/gtk/GtkOffScreenImage.java -jniinclude/gnu_java_awt_peer_gtk_GtkPanelPeer.h: gnu/java/awt/peer/gtk/GtkPanelPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.h: gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkScrollPanePeer.h: gnu/java/awt/peer/gtk/GtkScrollPanePeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkScrollbarPeer.h: gnu/java/awt/peer/gtk/GtkScrollbarPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkTextAreaPeer.h: gnu/java/awt/peer/gtk/GtkTextAreaPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkTextComponentPeer.h: gnu/java/awt/peer/gtk/GtkTextComponentPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkTextFieldPeer.h: gnu/java/awt/peer/gtk/GtkTextFieldPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkToolkit.h: gnu/java/awt/peer/gtk/GtkToolkit.java -jniinclude/gnu_java_awt_peer_gtk_GtkWindowPeer.h: gnu/java/awt/peer/gtk/GtkWindowPeer.java -jniinclude/gnu_java_awt_peer_gtk_GThreadMutex.h: gnu/java/awt/peer/gtk/GThreadMutex.java -jniinclude/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.h: gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java -jniinclude/gnu_java_awt_peer_gtk_GdkTextLayout.h: gnu/java/awt/peer/gtk/GdkTextLayout.java -jniinclude/gnu_java_awt_peer_gtk_GdkFontPeer.h: gnu/java/awt/peer/gtk/GdkFontPeer.java - -$(gtk_jni_headers): %.h: - @input=`echo $@ | sed -e 's,jniinclude/,,' -e 's,_,.,g' -e 's,.h$$,,'`; \ - echo "$(GCJH) -jni -d jniinclude -classpath '' -bootclasspath $(top_builddir) $$input"; \ - $(GCJH) -jni -d jniinclude -classpath '' -bootclasspath $(top_builddir) $$input - -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GdkFontPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GdkGraphics2D.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GdkGraphics.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GdkPixbufDecoder.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkTextLayout.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GdkTextLayout.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkButtonPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkCanvasPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkCheckboxPeer.h $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkComponentPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkChoicePeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkClipboard.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkComponentPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkFileDialogPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFramePeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkFramePeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkGenericPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkImagePainter.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkLabelPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkListPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkMenuBarPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkMenuItemPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkMenuPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkPanelPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkScrollbarPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkScrollPanePeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkTextAreaPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkTextComponentPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkTextFieldPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkToolkit.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkWindowPeer.h - - ## For the peer library, DEPENDENCIES need to come before OBJECTS so ## that JNI headers are built before JNI C files. $(lib_gnu_java_awt_peer_gtk_la_OBJECTS): $(lib_gnu_java_awt_peer_gtk_la_DEPENDENCIES) -lib_gnu_java_awt_peer_gtk_la_CFLAGS = \ - -Ijniinclude -I$(srcdir)/jni/classpath \ - -I$(srcdir)/jni/gtk-peer $(PEDANTIC_CFLAGS) $(GTK_CFLAGS) $(LIBART_CFLAGS) \ - $(X_CFLAGS) $(CAIRO_CFLAGS) $(PANGOFT2_CFLAGS) -lib_gnu_java_awt_peer_gtk_la_GCJFLAGS = $(AM_GCJFLAGS) -fjni -lib_gnu_java_awt_peer_gtk_la_LIBADD = gtk-awt-peer.lo $(GTK_LIBS) $(GLIB_LIBS) $(LIBART_LIBS) $(CAIRO_LIBS) $(PANGOFT2_LIBS) -lib_gnu_java_awt_peer_gtk_la_DEPENDENCIES = gtk-awt-peer.lo $(gtk_jni_headers) libgcj-$(gcc_version).jar libgcj.la libgcj.spec +lib_gnu_java_awt_peer_gtk_la_SOURCES = +lib_gnu_java_awt_peer_gtk_la_LIBADD = \ + gnu-java-awt-peer-gtk.lo \ + classpath/native/jni/gtk-peer/libgtkpeer.la \ + $(GTK_LIBS) $(GLIB_LIBS) $(LIBART_LIBS) $(CAIRO_LIBS) $(PANGOFT2_LIBS) +lib_gnu_java_awt_peer_gtk_la_DEPENDENCIES = gnu-java-awt-peer-gtk.lo \ + classpath/native/jni/gtk-peer/libgtkpeer.la \ + libgcj-$(gcc_version).jar libgcj.la libgcj.spec ## The mysterious backslash in the grep pattern is consumed by make. lib_gnu_java_awt_peer_gtk_la_LDFLAGS = \ -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(LIBGCJ_LD_SYMBOLIC) $(X_LIBS) -lXtst lib_gnu_java_awt_peer_gtk_la_LINK = $(LIBLINK) libgcjawt_la_SOURCES = jawt.c -libgcjawt_la_CFLAGS = -I$(srcdir)/jni/classpath $(PEDANTIC_CFLAGS) $(X_CFLAGS) +libgcjawt_la_CFLAGS = -I$(srcdir)/classpath/native/jni/classpath \ + $(PEDANTIC_CFLAGS) $(X_CFLAGS) ## See jv_convert_LDADD. libgcjawt_la_LIBADD = -L$(here)/.libs lib-gnu-java-awt-peer-gtk.la libgcjawt_la_LDFLAGS = \ @@ -534,72 +294,33 @@ lib_gnu_awt_xlib_la_LINK = $(LIBLINK) ## Build property files into the library. property_files = \ -gnu/regexp/MessagesBundle.properties \ -gnu/regexp/MessagesBundle_fr.properties \ -org/ietf/jgss/MessagesBundle.properties +classpath/resource/org/ietf/jgss/MessagesBundle.properties \ +classpath/resource/java/util/iso4217.properties \ +classpath/resource/gnu/java/awt/peer/gtk/font.properties \ +classpath/resource/gnu/regexp/MessagesBundle_it.properties \ +classpath/resource/gnu/regexp/MessagesBundle_fr.properties \ +classpath/resource/gnu/regexp/MessagesBundle.properties -propertyo_files = $(property_files:.properties=.properties.lo) +propertyo_files = $(patsubst classpath/resource/%,%,$(property_files:.properties=.properties.lo)) -%.properties.lo: %.properties - $(LTGCJCOMPILE) -o $@ -c $< -Wc,--resource,`echo $@ | sed "s/\.lo$$//"` +$(propertyo_files): %.properties.lo: classpath/resource/%.properties + $(mkinstalldirs) `dirname $@`; \ + $(LTGCJCOMPILE) -o $@ -c $< -Wc,--resource,$(@:.lo=) -# Compile one directory in one go. If the files have to be compiled with the -# binary compatibility ABI, only make the .class here -- the .lo is made -# elsewhere in this Makefile. +libgcj-$(gcc_version).jar: + jardir=`dirname $(ZIP)`; \ + jardir=`cd $$jardir && pwd`; \ + jarname=`basename $(ZIP)`; \ + cd classpath/lib; $$jardir/$$jarname -cfM \ + ../../libgcj-$(gcc_version).jar gnu java javax org -%.list: - @: $(shell $(mkinstalldirs) $(basename $@)) - @: $(call write_entries_to_file,$^,$@) - -$(all_java_lo_files): %.lo: %.stamp - $(LTGCJCOMPILE) -o $@ -c @${<:.stamp=.list} - -$(all_java_stamp_files): %.stamp: %.list - $(JAVAC) $(JCFLAGS) -classpath '' -bootclasspath $(BOOTCLASSPATH) -d $(here) \ - -MD -MF ${@:.stamp=.deps} @$< - echo timestamp > $@ - -classes.stamp: $(all_property_files) $(all_java_stamp_files) - echo timestamp > classes.stamp - -libgcj-$(gcc_version).jar: classes.stamp - -@rm -f libgcj-$(gcc_version).jar -## Note that we explicitly want to include directory information. - (find java gnu javax org -type d -o -type f -name '*.class'; \ -## Ugly code to avoid "echo -C". Must separate each entry by a newline -## Gross but easy. - for file in $(all_property_files); do \ - echo "x-C" | sed -e 's/^.//'; \ - echo $(srcdir); \ - echo $$file; \ - done) | \ - sed -e '/\/xlib/d' -e '/\/\.libs/d' -e '/\/\.deps/d' | \ - $(ZIP) -cfM0E@ $@ -## Now include the classes from external/. - for dir in sax w3c_dom; do \ - (cd external/$$dir; \ - find org -type f -name '*.class' -print | while read file; do \ - echo "x-C" | sed -e 's/^.//'; \ - echo external/$$dir; \ - echo $$file; \ - done) | \ - $(ZIP) -ufM0E@ $@; \ - done - -CLEANFILES = libgcj-$(gcc_version).jar classes.stamp $(all_java_stamp_files) \ +CLEANFILES = libgcj-$(gcc_version).jar \ $(all_java_deps_files) $(all_java_filelist_files) -DISTCLEANFILES = Makefile.deps native.dirs bytecompile.dirs +DISTCLEANFILES = native.dirs mostlyclean-local: ## Use libtool rm to remove each libtool object find . -name '*.lo' -print | xargs $(LIBTOOL) rm -f -## Remove headers. We use GNU make trickery because otherwise -## the command line is too long. - @: $(foreach header,$(nat_headers) $(xlib_nat_headers) $(gtk_jni_headers),$(shell rm -f '$(header)')) - -clean-local: -## Remove every .class file that was created. - find . -name '*.class' -print | xargs rm -f distclean-local: ## Remove every .d file that was created. @@ -609,7 +330,7 @@ distclean-local: clean-nat: rm -f $(nat_files) $(xlib_nat_files) -SUFFIXES = .class .java .h .properties +SUFFIXES = .class .java .h .properties .list ## Pass the list of object files to libtool in a temporary file to ## avoid tripping platform command line length limits. @@ -621,66 +342,16 @@ lib-gnu-awt-xlib.la: $(lib_gnu_awt_xlib_la_OBJECTS) $(lib_gnu_awt_xlib_la_DEPEND ## ################################################################ -## -## Some packages must be built with the binary compatibility ABI. We -## compile each such package into a .so, broken down more or less by -## conceptual unit. -## +## Compiling a list of java sources to a single .o. -## Depend on the sources, even though we are going to compile the -## classes. -gnu-xml.lo: $(gnu_xml_source_files) -## FIXME: this is ugly. We want to make sure the .class files have -## been built, but we don't want a real dependency on them as this -## would cause our target to be rebuilt whenever any .java file is -## touched. - $(MAKE) classes.stamp - $(LTGCJCOMPILE) -fjni -findirect-dispatch -c -o gnu-xml.lo \ - `find gnu/xml -name '*.class' -print` +%.lo: %.list + -mkdir $(dir $@) > /dev/null 2>&1 + $(LTGCJCOMPILE) -c -o $@ -MT $@ -MD -MP -MF $(basename $@).deps @$< -## Depend on the sources, even though we are going to compile the -## classes. -javax-imageio.lo: $(javax_imageio_source_files) -## FIXME: this is ugly. We want to make sure the .class files have -## been built, but we don't want a real dependency on them as this -## would cause our target to be rebuilt whenever any .java file is -## touched. - $(MAKE) classes.stamp - $(LTGCJCOMPILE) -findirect-dispatch -c -o javax-imageio.lo \ - `find javax/imageio -name '*.class' -print` +## ################################################################ -## Depend on the sources, even though we are going to compile the -## classes. -javax-xml.lo: $(javax_xml_source_files) -## FIXME: this is ugly. We want to make sure the .class files have -## been built, but we don't want a real dependency on them as this -## would cause our target to be rebuilt whenever any .java file is -## touched. - $(MAKE) classes.stamp - $(LTGCJCOMPILE) -findirect-dispatch -c -o javax-xml.lo \ - `find javax/xml -name '*.class' -print` - -## Depend on the sources, even though we are going to compile the -## classes. -gnu-java-beans.lo: $(gnu_java_beans_source_files) -## FIXME: this is ugly. We want to make sure the .class files have -## been built, but we don't want a real dependency on them as this -## would cause our target to be rebuilt whenever any .java file is -## touched. - $(MAKE) classes.stamp - $(LTGCJCOMPILE) -findirect-dispatch -c -o gnu-java-beans.lo \ - `find gnu/java/beans -name '*.class' -print` - -## Depend on the sources, even though we are going to compile the -## classes. -gtk-awt-peer.lo: $(gtk_awt_peer_source_files) -## FIXME: this is ugly. We want to make sure the .class files have -## been built, but we don't want a real dependency on them as this -## would cause our target to be rebuilt whenever any .java file is -## touched. - $(MAKE) classes.stamp - $(LTGCJCOMPILE) -findirect-dispatch -fjni -c -o gtk-awt-peer.lo \ - `find gnu/java/awt/peer/gtk -name '*.class' -print` +## This pulls in a number of variable and target definitions. +include sources.am ## ################################################################ @@ -688,13 +359,19 @@ gtk-awt-peer.lo: $(gtk_awt_peer_source_files) ## How to build header files. ## -%.h: %.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) $(basename $<) +## We have special rules for certain headers. +omitted_headers = java/lang/ClassLoader.h java/lang/Thread.h \ + java/lang/String.h java/lang/reflect/Constructor.h \ + java/lang/reflect/Field.h java/lang/reflect/Method.h \ + java/lang/reflect/Proxy.h gnu/gcj/runtime/ExtensionClassLoader.h -## Header files used when compiling some of the nat* files. -ordinary_nat_headers = \ - $(ordinary_java_source_files:.java=.h) \ - $(built_java_source_files:.java=.h) +generic_header_files = $(filter-out $(omitted_headers),$(ordinary_header_files) $(xlib_nat_headers)) \ + gnu/gcj/tools/gcj_dbtool/Main.h + +$(generic_header_files): %.h: classpath/lib/%.class + name=`echo $< | sed -e 's/\.class$$//' -e 's,classpath/lib/,,'`; \ + $(mkinstalldirs) `dirname $$name`; \ + $(GCJH) -d . -classpath '' -bootclasspath classpath/lib $$name inner_nat_headers = java/io/ObjectOutputStream$$PutField.h \ java/io/ObjectInputStream$$GetField.h \ @@ -709,23 +386,22 @@ inner_nat_headers = java/io/ObjectOutputStream$$PutField.h \ gnu/java/nio/PipeImpl$$SourceChannelImpl.h \ $(PLATFORM_INNER_NAT_HDRS) -nat_headers = $(ordinary_nat_headers) $(inner_nat_headers) gnu/gcj/tools/gcj_dbtool/Main.h -nat_headers_install = $(ordinary_nat_headers) +nat_headers = $(ordinary_header_files) $(inner_nat_headers) \ + gnu/gcj/tools/gcj_dbtool/Main.h +nat_headers_install = $(ordinary_header_files) -xlib_nat_headers = $(xlib_java_source_files:.java=.h) +xlib_nat_headers = $(patsubst %.java,%.h,$(xlib_java_source_files)) -$(ordinary_nat_headers) $(xlib_nat_headers): %.h: %.class - -java/lang/ClassLoader.h: java/lang/ClassLoader.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/ClassLoader.h: classpath/lib/java/lang/ClassLoader.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -prepend 'jclass _Jv_FindClass (_Jv_Utf8Const *name, java::lang::ClassLoader *loader);' \ -prepend 'void _Jv_RunMain (jclass klass, const char *name, int argc, const char **argv, bool is_jar);' \ -friend 'jclass (::_Jv_FindClass) (_Jv_Utf8Const *name, java::lang::ClassLoader *loader);' \ -friend 'void ::_Jv_RunMain (jclass klass, const char *name, int argc, const char **argv, bool is_jar);' \ - $(basename $<) + java/lang/ClassLoader -java/lang/Thread.h: java/lang/Thread.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/Thread.h: classpath/lib/java/lang/Thread.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -prepend 'class _Jv_JNIEnv;' \ -prepend '#define _JV_NOT_OWNER 1' \ -prepend '#define _JV_INTERRUPTED 2' \ @@ -743,10 +419,10 @@ java/lang/Thread.h: java/lang/Thread.class -friend 'java::lang::Thread* ::_Jv_AttachCurrentThread (jstring name, java::lang::ThreadGroup* group);' \ -friend 'java::lang::Thread* ::_Jv_AttachCurrentThreadAsDaemon (jstring name, java::lang::ThreadGroup* group);' \ -friend 'jint (::_Jv_DetachCurrentThread) ();' \ - $(basename $<) + java/lang/Thread -java/lang/String.h: java/lang/String.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/String.h: classpath/lib/java/lang/String.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -prepend 'jchar* _Jv_GetStringChars (jstring str);' \ -prepend 'jstring* _Jv_StringFindSlot (jchar*, jint, jint);' \ -prepend 'jstring* _Jv_StringGetSlot (jstring);' \ @@ -759,92 +435,92 @@ java/lang/String.h: java/lang/String.class -friend 'jstring (::_Jv_NewStringUtf8Const) (_Jv_Utf8Const* str);' \ -friend 'jstring (::_Jv_NewStringLatin1) (const char*, jsize);' \ -friend 'jstring (::_Jv_AllocString) (jsize);' \ - $(basename $<) + java/lang/String -java/lang/reflect/Constructor.h: java/lang/reflect/Constructor.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/reflect/Constructor.h: classpath/lib/java/lang/reflect/Constructor.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -prepend 'jmethodID _Jv_FromReflectedConstructor (java::lang::reflect::Constructor *);' \ -prepend 'jobject _Jv_JNI_ToReflectedMethod (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \ -friend 'jmethodID (::_Jv_FromReflectedConstructor) (java::lang::reflect::Constructor *);' \ -friend 'jobject (::_Jv_JNI_ToReflectedMethod) (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \ -friend 'class java::lang::Class;' \ - $(basename $<) + java/lang/reflect/Constructor -java/lang/reflect/Field.h: java/lang/reflect/Field.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/reflect/Field.h: classpath/lib/java/lang/reflect/Field.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -prepend 'jfieldID _Jv_FromReflectedField (java::lang::reflect::Field *);' \ -prepend 'jobject _Jv_JNI_ToReflectedField (_Jv_JNIEnv*, jclass, jfieldID, jboolean);' \ -friend 'jfieldID (::_Jv_FromReflectedField) (java::lang::reflect::Field *);' \ -friend 'jobject (::_Jv_JNI_ToReflectedField) (_Jv_JNIEnv*, jclass, jfieldID, jboolean);' \ -friend 'class java::lang::Class;' \ - $(basename $<) + java/lang/reflect/Field -java/lang/reflect/Method.h: java/lang/reflect/Method.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/reflect/Method.h: classpath/lib/java/lang/reflect/Method.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -prepend 'jmethodID _Jv_FromReflectedMethod (java::lang::reflect::Method *);' \ -prepend 'jobject _Jv_JNI_ToReflectedMethod (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \ -friend 'jmethodID (::_Jv_FromReflectedMethod) (java::lang::reflect::Method *);' \ -friend 'jobject (::_Jv_JNI_ToReflectedMethod) (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \ -friend 'class java::lang::Class;' \ -friend 'class java::io::ObjectInputStream;' \ - $(basename $<) + java/lang/reflect/Method -java/lang/reflect/Proxy.h: java/lang/reflect/Proxy.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ - $(basename $<) +java/lang/reflect/Proxy.h: classpath/lib/java/lang/reflect/Proxy.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ + java/lang/reflect/Proxy -java/lang/reflect/Proxy$$ProxyData.h: java/lang/reflect/Proxy.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/reflect/Proxy$$ProxyData.h: classpath/lib/java/lang/reflect/Proxy.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/lang/reflect/Proxy$$ProxyData' -java/lang/reflect/Proxy$$ProxyType.h: java/lang/reflect/Proxy.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/reflect/Proxy$$ProxyType.h: classpath/lib/java/lang/reflect/Proxy.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/lang/reflect/Proxy$$ProxyType' -gnu/gcj/runtime/ExtensionClassLoader.h: gnu/gcj/runtime/ExtensionClassLoader.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +gnu/gcj/runtime/ExtensionClassLoader.h: classpath/lib/gnu/gcj/runtime/ExtensionClassLoader.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -friend 'class ::java::lang::ClassLoader;' \ - $(basename $<) + gnu/gcj/runtime/ExtensionClassLoader -java/io/ObjectInputStream$$GetField.h: java/io/ObjectInputStream.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/io/ObjectInputStream$$GetField.h: classpath/lib/java/io/ObjectInputStream.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/io/ObjectInputStream$$GetField' -java/io/ObjectOutputStream$$PutField.h: java/io/ObjectOutputStream.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/io/ObjectOutputStream$$PutField.h: classpath/lib/java/io/ObjectOutputStream.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/io/ObjectOutputStream$$PutField' -java/nio/DirectByteBufferImpl$$ReadWrite.h: java/nio/DirectByteBufferImpl.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/nio/DirectByteBufferImpl$$ReadWrite.h: classpath/lib/java/nio/DirectByteBufferImpl.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/nio/DirectByteBufferImpl$$ReadWrite' -java/nio/channels/Pipe$$SinkChannel.h: java/nio/channels/Pipe.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/nio/channels/Pipe$$SinkChannel.h: classpath/lib/java/nio/channels/Pipe.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/nio/channels/Pipe$$SinkChannel' -java/nio/channels/Pipe$$SourceChannel.h: java/nio/channels/Pipe.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/nio/channels/Pipe$$SourceChannel.h: classpath/lib/java/nio/channels/Pipe.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/nio/channels/Pipe$$SourceChannel' -gnu/java/net/PlainSocketImpl$$SocketInputStream.h: gnu/java/net/PlainSocketImpl.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +gnu/java/net/PlainSocketImpl$$SocketInputStream.h: classpath/lib/gnu/java/net/PlainSocketImpl.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'gnu/java/net/PlainSocketImpl$$SocketInputStream' -gnu/java/net/PlainSocketImpl$$SocketOutputStream.h: gnu/java/net/PlainSocketImpl.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +gnu/java/net/PlainSocketImpl$$SocketOutputStream.h: classpath/lib/gnu/java/net/PlainSocketImpl.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'gnu/java/net/PlainSocketImpl$$SocketOutputStream' -gnu/java/nio/PipeImpl$$SinkChannelImpl.h: gnu/java/nio/PipeImpl.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +gnu/java/nio/PipeImpl$$SinkChannelImpl.h: classpath/lib/gnu/java/nio/PipeImpl.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'gnu/java/nio/PipeImpl$$SinkChannelImpl' -gnu/java/nio/PipeImpl$$SourceChannelImpl.h: gnu/java/nio/PipeImpl.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +gnu/java/nio/PipeImpl$$SourceChannelImpl.h: classpath/lib/gnu/java/nio/PipeImpl.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'gnu/java/nio/PipeImpl$$SourceChannelImpl' ## Only used by PosixProcess.java -java/lang/ConcreteProcess$$ProcessManager.h: java/lang/ConcreteProcess.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/ConcreteProcess$$ProcessManager.h: classpath/lib/java/lang/ConcreteProcess.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/lang/ConcreteProcess$$ProcessManager' ## Headers we maintain by hand and which we want to install. @@ -1022,8 +698,10 @@ jv_convert_LDADD = -L$(here)/.libs libgcj.la ## linking this program. jv_convert_DEPENDENCIES = libgcj.la libgcj.spec -gcj_dbtool_SOURCES = gnu/gcj/tools/gcj_dbtool/Main.java \ - gnu/gcj/tools/gcj_dbtool/natMain.cc +gcj_dbtool_SOURCES = \ +gnu/gcj/tools/gcj_dbtool/Main.java \ +gnu/gcj/tools/gcj_dbtool/natMain.cc + ## We need -nodefaultlibs because we want to avoid gcj's `-lgcj'. We ## need this because we are explicitly using libtool to link using the ## `.la' file. @@ -1078,2788 +756,6 @@ grmiregistry_DEPENDENCIES = libgcj.la libgcj.spec ## ################################################################ -## -## This section lists all the source files we care about. -## - -convert_source_files = \ -gnu/gcj/convert/BytesToUnicode.java \ -gnu/gcj/convert/Convert.java \ -gnu/gcj/convert/Input_8859_1.java \ -gnu/gcj/convert/Input_ASCII.java \ -gnu/gcj/convert/Input_EUCJIS.java \ -gnu/gcj/convert/Input_JavaSrc.java \ -gnu/gcj/convert/Input_SJIS.java \ -gnu/gcj/convert/Input_UnicodeBig.java \ -gnu/gcj/convert/Input_UnicodeLittle.java \ -gnu/gcj/convert/Input_UTF8.java \ -gnu/gcj/convert/Input_iconv.java \ -gnu/gcj/convert/IOConverter.java \ -gnu/gcj/convert/Output_8859_1.java \ -gnu/gcj/convert/Output_ASCII.java \ -gnu/gcj/convert/Output_EUCJIS.java \ -gnu/gcj/convert/Output_JavaSrc.java \ -gnu/gcj/convert/Output_SJIS.java \ -gnu/gcj/convert/Output_UnicodeLittleUnmarked.java \ -gnu/gcj/convert/Output_UTF8.java \ -gnu/gcj/convert/Output_iconv.java \ -gnu/gcj/convert/UnicodeToBytes.java - -## List of all .java files for which the .h file is maintained by -## hand. -special_java_source_files = java/lang/Class.java java/lang/Object.java - -gnu_java_beans_source_files = \ -gnu/java/beans/decoder/AbstractContext.java \ -gnu/java/beans/decoder/AbstractCreatableObjectContext.java \ -gnu/java/beans/decoder/AbstractElementHandler.java \ -gnu/java/beans/decoder/AbstractObjectContext.java \ -gnu/java/beans/decoder/ArrayContext.java \ -gnu/java/beans/decoder/ArrayHandler.java \ -gnu/java/beans/decoder/AssemblyException.java \ -gnu/java/beans/decoder/BooleanHandler.java \ -gnu/java/beans/decoder/ByteHandler.java \ -gnu/java/beans/decoder/CharHandler.java \ -gnu/java/beans/decoder/ClassHandler.java \ -gnu/java/beans/decoder/ConstructorContext.java \ -gnu/java/beans/decoder/Context.java \ -gnu/java/beans/decoder/DecoderContext.java \ -gnu/java/beans/decoder/DefaultExceptionListener.java \ -gnu/java/beans/decoder/DoubleHandler.java \ -gnu/java/beans/decoder/DummyContext.java \ -gnu/java/beans/decoder/DummyHandler.java \ -gnu/java/beans/decoder/ElementHandler.java \ -gnu/java/beans/decoder/FloatHandler.java \ -gnu/java/beans/decoder/GrowableArrayContext.java \ -gnu/java/beans/decoder/IndexContext.java \ -gnu/java/beans/decoder/IntHandler.java \ -gnu/java/beans/decoder/JavaHandler.java \ -gnu/java/beans/decoder/LongHandler.java \ -gnu/java/beans/decoder/MethodContext.java \ -gnu/java/beans/decoder/MethodFinder.java \ -gnu/java/beans/decoder/NullHandler.java \ -gnu/java/beans/decoder/ObjectContext.java \ -gnu/java/beans/decoder/ObjectHandler.java \ -gnu/java/beans/decoder/PersistenceParser.java \ -gnu/java/beans/decoder/PropertyContext.java \ -gnu/java/beans/decoder/ShortHandler.java \ -gnu/java/beans/decoder/SimpleHandler.java \ -gnu/java/beans/decoder/StaticMethodContext.java \ -gnu/java/beans/decoder/StringHandler.java \ -gnu/java/beans/decoder/VoidHandler.java \ -gnu/java/beans/editors/ColorEditor.java \ -gnu/java/beans/editors/FontEditor.java \ -gnu/java/beans/editors/NativeBooleanEditor.java \ -gnu/java/beans/editors/NativeByteEditor.java \ -gnu/java/beans/editors/NativeDoubleEditor.java \ -gnu/java/beans/editors/NativeFloatEditor.java \ -gnu/java/beans/editors/NativeIntEditor.java \ -gnu/java/beans/editors/NativeLongEditor.java \ -gnu/java/beans/editors/NativeShortEditor.java \ -gnu/java/beans/editors/StringEditor.java \ -gnu/java/beans/BeanInfoEmbryo.java \ -gnu/java/beans/DummyAppletContext.java \ -gnu/java/beans/DummyAppletStub.java \ -gnu/java/beans/ExplicitBeanInfo.java \ -gnu/java/beans/IntrospectionIncubator.java - -awt_java_source_files = \ -gnu/awt/LightweightRedirector.java \ -gnu/awt/j2d/AbstractGraphicsState.java \ -gnu/awt/j2d/DirectRasterGraphics.java \ -gnu/awt/j2d/Graphics2DImpl.java \ -gnu/awt/j2d/IntegerGraphicsState.java \ -gnu/awt/j2d/MappedRaster.java \ -gnu/java/awt/BitMaskExtent.java \ -gnu/java/awt/Buffers.java \ -gnu/java/awt/BitwiseXORComposite.java \ -gnu/java/awt/ComponentDataBlitOp.java \ -gnu/java/awt/ClasspathToolkit.java \ -gnu/java/awt/EmbeddedWindow.java \ -gnu/java/awt/EmbeddedWindowSupport.java \ -gnu/java/awt/EventModifier.java \ -gnu/java/awt/color/CieXyzConverter.java \ -gnu/java/awt/color/ClutProfileConverter.java \ -gnu/java/awt/color/ColorLookUpTable.java \ -gnu/java/awt/color/ColorSpaceConverter.java \ -gnu/java/awt/color/GrayProfileConverter.java \ -gnu/java/awt/color/GrayScaleConverter.java \ -gnu/java/awt/color/LinearRGBConverter.java \ -gnu/java/awt/color/ProfileHeader.java \ -gnu/java/awt/color/PyccConverter.java \ -gnu/java/awt/color/RgbProfileConverter.java \ -gnu/java/awt/color/SrgbConverter.java \ -gnu/java/awt/color/TagEntry.java \ -gnu/java/awt/color/ToneReproductionCurve.java \ -gnu/java/awt/image/ImageDecoder.java \ -gnu/java/awt/image/XBMDecoder.java \ -gnu/java/awt/peer/EmbeddedWindowPeer.java \ -gnu/java/awt/peer/GLightweightPeer.java \ -gnu/java/awt/peer/ClasspathFontPeer.java \ -gnu/java/awt/peer/ClasspathTextLayoutPeer.java \ -gnu/javax/swing/text/html/parser/support/gnuStringIntMapper.java \ -gnu/javax/swing/text/html/parser/support/parameterDefaulter.java \ -gnu/javax/swing/text/html/parser/support/Parser.java \ -gnu/javax/swing/text/html/parser/support/textPreProcessor.java \ -gnu/javax/swing/text/html/parser/support/low/Buffer.java \ -gnu/javax/swing/text/html/parser/support/low/Constants.java \ -gnu/javax/swing/text/html/parser/support/low/Location.java \ -gnu/javax/swing/text/html/parser/support/low/node.java \ -gnu/javax/swing/text/html/parser/support/low/ParseException.java \ -gnu/javax/swing/text/html/parser/support/low/pattern.java \ -gnu/javax/swing/text/html/parser/support/low/Queue.java \ -gnu/javax/swing/text/html/parser/support/low/ReaderTokenizer.java \ -gnu/javax/swing/text/html/parser/support/low/Token.java \ -gnu/javax/swing/text/html/parser/gnuDTD.java \ -gnu/javax/swing/text/html/parser/HTML_401F.java \ -gnu/javax/swing/text/html/parser/htmlAttributeSet.java \ -gnu/javax/swing/text/html/parser/htmlValidator.java \ -gnu/javax/swing/text/html/parser/models/list.java \ -gnu/javax/swing/text/html/parser/models/node.java \ -gnu/javax/swing/text/html/parser/models/noTagModel.java \ -gnu/javax/swing/text/html/parser/models/PCDATAonly_model.java \ -gnu/javax/swing/text/html/parser/models/TableRowContentModel.java \ -gnu/javax/swing/text/html/parser/models/transformer.java \ -java/applet/Applet.java \ -java/applet/AppletStub.java \ -java/applet/AppletContext.java \ -java/applet/AudioClip.java \ -java/awt/AWTError.java \ -java/awt/AWTEvent.java \ -java/awt/AWTEventMulticaster.java \ -java/awt/AWTException.java \ -java/awt/AWTPermission.java \ -java/awt/ActiveEvent.java \ -java/awt/Adjustable.java \ -java/awt/BorderLayout.java \ -java/awt/Button.java \ -java/awt/Canvas.java \ -java/awt/CardLayout.java \ -java/awt/Checkbox.java \ -java/awt/CheckboxGroup.java \ -java/awt/CheckboxMenuItem.java \ -java/awt/Choice.java \ -java/awt/Color.java \ -java/awt/Component.java \ -java/awt/ComponentOrientation.java \ -java/awt/Container.java \ -java/awt/Cursor.java \ -java/awt/Dialog.java \ -java/awt/Dimension.java \ -java/awt/Event.java \ -java/awt/EventDispatchThread.java \ -java/awt/EventQueue.java \ -java/awt/FileDialog.java \ -java/awt/FlowLayout.java \ -java/awt/Font.java \ -java/awt/FontMetrics.java \ -java/awt/Frame.java \ -java/awt/Graphics.java \ -java/awt/Graphics2D.java \ -java/awt/GraphicsConfiguration.java \ -java/awt/GridBagConstraints.java \ -java/awt/GridBagLayout.java \ -java/awt/GridBagLayoutInfo.java \ -java/awt/GridLayout.java \ -java/awt/IllegalComponentStateException.java \ -java/awt/Image.java \ -java/awt/Insets.java \ -java/awt/ItemSelectable.java \ -java/awt/Label.java \ -java/awt/LayoutManager.java \ -java/awt/LayoutManager2.java \ -java/awt/List.java \ -java/awt/Menu.java \ -java/awt/MenuBar.java \ -java/awt/MenuComponent.java \ -java/awt/MenuContainer.java \ -java/awt/MenuItem.java \ -java/awt/MenuShortcut.java \ -java/awt/Paint.java \ -java/awt/PaintContext.java \ -java/awt/Panel.java \ -java/awt/Point.java \ -java/awt/PopupMenu.java \ -java/awt/Rectangle.java \ -java/awt/RenderingHints.java \ -java/awt/ScrollPane.java \ -java/awt/Scrollbar.java \ -java/awt/Shape.java \ -java/awt/TextArea.java \ -java/awt/TextComponent.java \ -java/awt/TextField.java \ -java/awt/Toolkit.java \ -java/awt/Transparency.java \ -java/awt/Window.java \ -java/awt/color/ColorSpace.java \ -java/awt/color/ICC_ColorSpace.java \ -java/awt/color/ICC_Profile.java \ -java/awt/color/ICC_ProfileGray.java \ -java/awt/color/ICC_ProfileRGB.java \ -java/awt/color/CMMException.java \ -java/awt/color/ProfileDataException.java \ -java/awt/datatransfer/Clipboard.java \ -java/awt/datatransfer/ClipboardOwner.java \ -java/awt/datatransfer/DataFlavor.java \ -java/awt/datatransfer/FlavorMap.java \ -java/awt/datatransfer/MimeTypeParseException.java \ -java/awt/datatransfer/StringSelection.java \ -java/awt/datatransfer/SystemFlavorMap.java \ -java/awt/datatransfer/Transferable.java \ -java/awt/datatransfer/UnsupportedFlavorException.java \ -java/awt/datatransfer/FlavorTable.java \ -java/awt/event/AWTEventListener.java \ -java/awt/event/ActionEvent.java \ -java/awt/event/ActionListener.java \ -java/awt/event/AdjustmentEvent.java \ -java/awt/event/AdjustmentListener.java \ -java/awt/event/ComponentAdapter.java \ -java/awt/event/ComponentEvent.java \ -java/awt/event/ComponentListener.java \ -java/awt/event/ContainerAdapter.java \ -java/awt/event/ContainerEvent.java \ -java/awt/event/ContainerListener.java \ -java/awt/event/FocusAdapter.java \ -java/awt/event/FocusEvent.java \ -java/awt/event/FocusListener.java \ -java/awt/event/HierarchyBoundsAdapter.java \ -java/awt/event/HierarchyBoundsListener.java \ -java/awt/event/HierarchyEvent.java \ -java/awt/event/HierarchyListener.java \ -java/awt/event/InputEvent.java \ -java/awt/event/InputMethodEvent.java \ -java/awt/event/InputMethodListener.java \ -java/awt/event/InvocationEvent.java \ -java/awt/event/ItemEvent.java \ -java/awt/event/ItemListener.java \ -java/awt/event/KeyAdapter.java \ -java/awt/event/KeyEvent.java \ -java/awt/event/KeyListener.java \ -java/awt/event/MouseAdapter.java \ -java/awt/event/MouseEvent.java \ -java/awt/event/MouseListener.java \ -java/awt/event/MouseMotionAdapter.java \ -java/awt/event/MouseMotionListener.java \ -java/awt/event/PaintEvent.java \ -java/awt/event/TextEvent.java \ -java/awt/event/TextListener.java \ -java/awt/event/WindowAdapter.java \ -java/awt/event/WindowEvent.java \ -java/awt/event/WindowListener.java \ -java/awt/event/AWTEventListenerProxy.java \ -java/awt/event/MouseWheelEvent.java \ -java/awt/event/MouseWheelListener.java \ -java/awt/event/WindowFocusListener.java \ -java/awt/event/WindowStateListener.java \ -java/awt/font/FontRenderContext.java \ -java/awt/font/ShapeGraphicAttribute.java \ -java/awt/font/MultipleMaster.java \ -java/awt/font/TransformAttribute.java \ -java/awt/font/GlyphJustificationInfo.java \ -java/awt/font/LineBreakMeasurer.java \ -java/awt/font/TextMeasurer.java \ -java/awt/font/TextLayout.java \ -java/awt/font/LineMetrics.java \ -java/awt/font/TextAttribute.java \ -java/awt/font/GlyphMetrics.java \ -java/awt/font/OpenType.java \ -java/awt/font/GlyphVector.java \ -java/awt/font/GraphicAttribute.java \ -java/awt/font/ImageGraphicAttribute.java \ -java/awt/font/NumericShaper.java \ -java/awt/geom/AffineTransform.java \ -java/awt/geom/Dimension2D.java \ -java/awt/geom/Ellipse2D.java \ -java/awt/geom/IllegalPathStateException.java \ -java/awt/geom/NoninvertibleTransformException.java \ -java/awt/geom/PathIterator.java \ -java/awt/geom/Point2D.java \ -java/awt/geom/Rectangle2D.java \ -java/awt/geom/RectangularShape.java \ -java/awt/geom/RoundRectangle2D.java \ -java/awt/geom/Line2D.java \ -java/awt/geom/Arc2D.java \ -java/awt/geom/Area.java \ -java/awt/geom/CubicCurve2D.java \ -java/awt/geom/FlatteningPathIterator.java \ -java/awt/geom/GeneralPath.java \ -java/awt/geom/QuadCurve2D.java \ -java/awt/image/BandCombineOp.java \ -java/awt/image/BandedSampleModel.java \ -java/awt/image/AffineTransformOp.java \ -java/awt/image/BufferedImage.java \ -java/awt/image/BufferedImageFilter.java \ -java/awt/image/ByteLookupTable.java \ -java/awt/image/ColorConvertOp.java \ -java/awt/image/ColorModel.java \ -java/awt/image/ComponentColorModel.java \ -java/awt/image/ComponentSampleModel.java \ -java/awt/image/ConvolveOp.java \ -java/awt/image/DataBuffer.java \ -java/awt/image/DataBufferByte.java \ -java/awt/image/DataBufferDouble.java \ -java/awt/image/DataBufferFloat.java \ -java/awt/image/DataBufferInt.java \ -java/awt/image/DataBufferShort.java \ -java/awt/image/DataBufferUShort.java \ -java/awt/image/DirectColorModel.java \ -java/awt/image/ImageConsumer.java \ -java/awt/image/ImageObserver.java \ -java/awt/image/ImageProducer.java \ -java/awt/image/IndexColorModel.java \ -java/awt/image/Kernel.java \ -java/awt/image/LookupOp.java \ -java/awt/image/LookupTable.java \ -java/awt/image/MultiPixelPackedSampleModel.java \ -java/awt/image/PackedColorModel.java \ -java/awt/image/PixelInterleavedSampleModel.java \ -java/awt/image/Raster.java \ -java/awt/image/RasterOp.java \ -java/awt/image/RescaleOp.java \ -java/awt/image/SampleModel.java \ -java/awt/image/ShortLookupTable.java \ -java/awt/image/SinglePixelPackedSampleModel.java \ -java/awt/image/WritableRaster.java \ -java/awt/image/AreaAveragingScaleFilter.java \ -java/awt/image/CropImageFilter.java \ -java/awt/image/FilteredImageSource.java \ -java/awt/image/ImageFilter.java \ -java/awt/image/MemoryImageSource.java \ -java/awt/image/PixelGrabber.java \ -java/awt/image/RGBImageFilter.java \ -java/awt/image/ReplicateScaleFilter.java \ -java/awt/image/BufferStrategy.java \ -java/awt/image/BufferedImageOp.java \ -java/awt/image/ImagingOpException.java \ -java/awt/image/RasterFormatException.java \ -java/awt/image/RenderedImage.java \ -java/awt/image/TileObserver.java \ -java/awt/image/VolatileImage.java \ -java/awt/image/WritableRenderedImage.java \ -java/awt/image/renderable/ContextualRenderedImageFactory.java \ -java/awt/image/renderable/ParameterBlock.java \ -java/awt/image/renderable/RenderContext.java \ -java/awt/image/renderable/RenderableImage.java \ -java/awt/image/renderable/RenderableImageOp.java \ -java/awt/image/renderable/RenderableImageProducer.java \ -java/awt/image/renderable/RenderedImageFactory.java \ -java/awt/peer/ButtonPeer.java \ -java/awt/peer/CanvasPeer.java \ -java/awt/peer/CheckboxMenuItemPeer.java \ -java/awt/peer/CheckboxPeer.java \ -java/awt/peer/ChoicePeer.java \ -java/awt/peer/ComponentPeer.java \ -java/awt/peer/ContainerPeer.java \ -java/awt/peer/DialogPeer.java \ -java/awt/peer/FileDialogPeer.java \ -java/awt/peer/FontPeer.java \ -java/awt/peer/FramePeer.java \ -java/awt/peer/LabelPeer.java \ -java/awt/peer/LightweightPeer.java \ -java/awt/peer/ListPeer.java \ -java/awt/peer/MenuBarPeer.java \ -java/awt/peer/MenuComponentPeer.java \ -java/awt/peer/MenuItemPeer.java \ -java/awt/peer/MenuPeer.java \ -java/awt/peer/PanelPeer.java \ -java/awt/peer/PopupMenuPeer.java \ -java/awt/peer/RobotPeer.java \ -java/awt/peer/ScrollPanePeer.java \ -java/awt/peer/ScrollbarPeer.java \ -java/awt/peer/TextAreaPeer.java \ -java/awt/peer/TextComponentPeer.java \ -java/awt/peer/TextFieldPeer.java \ -java/awt/peer/WindowPeer.java \ -java/awt/SystemColor.java \ -java/awt/Polygon.java \ -java/awt/MediaTracker.java \ -java/awt/PrintGraphics.java \ -java/awt/PrintJob.java \ -java/awt/AWTKeyStroke.java \ -java/awt/AlphaComposite.java \ -java/awt/AttributeValue.java \ -java/awt/BasicStroke.java \ -java/awt/BufferCapabilities.java \ -java/awt/ColorPaintContext.java \ -java/awt/Composite.java \ -java/awt/CompositeContext.java \ -java/awt/ContainerOrderFocusTraversalPolicy.java \ -java/awt/DefaultFocusTraversalPolicy.java \ -java/awt/DefaultKeyboardFocusManager.java \ -java/awt/DisplayMode.java \ -java/awt/FocusTraversalPolicy.java \ -java/awt/FontFormatException.java \ -java/awt/GradientPaint.java \ -java/awt/GraphicsConfigTemplate.java \ -java/awt/GraphicsDevice.java \ -java/awt/GraphicsEnvironment.java \ -java/awt/HeadlessException.java \ -java/awt/ImageCapabilities.java \ -java/awt/JobAttributes.java \ -java/awt/KeyEventDispatcher.java \ -java/awt/KeyEventPostProcessor.java \ -java/awt/KeyboardFocusManager.java \ -java/awt/PageAttributes.java \ -java/awt/Robot.java \ -java/awt/ScrollPaneAdjustable.java \ -java/awt/Stroke.java \ -java/awt/TexturePaint.java \ -java/awt/dnd/peer/DragSourceContextPeer.java \ -java/awt/dnd/peer/DropTargetContextPeer.java \ -java/awt/dnd/peer/DropTargetPeer.java \ -java/awt/dnd/DnDConstants.java \ -java/awt/dnd/DnDEventMulticaster.java \ -java/awt/dnd/DragGestureEvent.java \ -java/awt/dnd/DragGestureListener.java \ -java/awt/dnd/DragGestureRecognizer.java \ -java/awt/dnd/DragSource.java \ -java/awt/dnd/DragSourceAdapter.java \ -java/awt/dnd/DragSourceContext.java \ -java/awt/dnd/DragSourceDragEvent.java \ -java/awt/dnd/DragSourceEvent.java \ -java/awt/dnd/DragSourceListener.java \ -java/awt/dnd/DragSourceMotionListener.java \ -java/awt/dnd/DropTarget.java \ -java/awt/dnd/InvalidDnDOperationException.java \ -java/awt/dnd/Autoscroll.java \ -java/awt/dnd/DragSourceDropEvent.java \ -java/awt/dnd/DropTargetAdapter.java \ -java/awt/dnd/DropTargetContext.java \ -java/awt/dnd/DropTargetDragEvent.java \ -java/awt/dnd/DropTargetDropEvent.java \ -java/awt/dnd/DropTargetEvent.java \ -java/awt/dnd/DropTargetListener.java \ -java/awt/dnd/MouseDragGestureRecognizer.java \ -java/awt/font/TextHitInfo.java \ -java/awt/im/spi/InputMethod.java \ -java/awt/im/spi/InputMethodContext.java \ -java/awt/im/spi/InputMethodDescriptor.java \ -java/awt/im/InputContext.java \ -java/awt/im/InputMethodHighlight.java \ -java/awt/im/InputMethodRequests.java \ -java/awt/im/InputSubset.java \ -java/awt/print/Book.java \ -java/awt/print/PageFormat.java \ -java/awt/print/Pageable.java \ -java/awt/print/Paper.java \ -java/awt/print/Printable.java \ -java/awt/print/PrinterAbortException.java \ -java/awt/print/PrinterException.java \ -java/awt/print/PrinterGraphics.java \ -java/awt/print/PrinterIOException.java \ -java/awt/print/PrinterJob.java \ -java/beans/beancontext/BeanContext.java \ -java/beans/beancontext/BeanContextChild.java \ -java/beans/beancontext/BeanContextChildComponentProxy.java \ -java/beans/beancontext/BeanContextChildSupport.java \ -java/beans/beancontext/BeanContextContainerProxy.java \ -java/beans/beancontext/BeanContextEvent.java \ -java/beans/beancontext/BeanContextMembershipEvent.java \ -java/beans/beancontext/BeanContextMembershipListener.java \ -java/beans/beancontext/BeanContextProxy.java \ -java/beans/beancontext/BeanContextServiceAvailableEvent.java \ -java/beans/beancontext/BeanContextServiceProvider.java \ -java/beans/beancontext/BeanContextServiceProviderBeanInfo.java \ -java/beans/beancontext/BeanContextServiceRevokedEvent.java \ -java/beans/beancontext/BeanContextServiceRevokedListener.java \ -java/beans/beancontext/BeanContextServices.java \ -java/beans/beancontext/BeanContextServicesListener.java \ -java/beans/beancontext/BeanContextServicesSupport.java \ -java/beans/beancontext/BeanContextSupport.java \ -java/beans/BeanDescriptor.java \ -java/beans/BeanInfo.java \ -java/beans/Beans.java \ -java/beans/Customizer.java \ -java/beans/DesignMode.java \ -java/beans/EventHandler.java \ -java/beans/EventSetDescriptor.java \ -java/beans/ExceptionListener.java \ -java/beans/Expression.java \ -java/beans/FeatureDescriptor.java \ -java/beans/IndexedPropertyDescriptor.java \ -java/beans/IntrospectionException.java \ -java/beans/Introspector.java \ -java/beans/MethodDescriptor.java \ -java/beans/ParameterDescriptor.java \ -java/beans/PropertyChangeEvent.java \ -java/beans/PropertyChangeListener.java \ -java/beans/PropertyChangeListenerProxy.java \ -java/beans/PropertyChangeSupport.java \ -java/beans/PropertyDescriptor.java \ -java/beans/PropertyEditor.java \ -java/beans/PropertyEditorManager.java \ -java/beans/PropertyEditorSupport.java \ -java/beans/PropertyVetoException.java \ -java/beans/Statement.java \ -java/beans/SimpleBeanInfo.java \ -java/beans/VetoableChangeListener.java \ -java/beans/VetoableChangeListenerProxy.java \ -java/beans/VetoableChangeSupport.java \ -java/beans/Visibility.java \ -java/beans/AppletInitializer.java \ -java/beans/XMLDecoder.java \ -javax/swing/border/AbstractBorder.java \ -javax/swing/border/BevelBorder.java \ -javax/swing/border/Border.java \ -javax/swing/border/CompoundBorder.java \ -javax/swing/border/EmptyBorder.java \ -javax/swing/border/EtchedBorder.java \ -javax/swing/border/LineBorder.java \ -javax/swing/border/MatteBorder.java \ -javax/swing/border/SoftBevelBorder.java \ -javax/swing/border/TitledBorder.java \ -javax/swing/GrayFilter.java \ -javax/swing/AbstractAction.java \ -javax/swing/AbstractButton.java \ -javax/swing/AbstractSpinnerModel.java \ -javax/swing/plaf/basic/BasicArrowButton.java \ -javax/swing/plaf/basic/BasicButtonListener.java \ -javax/swing/plaf/basic/BasicButtonUI.java \ -javax/swing/plaf/basic/BasicCheckBoxUI.java \ -javax/swing/plaf/basic/BasicColorChooserUI.java \ -javax/swing/plaf/basic/BasicComboBoxUI.java \ -javax/swing/plaf/basic/BasicComboBoxEditor.java \ -javax/swing/plaf/basic/BasicComboBoxRenderer.java \ -javax/swing/plaf/basic/BasicComboPopup.java \ -javax/swing/plaf/basic/BasicDesktopIconUI.java \ -javax/swing/plaf/basic/BasicDesktopPaneUI.java \ -javax/swing/plaf/basic/BasicEditorPaneUI.java \ -javax/swing/plaf/basic/BasicFormattedTextFieldUI.java \ -javax/swing/plaf/basic/BasicGraphicsUtils.java \ -javax/swing/plaf/basic/BasicInternalFrameTitlePane.java \ -javax/swing/plaf/basic/BasicInternalFrameUI.java \ -javax/swing/plaf/basic/BasicLabelUI.java \ -javax/swing/plaf/basic/BasicListUI.java \ -javax/swing/plaf/basic/BasicMenuUI.java \ -javax/swing/plaf/basic/BasicMenuBarUI.java \ -javax/swing/plaf/basic/BasicMenuItemUI.java \ -javax/swing/plaf/basic/BasicOptionPaneUI.java \ -javax/swing/plaf/basic/BasicPanelUI.java \ -javax/swing/plaf/basic/BasicPasswordFieldUI.java \ -javax/swing/plaf/basic/BasicPopupMenuUI.java \ -javax/swing/plaf/basic/BasicPopupMenuSeparatorUI.java \ -javax/swing/plaf/basic/BasicProgressBarUI.java \ -javax/swing/plaf/basic/BasicRootPaneUI.java \ -javax/swing/plaf/basic/BasicRadioButtonUI.java \ -javax/swing/plaf/basic/BasicRadioButtonMenuItemUI.java \ -javax/swing/plaf/basic/BasicCheckBoxMenuItemUI.java \ -javax/swing/plaf/basic/BasicScrollBarUI.java \ -javax/swing/plaf/basic/BasicScrollPaneUI.java \ -javax/swing/plaf/basic/BasicSeparatorUI.java \ -javax/swing/plaf/basic/BasicSliderUI.java \ -javax/swing/plaf/basic/BasicSpinnerUI.java \ -javax/swing/plaf/basic/BasicSplitPaneDivider.java \ -javax/swing/plaf/basic/BasicSplitPaneUI.java \ -javax/swing/plaf/basic/BasicTabbedPaneUI.java \ -javax/swing/plaf/basic/BasicTableUI.java \ -javax/swing/plaf/basic/BasicTableHeaderUI.java \ -javax/swing/plaf/basic/BasicTextAreaUI.java \ -javax/swing/plaf/basic/BasicTextFieldUI.java \ -javax/swing/plaf/basic/BasicTextPaneUI.java \ -javax/swing/plaf/basic/BasicTextUI.java \ -javax/swing/plaf/basic/BasicToggleButtonUI.java \ -javax/swing/plaf/basic/BasicToolBarSeparatorUI.java \ -javax/swing/plaf/basic/BasicToolBarUI.java \ -javax/swing/plaf/basic/BasicToolTipUI.java \ -javax/swing/plaf/basic/BasicTreeUI.java \ -javax/swing/plaf/basic/BasicViewportUI.java \ -javax/swing/plaf/basic/BasicLookAndFeel.java \ -javax/swing/plaf/basic/BasicBorders.java \ -javax/swing/plaf/basic/BasicIconFactory.java \ -javax/swing/plaf/basic/ComboPopup.java \ -javax/swing/plaf/metal/MetalBorders.java \ -javax/swing/plaf/metal/MetalButtonUI.java \ -javax/swing/plaf/metal/MetalCheckBoxUI.java \ -javax/swing/plaf/metal/MetalComboBoxUI.java \ -javax/swing/plaf/metal/MetalDesktopIconUI.java \ -javax/swing/plaf/metal/MetalInternalFrameUI.java \ -javax/swing/plaf/metal/MetalLabelUI.java \ -javax/swing/plaf/metal/MetalPopupMenuSeparatorUI.java \ -javax/swing/plaf/metal/MetalProgressBarUI.java \ -javax/swing/plaf/metal/MetalRadioButtonUI.java \ -javax/swing/plaf/metal/MetalRootPaneUI.java \ -javax/swing/plaf/metal/MetalScrollBarUI.java \ -javax/swing/plaf/metal/MetalScrollPaneUI.java \ -javax/swing/plaf/metal/MetalSeparatorUI.java \ -javax/swing/plaf/metal/MetalSliderUI.java \ -javax/swing/plaf/metal/MetalSplitPaneUI.java \ -javax/swing/plaf/metal/MetalTabbedPaneUI.java \ -javax/swing/plaf/metal/MetalTextFieldUI.java \ -javax/swing/plaf/metal/MetalToggleButtonUI.java \ -javax/swing/plaf/metal/MetalToolBarUI.java \ -javax/swing/plaf/metal/MetalToolTipUI.java \ -javax/swing/plaf/metal/MetalTreeUI.java \ -javax/swing/plaf/BorderUIResource.java \ -javax/swing/plaf/UIResource.java \ -javax/swing/plaf/ButtonUI.java \ -javax/swing/plaf/ComponentUI.java \ -javax/swing/plaf/LabelUI.java \ -javax/swing/plaf/ListUI.java \ -javax/swing/plaf/OptionPaneUI.java \ -javax/swing/plaf/PanelUI.java \ -javax/swing/plaf/ScrollPaneUI.java \ -javax/swing/plaf/TabbedPaneUI.java \ -javax/swing/plaf/TextUI.java \ -javax/swing/plaf/TreeUI.java \ -javax/swing/plaf/ViewportUI.java \ -javax/swing/plaf/metal/DefaultMetalTheme.java \ -javax/swing/plaf/metal/MetalLookAndFeel.java \ -javax/swing/plaf/metal/MetalTheme.java \ -javax/swing/plaf/ColorUIResource.java \ -javax/swing/plaf/DimensionUIResource.java \ -javax/swing/plaf/FontUIResource.java \ -javax/swing/plaf/IconUIResource.java \ -javax/swing/plaf/InsetsUIResource.java \ -javax/swing/plaf/ActionMapUIResource.java \ -javax/swing/plaf/ColorChooserUI.java \ -javax/swing/plaf/ComboBoxUI.java \ -javax/swing/plaf/ComponentInputMapUIResource.java \ -javax/swing/plaf/DesktopIconUI.java \ -javax/swing/plaf/DesktopPaneUI.java \ -javax/swing/plaf/FileChooserUI.java \ -javax/swing/plaf/InputMapUIResource.java \ -javax/swing/plaf/InternalFrameUI.java \ -javax/swing/plaf/MenuBarUI.java \ -javax/swing/plaf/MenuItemUI.java \ -javax/swing/plaf/PopupMenuUI.java \ -javax/swing/plaf/ProgressBarUI.java \ -javax/swing/plaf/RootPaneUI.java \ -javax/swing/plaf/ScrollBarUI.java \ -javax/swing/plaf/SeparatorUI.java \ -javax/swing/plaf/SliderUI.java \ -javax/swing/plaf/SpinnerUI.java \ -javax/swing/plaf/SplitPaneUI.java \ -javax/swing/plaf/TableHeaderUI.java \ -javax/swing/plaf/TableUI.java \ -javax/swing/plaf/ToolBarUI.java \ -javax/swing/plaf/ToolTipUI.java \ -javax/swing/AbstractListModel.java \ -javax/swing/colorchooser/AbstractColorChooserPanel.java \ -javax/swing/colorchooser/ColorChooserComponentFactory.java \ -javax/swing/colorchooser/ColorSelectionModel.java \ -javax/swing/colorchooser/DefaultColorSelectionModel.java \ -javax/swing/colorchooser/DefaultPreviewPanel.java \ -javax/swing/colorchooser/DefaultSwatchChooserPanel.java \ -javax/swing/colorchooser/DefaultHSBChooserPanel.java \ -javax/swing/colorchooser/DefaultRGBChooserPanel.java \ -javax/swing/filechooser/FileFilter.java \ -javax/swing/filechooser/FileSystemView.java \ -javax/swing/filechooser/FileView.java \ -javax/swing/table/AbstractTableModel.java \ -javax/swing/table/DefaultTableColumnModel.java \ -javax/swing/table/DefaultTableModel.java \ -javax/swing/table/JTableHeader.java \ -javax/swing/table/TableCellEditor.java \ -javax/swing/table/TableCellRenderer.java \ -javax/swing/table/TableColumn.java \ -javax/swing/table/TableColumnModel.java \ -javax/swing/table/TableModel.java \ -javax/swing/table/DefaultTableCellRenderer.java \ -javax/swing/Action.java \ -javax/swing/BorderFactory.java \ -javax/swing/Box.java \ -javax/swing/BoxLayout.java \ -javax/swing/ButtonGroup.java \ -javax/swing/ButtonModel.java \ -javax/swing/ComponentInputMap.java \ -javax/swing/DefaultButtonModel.java \ -javax/swing/DefaultListModel.java \ -javax/swing/DefaultListSelectionModel.java \ -javax/swing/Icon.java \ -javax/swing/ImageIcon.java \ -javax/swing/InputMap.java \ -javax/swing/InternalFrameFocusTraversalPolicy.java \ -javax/swing/JApplet.java \ -javax/swing/JButton.java \ -javax/swing/JCheckBox.java \ -javax/swing/JComponent.java \ -javax/swing/JDialog.java \ -javax/swing/JEditorPane.java \ -javax/swing/JFormattedTextField.java \ -javax/swing/JFrame.java \ -javax/swing/JLabel.java \ -javax/swing/JLayeredPane.java \ -javax/swing/JList.java \ -javax/swing/JMenuBar.java \ -javax/swing/JOptionPane.java \ -javax/swing/JPanel.java \ -javax/swing/JRadioButton.java \ -javax/swing/JRootPane.java \ -javax/swing/JScrollBar.java \ -javax/swing/JScrollPane.java \ -javax/swing/JSpinner.java \ -javax/swing/JTabbedPane.java \ -javax/swing/JTextArea.java \ -javax/swing/JTextField.java \ -javax/swing/JToggleButton.java \ -javax/swing/JToolTip.java \ -javax/swing/JTree.java \ -javax/swing/JViewport.java \ -javax/swing/JWindow.java \ -javax/swing/KeyStroke.java \ -javax/swing/LayoutFocusTraversalPolicy.java \ -javax/swing/ListCellRenderer.java \ -javax/swing/ListModel.java \ -javax/swing/ListSelectionModel.java \ -javax/swing/LookAndFeel.java \ -javax/swing/Scrollable.java \ -javax/swing/SortingFocusTraversalPolicy.java \ -javax/swing/SpinnerDateModel.java \ -javax/swing/SpinnerListModel.java \ -javax/swing/SpinnerModel.java \ -javax/swing/SpinnerNumberModel.java \ -javax/swing/Spring.java \ -javax/swing/SpringLayout.java \ -javax/swing/SwingConstants.java \ -javax/swing/SwingUtilities.java \ -javax/swing/Timer.java \ -javax/swing/ToolTipManager.java \ -javax/swing/TransferHandler.java \ -javax/swing/UIDefaults.java \ -javax/swing/UIManager.java \ -javax/swing/UnsupportedLookAndFeelException.java \ -javax/swing/event/AncestorEvent.java \ -javax/swing/event/AncestorListener.java \ -javax/swing/event/ChangeEvent.java \ -javax/swing/event/ChangeListener.java \ -javax/swing/event/DocumentEvent.java \ -javax/swing/event/DocumentListener.java \ -javax/swing/event/HyperlinkEvent.java \ -javax/swing/event/HyperlinkListener.java \ -javax/swing/event/ListDataEvent.java \ -javax/swing/event/ListDataListener.java \ -javax/swing/event/ListSelectionEvent.java \ -javax/swing/event/ListSelectionListener.java \ -javax/swing/event/MenuEvent.java \ -javax/swing/event/UndoableEditEvent.java \ -javax/swing/event/UndoableEditListener.java \ -javax/swing/event/CaretEvent.java \ -javax/swing/event/CaretListener.java \ -javax/swing/event/CellEditorListener.java \ -javax/swing/event/EventListenerList.java \ -javax/swing/event/InternalFrameAdapter.java \ -javax/swing/event/InternalFrameEvent.java \ -javax/swing/event/InternalFrameListener.java \ -javax/swing/event/MenuDragMouseEvent.java \ -javax/swing/event/MenuDragMouseListener.java \ -javax/swing/event/MenuKeyEvent.java \ -javax/swing/event/MenuKeyListener.java \ -javax/swing/event/MenuListener.java \ -javax/swing/event/MouseInputAdapter.java \ -javax/swing/event/MouseInputListener.java \ -javax/swing/event/PopupMenuEvent.java \ -javax/swing/event/PopupMenuListener.java \ -javax/swing/event/SwingPropertyChangeSupport.java \ -javax/swing/event/TableColumnModelEvent.java \ -javax/swing/event/TableColumnModelListener.java \ -javax/swing/event/TableModelEvent.java \ -javax/swing/event/TableModelListener.java \ -javax/swing/event/TreeExpansionEvent.java \ -javax/swing/event/TreeExpansionListener.java \ -javax/swing/event/TreeModelEvent.java \ -javax/swing/event/TreeModelListener.java \ -javax/swing/event/TreeSelectionEvent.java \ -javax/swing/event/TreeSelectionListener.java \ -javax/swing/event/TreeWillExpandListener.java \ -javax/swing/ActionMap.java \ -javax/swing/text/AbstractDocument.java \ -javax/swing/text/AttributeSet.java \ -javax/swing/text/BadLocationException.java \ -javax/swing/text/Caret.java \ -javax/swing/text/ChangedCharSetException.java \ -javax/swing/text/ComponentView.java \ -javax/swing/text/DefaultCaret.java \ -javax/swing/text/DefaultEditorKit.java \ -javax/swing/text/DefaultHighlighter.java \ -javax/swing/text/DefaultStyledDocument.java \ -javax/swing/text/Document.java \ -javax/swing/text/DocumentFilter.java \ -javax/swing/text/EditorKit.java \ -javax/swing/text/Element.java \ -javax/swing/text/FieldView.java \ -javax/swing/text/GapContent.java \ -javax/swing/text/Highlighter.java \ -javax/swing/text/JTextComponent.java \ -javax/swing/text/Keymap.java \ -javax/swing/text/LayeredHighlighter.java \ -javax/swing/text/MutableAttributeSet.java \ -javax/swing/text/NavigationFilter.java \ -javax/swing/text/PasswordView.java \ -javax/swing/text/PlainDocument.java \ -javax/swing/text/PlainView.java \ -javax/swing/text/Position.java \ -javax/swing/text/Segment.java \ -javax/swing/text/SimpleAttributeSet.java \ -javax/swing/text/StringContent.java \ -javax/swing/text/Style.java \ -javax/swing/text/StyleConstants.java \ -javax/swing/text/StyleContext.java \ -javax/swing/text/StyledDocument.java \ -javax/swing/text/StyledEditorKit.java \ -javax/swing/text/TabableView.java \ -javax/swing/text/TabExpander.java \ -javax/swing/text/TabSet.java \ -javax/swing/text/TabStop.java \ -javax/swing/text/TextAction.java \ -javax/swing/text/Utilities.java \ -javax/swing/text/View.java \ -javax/swing/text/ViewFactory.java \ -javax/swing/text/html/HTML.java \ -javax/swing/text/html/HTMLDocument.java \ -javax/swing/text/html/HTMLEditorKit.java \ -javax/swing/text/html/HTMLFrameHyperlinkEvent.java \ -javax/swing/text/html/parser/AttributeList.java \ -javax/swing/text/html/parser/ContentModel.java \ -javax/swing/text/html/parser/DTD.java \ -javax/swing/text/html/parser/DTDConstants.java \ -javax/swing/text/html/parser/DocumentParser.java \ -javax/swing/text/html/parser/Element.java \ -javax/swing/text/html/parser/Entity.java \ -javax/swing/text/html/parser/Parser.java \ -javax/swing/text/html/parser/ParserDelegator.java \ -javax/swing/text/html/parser/TagElement.java \ -javax/swing/text/rtf/ControlWordToken.java \ -javax/swing/text/rtf/RTFEditorKit.java \ -javax/swing/text/rtf/RTFParseException.java \ -javax/swing/text/rtf/RTFParser.java \ -javax/swing/text/rtf/RTFScanner.java \ -javax/swing/text/rtf/TextToken.java \ -javax/swing/text/rtf/Token.java \ -javax/swing/tree/TreeNode.java \ -javax/swing/tree/AbstractLayoutCache.java \ -javax/swing/tree/DefaultMutableTreeNode.java \ -javax/swing/tree/DefaultTreeCellEditor.java \ -javax/swing/tree/DefaultTreeCellRenderer.java \ -javax/swing/tree/DefaultTreeModel.java \ -javax/swing/tree/DefaultTreeSelectionModel.java \ -javax/swing/tree/ExpandVetoException.java \ -javax/swing/tree/FixedHeightLayoutCache.java \ -javax/swing/tree/MutableTreeNode.java \ -javax/swing/tree/RowMapper.java \ -javax/swing/tree/TreeCellEditor.java \ -javax/swing/tree/TreeCellRenderer.java \ -javax/swing/tree/TreeModel.java \ -javax/swing/tree/TreePath.java \ -javax/swing/tree/TreeSelectionModel.java \ -javax/swing/tree/VariableHeightLayoutCache.java \ -javax/swing/undo/UndoableEdit.java \ -javax/swing/undo/AbstractUndoableEdit.java \ -javax/swing/undo/CannotRedoException.java \ -javax/swing/undo/CannotUndoException.java \ -javax/swing/undo/CompoundEdit.java \ -javax/swing/undo/StateEdit.java \ -javax/swing/undo/StateEditable.java \ -javax/swing/undo/UndoManager.java \ -javax/swing/undo/UndoableEditSupport.java \ -javax/swing/BoundedRangeModel.java \ -javax/swing/CellEditor.java \ -javax/swing/ComboBoxEditor.java \ -javax/swing/ComboBoxModel.java \ -javax/swing/DefaultBoundedRangeModel.java \ -javax/swing/DesktopManager.java \ -javax/swing/InputVerifier.java \ -javax/swing/JInternalFrame.java \ -javax/swing/JTable.java \ -javax/swing/MenuElement.java \ -javax/swing/MenuSelectionManager.java \ -javax/swing/MutableComboBoxModel.java \ -javax/swing/Renderer.java \ -javax/swing/RootPaneContainer.java \ -javax/swing/ScrollPaneConstants.java \ -javax/swing/SingleSelectionModel.java \ -javax/swing/SizeRequirements.java \ -javax/swing/SizeSequence.java \ -javax/swing/WindowConstants.java \ -javax/swing/AbstractCellEditor.java \ -javax/swing/CellRendererPane.java \ -javax/swing/DebugGraphics.java \ -javax/swing/DefaultCellEditor.java \ -javax/swing/DefaultComboBoxModel.java \ -javax/swing/DefaultDesktopManager.java \ -javax/swing/DefaultFocusManager.java \ -javax/swing/DefaultListCellRenderer.java \ -javax/swing/DefaultSingleSelectionModel.java \ -javax/swing/FocusManager.java \ -javax/swing/JCheckBoxMenuItem.java \ -javax/swing/JColorChooser.java \ -javax/swing/JComboBox.java \ -javax/swing/JDesktopPane.java \ -javax/swing/JFileChooser.java \ -javax/swing/JMenu.java \ -javax/swing/JMenuItem.java \ -javax/swing/JPasswordField.java \ -javax/swing/JPopupMenu.java \ -javax/swing/JProgressBar.java \ -javax/swing/JRadioButtonMenuItem.java \ -javax/swing/JSeparator.java \ -javax/swing/JSlider.java \ -javax/swing/JSplitPane.java \ -javax/swing/JTextPane.java \ -javax/swing/JToolBar.java \ -javax/swing/OverlayLayout.java \ -javax/swing/Popup.java \ -javax/swing/PopupFactory.java \ -javax/swing/ProgressMonitor.java \ -javax/swing/ProgressMonitorInputStream.java \ -javax/swing/RepaintManager.java \ -javax/swing/ScrollPaneLayout.java \ -javax/swing/ViewportLayout.java - -rmi_java_source_files = \ -java/rmi/activation/Activatable.java \ -java/rmi/activation/ActivateFailedException.java \ -java/rmi/activation/ActivationDesc.java \ -java/rmi/activation/ActivationException.java \ -java/rmi/activation/ActivationGroup.java \ -java/rmi/activation/ActivationGroupDesc.java \ -java/rmi/activation/ActivationGroupID.java \ -java/rmi/activation/ActivationID.java \ -java/rmi/activation/ActivationInstantiator.java \ -java/rmi/activation/ActivationMonitor.java \ -java/rmi/activation/ActivationSystem.java \ -java/rmi/activation/Activator.java \ -java/rmi/activation/UnknownGroupException.java \ -java/rmi/activation/UnknownObjectException.java \ -java/rmi/AccessException.java \ -java/rmi/AlreadyBoundException.java \ -java/rmi/ConnectException.java \ -java/rmi/ConnectIOException.java \ -java/rmi/MarshalException.java \ -java/rmi/MarshalledObject.java \ -java/rmi/Naming.java \ -java/rmi/NoSuchObjectException.java \ -java/rmi/NotBoundException.java \ -java/rmi/RMISecurityException.java \ -java/rmi/RMISecurityManager.java \ -java/rmi/Remote.java \ -java/rmi/RemoteException.java \ -java/rmi/ServerError.java \ -java/rmi/ServerException.java \ -java/rmi/ServerRuntimeException.java \ -java/rmi/StubNotFoundException.java \ -java/rmi/UnexpectedException.java \ -java/rmi/UnknownHostException.java \ -java/rmi/UnmarshalException.java \ -java/rmi/dgc/DGC.java \ -java/rmi/dgc/Lease.java \ -java/rmi/dgc/VMID.java \ -java/rmi/registry/LocateRegistry.java \ -java/rmi/registry/Registry.java \ -java/rmi/registry/RegistryHandler.java \ -java/rmi/server/ExportException.java \ -java/rmi/server/LoaderHandler.java \ -java/rmi/server/LogStream.java \ -java/rmi/server/ObjID.java \ -java/rmi/server/Operation.java \ -java/rmi/server/RMIClassLoader.java \ -java/rmi/server/RMIClassLoaderSpi.java \ -java/rmi/server/RMIClientSocketFactory.java \ -java/rmi/server/RMIFailureHandler.java \ -java/rmi/server/RMIServerSocketFactory.java \ -java/rmi/server/RMISocketFactory.java \ -java/rmi/server/RemoteCall.java \ -java/rmi/server/RemoteObject.java \ -java/rmi/server/RemoteRef.java \ -java/rmi/server/RemoteServer.java \ -java/rmi/server/RemoteStub.java \ -java/rmi/server/ServerCloneException.java \ -java/rmi/server/ServerNotActiveException.java \ -java/rmi/server/ServerRef.java \ -java/rmi/server/Skeleton.java \ -java/rmi/server/SkeletonMismatchException.java \ -java/rmi/server/SkeletonNotFoundException.java \ -java/rmi/server/SocketSecurityException.java \ -java/rmi/server/UID.java \ -java/rmi/server/UnicastRemoteObject.java \ -java/rmi/server/Unreferenced.java \ -gnu/java/rmi/RMIMarshalledObjectInputStream.java \ -gnu/java/rmi/RMIMarshalledObjectOutputStream.java \ -gnu/java/rmi/dgc/DGCImpl.java \ -gnu/java/rmi/dgc/DGCImpl_Skel.java \ -gnu/java/rmi/dgc/DGCImpl_Stub.java \ -gnu/java/rmi/registry/RegistryImpl.java \ -gnu/java/rmi/registry/RegistryImpl_Skel.java \ -gnu/java/rmi/registry/RegistryImpl_Stub.java \ -gnu/java/rmi/rmic/Compile_gcj.java \ -gnu/java/rmi/rmic/Compile_jikes.java \ -gnu/java/rmi/rmic/Compile_kjc.java \ -gnu/java/rmi/rmic/Compiler.java \ -gnu/java/rmi/rmic/CompilerProcess.java \ -gnu/java/rmi/rmic/RMIC.java \ -gnu/java/rmi/rmic/RMICException.java \ -gnu/java/rmi/rmic/TabbedWriter.java \ -gnu/java/rmi/server/ConnectionRunnerPool.java \ -gnu/java/rmi/server/ProtocolConstants.java \ -gnu/java/rmi/server/RMIDefaultSocketFactory.java \ -gnu/java/rmi/server/RMIHashes.java \ -gnu/java/rmi/server/RMIIncomingThread.java \ -gnu/java/rmi/server/RMIObjectInputStream.java \ -gnu/java/rmi/server/RMIObjectOutputStream.java \ -gnu/java/rmi/server/RMIVoidValue.java \ -gnu/java/rmi/server/UnicastConnection.java \ -gnu/java/rmi/server/UnicastConnectionManager.java \ -gnu/java/rmi/server/UnicastRef.java \ -gnu/java/rmi/server/UnicastRemoteCall.java \ -gnu/java/rmi/server/UnicastRemoteStub.java \ -gnu/java/rmi/server/UnicastServer.java \ -gnu/java/rmi/server/UnicastServerRef.java - -javax_imageio_source_files = \ -javax/imageio/ImageWriteParam.java \ -javax/imageio/ImageReader.java \ -javax/imageio/ImageWriter.java \ -javax/imageio/IIOException.java \ -javax/imageio/IIOParamController.java \ -javax/imageio/ImageReadParam.java \ -javax/imageio/IIOParam.java \ -javax/imageio/spi/IIORegistry.java \ -javax/imageio/spi/ImageWriterSpi.java \ -javax/imageio/spi/ImageOutputStreamSpi.java \ -javax/imageio/spi/ServiceRegistry.java \ -javax/imageio/spi/ImageTranscoderSpi.java \ -javax/imageio/spi/ImageReaderSpi.java \ -javax/imageio/spi/IIOServiceProvider.java \ -javax/imageio/spi/ImageReaderWriterSpi.java \ -javax/imageio/spi/ImageInputStreamSpi.java \ -javax/imageio/spi/RegisterableService.java \ -javax/imageio/metadata/IIOAttr.java \ -javax/imageio/metadata/IIONamedNodeMap.java \ -javax/imageio/metadata/IIONodeList.java \ -javax/imageio/metadata/IIOMetadataFormatImpl.java \ -javax/imageio/metadata/IIOInvalidTreeException.java \ -javax/imageio/metadata/IIOMetadataFormat.java \ -javax/imageio/metadata/IIOMetadataController.java \ -javax/imageio/metadata/IIOMetadataNode.java \ -javax/imageio/metadata/IIOMetadata.java \ -javax/imageio/stream/FileImageOutputStream.java \ -javax/imageio/stream/ImageInputStream.java \ -javax/imageio/stream/IIOByteBuffer.java \ -javax/imageio/stream/FileCacheImageInputStream.java \ -javax/imageio/stream/ImageInputStreamImpl.java \ -javax/imageio/stream/ImageOutputStreamImpl.java \ -javax/imageio/stream/MemoryCacheImageInputStream.java \ -javax/imageio/stream/FileCacheImageOutputStream.java \ -javax/imageio/stream/ImageOutputStream.java \ -javax/imageio/stream/MemoryCacheImageOutputStream.java \ -javax/imageio/stream/FileImageInputStream.java \ -javax/imageio/event/IIOReadProgressListener.java \ -javax/imageio/event/IIOWriteWarningListener.java \ -javax/imageio/event/IIOReadWarningListener.java \ -javax/imageio/event/IIOReadUpdateListener.java \ -javax/imageio/event/IIOWriteProgressListener.java \ -javax/imageio/ImageTranscoder.java \ -javax/imageio/ImageTypeSpecifier.java \ -javax/imageio/ImageIO.java \ -javax/imageio/IIOImage.java - -javax_xml_source_files = \ -javax/xml/xpath/XPathConstants.java \ -javax/xml/xpath/XPathFunction.java \ -javax/xml/xpath/XPathVariableResolver.java \ -javax/xml/xpath/XPathExpressionException.java \ -javax/xml/xpath/XPathFunctionResolver.java \ -javax/xml/xpath/XPath.java \ -javax/xml/xpath/XPathFactoryConfigurationException.java \ -javax/xml/xpath/XPathFactory.java \ -javax/xml/xpath/XPathException.java \ -javax/xml/xpath/XPathExpression.java \ -javax/xml/xpath/XPathFunctionException.java \ -javax/xml/validation/ValidatorHandler.java \ -javax/xml/validation/Validator.java \ -javax/xml/validation/TypeInfoProvider.java \ -javax/xml/validation/SchemaFactory.java \ -javax/xml/validation/Schema.java \ -javax/xml/parsers/SAXParserFactory.java \ -javax/xml/parsers/FactoryConfigurationError.java \ -javax/xml/parsers/SAXParser.java \ -javax/xml/parsers/DocumentBuilderFactory.java \ -javax/xml/parsers/ParserConfigurationException.java \ -javax/xml/parsers/DocumentBuilder.java \ -javax/xml/datatype/DatatypeFactory.java \ -javax/xml/datatype/XMLGregorianCalendar.java \ -javax/xml/datatype/Duration.java \ -javax/xml/datatype/DatatypeConfigurationException.java \ -javax/xml/datatype/DatatypeConstants.java \ -javax/xml/XMLConstants.java \ -javax/xml/namespace/NamespaceContext.java \ -javax/xml/namespace/QName.java \ -javax/xml/transform/TransformerException.java \ -javax/xml/transform/TransformerFactoryConfigurationError.java \ -javax/xml/transform/sax/SAXResult.java \ -javax/xml/transform/sax/TransformerHandler.java \ -javax/xml/transform/sax/SAXTransformerFactory.java \ -javax/xml/transform/sax/SAXSource.java \ -javax/xml/transform/sax/TemplatesHandler.java \ -javax/xml/transform/OutputKeys.java \ -javax/xml/transform/stream/StreamResult.java \ -javax/xml/transform/stream/StreamSource.java \ -javax/xml/transform/Source.java \ -javax/xml/transform/SourceLocator.java \ -javax/xml/transform/ErrorListener.java \ -javax/xml/transform/TransformerConfigurationException.java \ -javax/xml/transform/Templates.java \ -javax/xml/transform/Result.java \ -javax/xml/transform/URIResolver.java \ -javax/xml/transform/dom/DOMSource.java \ -javax/xml/transform/dom/DOMLocator.java \ -javax/xml/transform/dom/DOMResult.java \ -javax/xml/transform/Transformer.java \ -javax/xml/transform/TransformerFactory.java - -javax_source_files = \ -javax/net/VanillaSocketFactory.java \ -javax/net/ssl/TrustManagerFactorySpi.java \ -javax/net/ssl/SSLKeyException.java \ -javax/net/ssl/TrustManager.java \ -javax/net/ssl/SSLServerSocket.java \ -javax/net/ssl/TrustManagerFactory.java \ -javax/net/ssl/KeyManager.java \ -javax/net/ssl/SSLSocketFactory.java \ -javax/net/ssl/SSLPermission.java \ -javax/net/ssl/SSLContext.java \ -javax/net/ssl/TrivialHostnameVerifier.java \ -javax/net/ssl/X509KeyManager.java \ -javax/net/ssl/SSLServerSocketFactory.java \ -javax/net/ssl/SSLSessionBindingListener.java \ -javax/net/ssl/SSLSessionContext.java \ -javax/net/ssl/KeyManagerFactory.java \ -javax/net/ssl/SSLProtocolException.java \ -javax/net/ssl/SSLSocket.java \ -javax/net/ssl/HostnameVerifier.java \ -javax/net/ssl/HandshakeCompletedListener.java \ -javax/net/ssl/HttpsURLConnection.java \ -javax/net/ssl/KeyManagerFactorySpi.java \ -javax/net/ssl/SSLHandshakeException.java \ -javax/net/ssl/SSLPeerUnverifiedException.java \ -javax/net/ssl/X509TrustManager.java \ -javax/net/ssl/SSLSession.java \ -javax/net/ssl/SSLContextSpi.java \ -javax/net/ssl/HandshakeCompletedEvent.java \ -javax/net/ssl/SSLSessionBindingEvent.java \ -javax/net/ssl/SSLException.java \ -javax/net/ssl/ManagerFactoryParameters.java \ -javax/net/SocketFactory.java \ -javax/net/VanillaServerSocketFactory.java \ -javax/net/ServerSocketFactory.java \ -javax/print/attribute/HashPrintServiceAttributeSet.java \ -javax/print/attribute/Attribute.java \ -javax/print/attribute/DocAttributeSet.java \ -javax/print/attribute/PrintRequestAttributeSet.java \ -javax/print/attribute/standard/Chromaticity.java \ -javax/print/attribute/standard/Destination.java \ -javax/print/attribute/standard/MediaPrintableArea.java \ -javax/print/attribute/standard/MediaSize.java \ -javax/print/attribute/standard/NumberOfInterveningJobs.java \ -javax/print/attribute/standard/PrinterMakeAndModel.java \ -javax/print/attribute/standard/PrinterStateReason.java \ -javax/print/attribute/standard/JobImpressions.java \ -javax/print/attribute/standard/JobHoldUntil.java \ -javax/print/attribute/standard/JobKOctetsSupported.java \ -javax/print/attribute/standard/JobPriority.java \ -javax/print/attribute/standard/QueuedJobCount.java \ -javax/print/attribute/standard/JobOriginatingUserName.java \ -javax/print/attribute/standard/PrinterName.java \ -javax/print/attribute/standard/PDLOverrideSupported.java \ -javax/print/attribute/standard/PrinterStateReasons.java \ -javax/print/attribute/standard/JobMediaSheets.java \ -javax/print/attribute/standard/JobKOctets.java \ -javax/print/attribute/standard/MultipleDocumentHandling.java \ -javax/print/attribute/standard/PrinterMessageFromOperator.java \ -javax/print/attribute/standard/Severity.java \ -javax/print/attribute/standard/ReferenceUriSchemesSupported.java \ -javax/print/attribute/standard/DocumentName.java \ -javax/print/attribute/standard/PrinterMoreInfo.java \ -javax/print/attribute/standard/JobMessageFromOperator.java \ -javax/print/attribute/standard/JobStateReasons.java \ -javax/print/attribute/standard/PrinterIsAcceptingJobs.java \ -javax/print/attribute/standard/DateTimeAtProcessing.java \ -javax/print/attribute/standard/PagesPerMinute.java \ -javax/print/attribute/standard/PrinterResolution.java \ -javax/print/attribute/standard/JobMediaSheetsSupported.java \ -javax/print/attribute/standard/NumberUpSupported.java \ -javax/print/attribute/standard/Finishings.java \ -javax/print/attribute/standard/DateTimeAtCompleted.java \ -javax/print/attribute/standard/NumberOfDocuments.java \ -javax/print/attribute/standard/PrinterInfo.java \ -javax/print/attribute/standard/PrintQuality.java \ -javax/print/attribute/standard/JobSheets.java \ -javax/print/attribute/standard/Media.java \ -javax/print/attribute/standard/Fidelity.java \ -javax/print/attribute/standard/PrinterLocation.java \ -javax/print/attribute/standard/PrinterMoreInfoManufacturer.java \ -javax/print/attribute/standard/OrientationRequested.java \ -javax/print/attribute/standard/JobState.java \ -javax/print/attribute/standard/DateTimeAtCreation.java \ -javax/print/attribute/standard/PresentationDirection.java \ -javax/print/attribute/standard/JobName.java \ -javax/print/attribute/standard/PagesPerMinuteColor.java \ -javax/print/attribute/standard/CopiesSupported.java \ -javax/print/attribute/standard/PrinterURI.java \ -javax/print/attribute/standard/PageRanges.java \ -javax/print/attribute/standard/RequestingUserName.java \ -javax/print/attribute/standard/JobPrioritySupported.java \ -javax/print/attribute/standard/JobMediaSheetsCompleted.java \ -javax/print/attribute/standard/JobKOctetsProcessed.java \ -javax/print/attribute/standard/JobImpressionsCompleted.java \ -javax/print/attribute/standard/Compression.java \ -javax/print/attribute/standard/JobImpressionsSupported.java \ -javax/print/attribute/standard/Sides.java \ -javax/print/attribute/standard/JobStateReason.java \ -javax/print/attribute/standard/SheetCollate.java \ -javax/print/attribute/standard/Copies.java \ -javax/print/attribute/standard/MediaSizeName.java \ -javax/print/attribute/standard/OutputDeviceAssigned.java \ -javax/print/attribute/standard/PrinterState.java \ -javax/print/attribute/standard/NumberUp.java \ -javax/print/attribute/standard/ColorSupported.java \ -javax/print/attribute/HashAttributeSet.java \ -javax/print/attribute/SetOfIntegerSyntax.java \ -javax/print/attribute/HashDocAttributeSet.java \ -javax/print/attribute/PrintRequestAttribute.java \ -javax/print/attribute/DateTimeSyntax.java \ -javax/print/attribute/PrintServiceAttribute.java \ -javax/print/attribute/UnmodifiableSetException.java \ -javax/print/attribute/HashPrintJobAttributeSet.java \ -javax/print/attribute/PrintJobAttribute.java \ -javax/print/attribute/AttributeSet.java \ -javax/print/attribute/ResolutionSyntax.java \ -javax/print/attribute/URISyntax.java \ -javax/print/attribute/AttributeSetUtilities.java \ -javax/print/attribute/HashPrintRequestAttributeSet.java \ -javax/print/attribute/TextSyntax.java \ -javax/print/attribute/PrintJobAttributeSet.java \ -javax/print/attribute/SupportedValuesAttribute.java \ -javax/print/attribute/EnumSyntax.java \ -javax/print/attribute/DocAttribute.java \ -javax/print/attribute/Size2DSyntax.java \ -javax/print/attribute/IntegerSyntax.java \ -javax/print/attribute/PrintServiceAttributeSet.java \ -javax/print/PrintService.java \ -javax/print/DocFlavor.java \ -javax/print/DocPrintJob.java \ -javax/print/event/PrintEvent.java \ -javax/print/event/PrintJobAdapter.java \ -javax/print/event/PrintServiceAttributeEvent.java \ -javax/print/event/PrintJobAttributeEvent.java \ -javax/print/event/PrintServiceAttributeListener.java \ -javax/print/event/PrintJobEvent.java \ -javax/print/event/PrintJobListener.java \ -javax/print/event/PrintJobAttributeListener.java \ -javax/print/PrintServiceLookup.java \ -javax/print/URIException.java \ -javax/print/StreamPrintService.java \ -javax/print/MultiDoc.java \ -javax/print/FlavorException.java \ -javax/print/Doc.java \ -javax/print/MultiDocPrintJob.java \ -javax/print/CancelablePrintJob.java \ -javax/print/MultiDocPrintService.java \ -javax/print/ServiceUIFactory.java \ -javax/print/AttributeException.java \ -javax/print/PrintException.java \ -javax/naming/ServiceUnavailableException.java \ -javax/naming/directory/Attribute.java \ -javax/naming/directory/SchemaViolationException.java \ -javax/naming/directory/InitialDirContext.java \ -javax/naming/directory/BasicAttribute.java \ -javax/naming/directory/NoSuchAttributeException.java \ -javax/naming/directory/InvalidAttributesException.java \ -javax/naming/directory/InvalidAttributeValueException.java \ -javax/naming/directory/BasicAttributes.java \ -javax/naming/directory/AttributeModificationException.java \ -javax/naming/directory/InvalidAttributeIdentifierException.java \ -javax/naming/directory/DirContext.java \ -javax/naming/directory/Attributes.java \ -javax/naming/directory/InvalidSearchControlsException.java \ -javax/naming/directory/SearchControls.java \ -javax/naming/directory/AttributeInUseException.java \ -javax/naming/directory/InvalidSearchFilterException.java \ -javax/naming/directory/ModificationItem.java \ -javax/naming/directory/SearchResult.java \ -javax/naming/Binding.java \ -javax/naming/ContextNotEmptyException.java \ -javax/naming/Referenceable.java \ -javax/naming/InterruptedNamingException.java \ -javax/naming/CommunicationException.java \ -javax/naming/LinkException.java \ -javax/naming/BinaryRefAddr.java \ -javax/naming/LinkLoopException.java \ -javax/naming/AuthenticationException.java \ -javax/naming/NameAlreadyBoundException.java \ -javax/naming/MalformedLinkException.java \ -javax/naming/NotContextException.java \ -javax/naming/spi/DirStateFactory.java \ -javax/naming/spi/ResolveResult.java \ -javax/naming/spi/ObjectFactoryBuilder.java \ -javax/naming/spi/DirObjectFactory.java \ -javax/naming/spi/DirectoryManager.java \ -javax/naming/spi/InitialContextFactoryBuilder.java \ -javax/naming/spi/ObjectFactory.java \ -javax/naming/spi/Resolver.java \ -javax/naming/spi/StateFactory.java \ -javax/naming/spi/InitialContextFactory.java \ -javax/naming/spi/NamingManager.java \ -javax/naming/InvalidNameException.java \ -javax/naming/NamingEnumeration.java \ -javax/naming/LinkRef.java \ -javax/naming/event/NamingListener.java \ -javax/naming/event/NamingEvent.java \ -javax/naming/event/NamespaceChangeListener.java \ -javax/naming/event/ObjectChangeListener.java \ -javax/naming/event/EventContext.java \ -javax/naming/event/NamingExceptionEvent.java \ -javax/naming/event/EventDirContext.java \ -javax/naming/NamingException.java \ -javax/naming/CannotProceedException.java \ -javax/naming/PartialResultException.java \ -javax/naming/TimeLimitExceededException.java \ -javax/naming/NoPermissionException.java \ -javax/naming/CompoundName.java \ -javax/naming/SizeLimitExceededException.java \ -javax/naming/NoInitialContextException.java \ -javax/naming/NameNotFoundException.java \ -javax/naming/InitialContext.java \ -javax/naming/NamingSecurityException.java \ -javax/naming/Context.java \ -javax/naming/ConfigurationException.java \ -javax/naming/InsufficientResourcesException.java \ -javax/naming/AuthenticationNotSupportedException.java \ -javax/naming/StringRefAddr.java \ -javax/naming/ldap/InitialLdapContext.java \ -javax/naming/ldap/ExtendedRequest.java \ -javax/naming/ldap/Control.java \ -javax/naming/ldap/UnsolicitedNotificationListener.java \ -javax/naming/ldap/LdapReferralException.java \ -javax/naming/ldap/UnsolicitedNotificationEvent.java \ -javax/naming/ldap/HasControls.java \ -javax/naming/ldap/LdapContext.java \ -javax/naming/ldap/ExtendedResponse.java \ -javax/naming/ldap/UnsolicitedNotification.java \ -javax/naming/ldap/ControlFactory.java \ -javax/naming/OperationNotSupportedException.java \ -javax/naming/ReferralException.java \ -javax/naming/LimitExceededException.java \ -javax/naming/Reference.java \ -javax/naming/NameParser.java \ -javax/naming/NameClassPair.java \ -javax/naming/RefAddr.java \ -javax/naming/CompositeName.java \ -javax/naming/Name.java \ -javax/security/cert/CertificateNotYetValidException.java \ -javax/security/cert/Certificate.java \ -javax/security/cert/X509Certificate.java \ -javax/security/cert/X509CertBridge.java \ -javax/security/cert/CertificateEncodingException.java \ -javax/security/cert/CertificateExpiredException.java \ -javax/security/cert/CertificateException.java \ -javax/security/cert/CertificateParsingException.java \ -javax/security/auth/Destroyable.java \ -javax/security/auth/x500/X500PrivateCredential.java \ -javax/security/auth/x500/X500Principal.java \ -javax/security/auth/spi/LoginModule.java \ -javax/security/auth/DestroyFailedException.java \ -javax/security/auth/SubjectDomainCombiner.java \ -javax/security/auth/AuthPermission.java \ -javax/security/auth/login/CredentialExpiredException.java \ -javax/security/auth/login/NullConfiguration.java \ -javax/security/auth/login/AccountExpiredException.java \ -javax/security/auth/login/LoginException.java \ -javax/security/auth/login/AppConfigurationEntry.java \ -javax/security/auth/login/Configuration.java \ -javax/security/auth/login/LoginContext.java \ -javax/security/auth/login/FailedLoginException.java \ -javax/security/auth/PrivateCredentialPermission.java \ -javax/security/auth/Subject.java \ -javax/security/auth/Policy.java \ -javax/security/auth/Refreshable.java \ -javax/security/auth/callback/TextInputCallback.java \ -javax/security/auth/callback/LanguageCallback.java \ -javax/security/auth/callback/TextOutputCallback.java \ -javax/security/auth/callback/UnsupportedCallbackException.java \ -javax/security/auth/callback/Callback.java \ -javax/security/auth/callback/ConfirmationCallback.java \ -javax/security/auth/callback/ChoiceCallback.java \ -javax/security/auth/callback/NameCallback.java \ -javax/security/auth/callback/PasswordCallback.java \ -javax/security/auth/callback/CallbackHandler.java \ -javax/security/auth/RefreshFailedException.java \ -javax/security/sasl/RealmCallback.java \ -javax/security/sasl/SaslClient.java \ -javax/security/sasl/RealmChoiceCallback.java \ -javax/security/sasl/AuthenticationException.java \ -javax/security/sasl/Sasl.java \ -javax/security/sasl/SaslClientFactory.java \ -javax/security/sasl/AuthorizeCallback.java \ -javax/security/sasl/SaslServerFactory.java \ -javax/security/sasl/SaslException.java \ -javax/security/sasl/SaslServer.java \ -javax/transaction/TransactionRolledbackException.java \ -javax/transaction/Synchronization.java \ -javax/transaction/TransactionRequiredException.java \ -javax/transaction/RollbackException.java \ -javax/transaction/Status.java \ -javax/transaction/HeuristicMixedException.java \ -javax/transaction/HeuristicRollbackException.java \ -javax/transaction/SystemException.java \ -javax/transaction/UserTransaction.java \ -javax/transaction/NotSupportedException.java \ -javax/transaction/HeuristicCommitException.java \ -javax/transaction/Transaction.java \ -javax/transaction/TransactionManager.java \ -javax/transaction/InvalidTransactionException.java \ -javax/transaction/xa/XAException.java \ -javax/transaction/xa/XAResource.java \ -javax/transaction/xa/Xid.java \ -javax/accessibility/AccessibleValue.java \ -javax/accessibility/AccessibleBundle.java \ -javax/accessibility/AccessibleContext.java \ -javax/accessibility/AccessibleRelationSet.java \ -javax/accessibility/Accessible.java \ -javax/accessibility/AccessibleTableModelChange.java \ -javax/accessibility/AccessibleState.java \ -javax/accessibility/AccessibleIcon.java \ -javax/accessibility/AccessibleHypertext.java \ -javax/accessibility/AccessibleComponent.java \ -javax/accessibility/AccessibleText.java \ -javax/accessibility/AccessibleRole.java \ -javax/accessibility/AccessibleEditableText.java \ -javax/accessibility/AccessibleRelation.java \ -javax/accessibility/AccessibleTable.java \ -javax/accessibility/AccessibleStateSet.java \ -javax/accessibility/AccessibleSelection.java \ -javax/accessibility/AccessibleExtendedTable.java \ -javax/accessibility/AccessibleResourceBundle.java \ -javax/accessibility/AccessibleExtendedComponent.java \ -javax/accessibility/AccessibleHyperlink.java \ -javax/accessibility/AccessibleKeyBinding.java \ -javax/accessibility/AccessibleAction.java \ -javax/sql/ConnectionEventListener.java \ -javax/sql/RowSetEvent.java \ -javax/sql/ConnectionPoolDataSource.java \ -javax/sql/RowSetWriter.java \ -javax/sql/XAConnection.java \ -javax/sql/RowSet.java \ -javax/sql/DataSource.java \ -javax/sql/RowSetInternal.java \ -javax/sql/RowSetReader.java \ -javax/sql/RowSetMetaData.java \ -javax/sql/PooledConnection.java \ -javax/sql/XADataSource.java \ -javax/sql/RowSetListener.java \ -javax/sql/ConnectionEvent.java \ -javax/crypto/Cipher.java \ -javax/crypto/IllegalBlockSizeException.java \ -javax/crypto/MacSpi.java \ -javax/crypto/SecretKeyFactorySpi.java \ -javax/crypto/ShortBufferException.java \ -javax/crypto/KeyAgreement.java \ -javax/crypto/ExemptionMechanism.java \ -javax/crypto/CipherOutputStream.java \ -javax/crypto/SealedObject.java \ -javax/crypto/NullCipher.java \ -javax/crypto/KeyAgreementSpi.java \ -javax/crypto/SecretKeyFactory.java \ -javax/crypto/SecretKey.java \ -javax/crypto/NullCipherImpl.java \ -javax/crypto/spec/DESKeySpec.java \ -javax/crypto/spec/DHPrivateKeySpec.java \ -javax/crypto/spec/DHParameterSpec.java \ -javax/crypto/spec/PBEParameterSpec.java \ -javax/crypto/spec/DESedeKeySpec.java \ -javax/crypto/spec/DHGenParameterSpec.java \ -javax/crypto/spec/DHPublicKeySpec.java \ -javax/crypto/spec/PBEKeySpec.java \ -javax/crypto/spec/RC5ParameterSpec.java \ -javax/crypto/spec/RC2ParameterSpec.java \ -javax/crypto/spec/IvParameterSpec.java \ -javax/crypto/spec/SecretKeySpec.java \ -javax/crypto/interfaces/DHPublicKey.java \ -javax/crypto/interfaces/DHKey.java \ -javax/crypto/interfaces/DHPrivateKey.java \ -javax/crypto/interfaces/PBEKey.java \ -javax/crypto/NoSuchPaddingException.java \ -javax/crypto/KeyGeneratorSpi.java \ -javax/crypto/BadPaddingException.java \ -javax/crypto/CipherSpi.java \ -javax/crypto/KeyGenerator.java \ -javax/crypto/CipherInputStream.java \ -javax/crypto/ExemptionMechanismException.java \ -javax/crypto/ExemptionMechanismSpi.java \ -javax/crypto/EncryptedPrivateKeyInfo.java \ -javax/crypto/Mac.java - -org_source_files = \ -org/ietf/jgss/GSSManager.java \ -org/ietf/jgss/GSSException.java \ -org/ietf/jgss/MessageProp.java \ -org/ietf/jgss/GSSName.java \ -org/ietf/jgss/GSSContext.java \ -org/ietf/jgss/Oid.java \ -org/ietf/jgss/GSSCredential.java \ -org/ietf/jgss/ChannelBinding.java - -gnu_xml_source_files = \ -gnu/xml/xpath/EqualityExpr.java \ -gnu/xml/xpath/NumberFunction.java \ -gnu/xml/xpath/StringLengthFunction.java \ -gnu/xml/xpath/NameFunction.java \ -gnu/xml/xpath/SumFunction.java \ -gnu/xml/xpath/Pattern.java \ -gnu/xml/xpath/StringFunction.java \ -gnu/xml/xpath/NegativeExpr.java \ -gnu/xml/xpath/UnionExpr.java \ -gnu/xml/xpath/SubstringFunction.java \ -gnu/xml/xpath/Expr.java \ -gnu/xml/xpath/XPathFactoryImpl.java \ -gnu/xml/xpath/NormalizeSpaceFunction.java \ -gnu/xml/xpath/Constant.java \ -gnu/xml/xpath/Predicate.java \ -gnu/xml/xpath/Path.java \ -gnu/xml/xpath/OrExpr.java \ -gnu/xml/xpath/LangFunction.java \ -gnu/xml/xpath/StartsWithFunction.java \ -gnu/xml/xpath/SubstringAfterFunction.java \ -gnu/xml/xpath/FloorFunction.java \ -gnu/xml/xpath/NotFunction.java \ -gnu/xml/xpath/Root.java \ -gnu/xml/xpath/PositionFunction.java \ -gnu/xml/xpath/VariableReference.java \ -gnu/xml/xpath/DocumentOrderComparator.java \ -gnu/xml/xpath/LocalNameFunction.java \ -gnu/xml/xpath/NamespaceUriFunction.java \ -gnu/xml/xpath/TranslateFunction.java \ -gnu/xml/xpath/FalseFunction.java \ -gnu/xml/xpath/AndExpr.java \ -gnu/xml/xpath/XPathParser.java \ -gnu/xml/xpath/NamespaceTest.java \ -gnu/xml/xpath/ConcatFunction.java \ -gnu/xml/xpath/NameTest.java \ -gnu/xml/xpath/CountFunction.java \ -gnu/xml/xpath/IdFunction.java \ -gnu/xml/xpath/LastFunction.java \ -gnu/xml/xpath/XPathTokenizer.java \ -gnu/xml/xpath/Steps.java \ -gnu/xml/xpath/TrueFunction.java \ -gnu/xml/xpath/BooleanFunction.java \ -gnu/xml/xpath/ParenthesizedExpr.java \ -gnu/xml/xpath/XPathImpl.java \ -gnu/xml/xpath/Selector.java \ -gnu/xml/xpath/RoundFunction.java \ -gnu/xml/xpath/SubstringBeforeFunction.java \ -gnu/xml/xpath/Function.java \ -gnu/xml/xpath/CeilingFunction.java \ -gnu/xml/xpath/RelationalExpr.java \ -gnu/xml/xpath/FunctionCall.java \ -gnu/xml/xpath/NodeTypeTest.java \ -gnu/xml/xpath/ArithmeticExpr.java \ -gnu/xml/xpath/Test.java \ -gnu/xml/xpath/ContainsFunction.java \ -gnu/xml/pipeline/EventFilter.java \ -gnu/xml/pipeline/NSFilter.java \ -gnu/xml/pipeline/XsltFilter.java \ -gnu/xml/pipeline/ValidationConsumer.java \ -gnu/xml/pipeline/PipelineFactory.java \ -gnu/xml/pipeline/TextConsumer.java \ -gnu/xml/pipeline/LinkFilter.java \ -gnu/xml/pipeline/TeeConsumer.java \ -gnu/xml/pipeline/DomConsumer.java \ -gnu/xml/pipeline/EventConsumer.java \ -gnu/xml/pipeline/WellFormednessFilter.java \ -gnu/xml/pipeline/XIncludeFilter.java \ -gnu/xml/pipeline/CallFilter.java \ -gnu/xml/aelfred2/XmlParser.java \ -gnu/xml/aelfred2/XmlReader.java \ -gnu/xml/aelfred2/JAXPFactory.java \ -gnu/xml/aelfred2/ContentHandler2.java \ -gnu/xml/aelfred2/SAXDriver.java \ -gnu/xml/util/XCat.java \ -gnu/xml/util/DomParser.java \ -gnu/xml/util/XMLWriter.java \ -gnu/xml/util/Resolver.java \ -gnu/xml/util/DoParse.java \ -gnu/xml/util/XHTMLWriter.java \ -gnu/xml/util/SAXNullTransformerFactory.java \ -gnu/xml/dom/DomXPathNSResolver.java \ -gnu/xml/dom/ls/FilteredSAXEventSink.java \ -gnu/xml/dom/ls/DomLSException.java \ -gnu/xml/dom/ls/DomLSSerializer.java \ -gnu/xml/dom/ls/DomLSInput.java \ -gnu/xml/dom/ls/DomLSOutput.java \ -gnu/xml/dom/ls/SAXEventSink.java \ -gnu/xml/dom/ls/DomLSParser.java \ -gnu/xml/dom/ls/ReaderInputStream.java \ -gnu/xml/dom/ls/WriterOutputStream.java \ -gnu/xml/dom/DomElement.java \ -gnu/xml/dom/DomNsNode.java \ -gnu/xml/dom/DomAttr.java \ -gnu/xml/dom/DTDAttributeTypeInfo.java \ -gnu/xml/dom/DomDocumentBuilder.java \ -gnu/xml/dom/DTDElementTypeInfo.java \ -gnu/xml/dom/DomDocument.java \ -gnu/xml/dom/DomXPathExpression.java \ -gnu/xml/dom/DomDocumentConfiguration.java \ -gnu/xml/dom/DomDocumentFragment.java \ -gnu/xml/dom/DomProcessingInstruction.java \ -gnu/xml/dom/Consumer.java \ -gnu/xml/dom/DomComment.java \ -gnu/xml/dom/DomCharacterData.java \ -gnu/xml/dom/DomExtern.java \ -gnu/xml/dom/DomEntityReference.java \ -gnu/xml/dom/DomNamedNodeMap.java \ -gnu/xml/dom/ImplementationList.java \ -gnu/xml/dom/ImplementationSource.java \ -gnu/xml/dom/DomImpl.java \ -gnu/xml/dom/DomDoctype.java \ -gnu/xml/dom/DomNode.java \ -gnu/xml/dom/DomXPathResult.java \ -gnu/xml/dom/DomDocumentBuilderFactory.java \ -gnu/xml/dom/DomText.java \ -gnu/xml/dom/DomNSResolverContext.java \ -gnu/xml/dom/DomNodeIterator.java \ -gnu/xml/dom/DomNotation.java \ -gnu/xml/dom/JAXPFactory.java \ -gnu/xml/dom/DomIterator.java \ -gnu/xml/dom/DomEvent.java \ -gnu/xml/dom/DomEntity.java \ -gnu/xml/dom/DomCDATASection.java \ -gnu/xml/dom/DomDOMException.java \ -gnu/xml/dom/html2/DomHTMLAnchorElement.java \ -gnu/xml/dom/html2/DomHTMLAppletElement.java \ -gnu/xml/dom/html2/DomHTMLAreaElement.java \ -gnu/xml/dom/html2/DomHTMLBaseElement.java \ -gnu/xml/dom/html2/DomHTMLBaseFontElement.java \ -gnu/xml/dom/html2/DomHTMLBodyElement.java \ -gnu/xml/dom/html2/DomHTMLBRElement.java \ -gnu/xml/dom/html2/DomHTMLButtonElement.java \ -gnu/xml/dom/html2/DomHTMLCollection.java \ -gnu/xml/dom/html2/DomHTMLDirectoryElement.java \ -gnu/xml/dom/html2/DomHTMLDivElement.java \ -gnu/xml/dom/html2/DomHTMLDListElement.java \ -gnu/xml/dom/html2/DomHTMLDocument.java \ -gnu/xml/dom/html2/DomHTMLElement.java \ -gnu/xml/dom/html2/DomHTMLFieldSetElement.java \ -gnu/xml/dom/html2/DomHTMLFontElement.java \ -gnu/xml/dom/html2/DomHTMLFormElement.java \ -gnu/xml/dom/html2/DomHTMLFrameElement.java \ -gnu/xml/dom/html2/DomHTMLFrameSetElement.java \ -gnu/xml/dom/html2/DomHTMLHeadElement.java \ -gnu/xml/dom/html2/DomHTMLHeadingElement.java \ -gnu/xml/dom/html2/DomHTMLHRElement.java \ -gnu/xml/dom/html2/DomHTMLHtmlElement.java \ -gnu/xml/dom/html2/DomHTMLIFrameElement.java \ -gnu/xml/dom/html2/DomHTMLImageElement.java \ -gnu/xml/dom/html2/DomHTMLImpl.java \ -gnu/xml/dom/html2/DomHTMLInputElement.java \ -gnu/xml/dom/html2/DomHTMLIsIndexElement.java \ -gnu/xml/dom/html2/DomHTMLLabelElement.java \ -gnu/xml/dom/html2/DomHTMLLegendElement.java \ -gnu/xml/dom/html2/DomHTMLLIElement.java \ -gnu/xml/dom/html2/DomHTMLLinkElement.java \ -gnu/xml/dom/html2/DomHTMLMapElement.java \ -gnu/xml/dom/html2/DomHTMLMenuElement.java \ -gnu/xml/dom/html2/DomHTMLMetaElement.java \ -gnu/xml/dom/html2/DomHTMLModElement.java \ -gnu/xml/dom/html2/DomHTMLObjectElement.java \ -gnu/xml/dom/html2/DomHTMLOListElement.java \ -gnu/xml/dom/html2/DomHTMLOptGroupElement.java \ -gnu/xml/dom/html2/DomHTMLOptionElement.java \ -gnu/xml/dom/html2/DomHTMLParagraphElement.java \ -gnu/xml/dom/html2/DomHTMLParamElement.java \ -gnu/xml/dom/html2/DomHTMLParser.java \ -gnu/xml/dom/html2/DomHTMLPreElement.java \ -gnu/xml/dom/html2/DomHTMLQuoteElement.java \ -gnu/xml/dom/html2/DomHTMLScriptElement.java \ -gnu/xml/dom/html2/DomHTMLSelectElement.java \ -gnu/xml/dom/html2/DomHTMLStyleElement.java \ -gnu/xml/dom/html2/DomHTMLTableCaptionElement.java \ -gnu/xml/dom/html2/DomHTMLTableCellElement.java \ -gnu/xml/dom/html2/DomHTMLTableColElement.java \ -gnu/xml/dom/html2/DomHTMLTableElement.java \ -gnu/xml/dom/html2/DomHTMLTableRowElement.java \ -gnu/xml/dom/html2/DomHTMLTableSectionElement.java \ -gnu/xml/dom/html2/DomHTMLTextAreaElement.java \ -gnu/xml/dom/html2/DomHTMLTitleElement.java \ -gnu/xml/dom/html2/DomHTMLUListElement.java \ -gnu/xml/transform/GenerateIdFunction.java \ -gnu/xml/transform/FormatNumberFunction.java \ -gnu/xml/transform/ValueOfNode.java \ -gnu/xml/transform/ApplyImportsNode.java \ -gnu/xml/transform/WithParam.java \ -gnu/xml/transform/DocumentFunction.java \ -gnu/xml/transform/SAXSerializer.java \ -gnu/xml/transform/FunctionAvailableFunction.java \ -gnu/xml/transform/ElementAvailableFunction.java \ -gnu/xml/transform/IfNode.java \ -gnu/xml/transform/ApplyTemplatesNode.java \ -gnu/xml/transform/SortKey.java \ -gnu/xml/transform/Key.java \ -gnu/xml/transform/ElementNode.java \ -gnu/xml/transform/CurrentFunction.java \ -gnu/xml/transform/XSLComparator.java \ -gnu/xml/transform/CallTemplateNode.java \ -gnu/xml/transform/TemplatesImpl.java \ -gnu/xml/transform/ChooseNode.java \ -gnu/xml/transform/NumberNode.java \ -gnu/xml/transform/CopyOfNode.java \ -gnu/xml/transform/ParameterNode.java \ -gnu/xml/transform/TransformerFactoryImpl.java \ -gnu/xml/transform/TextNode.java \ -gnu/xml/transform/CopyNode.java \ -gnu/xml/transform/SystemPropertyFunction.java \ -gnu/xml/transform/Stylesheet.java \ -gnu/xml/transform/ProcessingInstructionNode.java \ -gnu/xml/transform/UnparsedEntityUriFunction.java \ -gnu/xml/transform/URIResolverEntityResolver.java \ -gnu/xml/transform/ErrorListenerErrorHandler.java \ -gnu/xml/transform/Bindings.java \ -gnu/xml/transform/AttributeSet.java \ -gnu/xml/transform/Template.java \ -gnu/xml/transform/MessageNode.java \ -gnu/xml/transform/LiteralNode.java \ -gnu/xml/transform/StreamSerializer.java \ -gnu/xml/transform/XSLURIResolver.java \ -gnu/xml/transform/AttributeNode.java \ -gnu/xml/transform/CommentNode.java \ -gnu/xml/transform/ForEachNode.java \ -gnu/xml/transform/KeyFunction.java \ -gnu/xml/transform/TransformerImpl.java \ -gnu/xml/transform/WhenNode.java \ -gnu/xml/transform/NodeNumberNode.java \ -gnu/xml/transform/OtherwiseNode.java \ -gnu/xml/transform/AbstractNumberNode.java \ -gnu/xml/transform/TemplateNode.java \ -gnu/xml/transform/TransformerOutputProperties.java \ -gnu/xml/transform/DOMSourceLocator.java - -## Java files which are created by configure and thus are in the build -## directory. -built_java_source_files = java/lang/ConcreteProcess.java \ - gnu/classpath/Configuration.java - -## Java files in the core packages java.lang, java.io, and java.util. -## These are built before the other source files, in order to reduce -## build time. -core_java_source_files = \ -java/lang/AbstractMethodError.java \ -java/lang/ArithmeticException.java \ -java/lang/ArrayIndexOutOfBoundsException.java \ -java/lang/ArrayStoreException.java \ -java/lang/AssertionError.java \ -java/lang/Boolean.java \ -java/lang/Byte.java \ -java/lang/Character.java \ -java/lang/CharSequence.java \ -java/lang/ClassCastException.java \ -java/lang/ClassCircularityError.java \ -java/lang/ClassFormatError.java \ -java/lang/ClassLoader.java \ -java/lang/ClassNotFoundException.java \ -java/lang/CloneNotSupportedException.java \ -java/lang/Cloneable.java \ -java/lang/Comparable.java \ -java/lang/Compiler.java \ -java/lang/Double.java \ -java/lang/Error.java \ -java/lang/Exception.java \ -java/lang/ExceptionInInitializerError.java \ -java/lang/Float.java \ -java/lang/IllegalAccessError.java \ -java/lang/IllegalAccessException.java \ -java/lang/IllegalArgumentException.java \ -java/lang/IllegalMonitorStateException.java \ -java/lang/IllegalStateException.java \ -java/lang/IllegalThreadStateException.java \ -java/lang/IncompatibleClassChangeError.java \ -java/lang/IndexOutOfBoundsException.java \ -java/lang/InheritableThreadLocal.java \ -java/lang/InstantiationError.java \ -java/lang/InstantiationException.java \ -java/lang/Integer.java \ -java/lang/InternalError.java \ -java/lang/InterruptedException.java \ -java/lang/LinkageError.java \ -java/lang/Long.java \ -java/lang/Math.java \ -java/lang/NegativeArraySizeException.java \ -java/lang/NoClassDefFoundError.java \ -java/lang/NoSuchFieldError.java \ -java/lang/NoSuchFieldException.java \ -java/lang/NoSuchMethodError.java \ -java/lang/NoSuchMethodException.java \ -java/lang/NullPointerException.java \ -java/lang/Number.java \ -java/lang/NumberFormatException.java \ -java/lang/OutOfMemoryError.java \ -java/lang/Package.java \ -java/lang/Process.java \ -java/lang/Runnable.java \ -java/lang/Runtime.java \ -java/lang/RuntimeException.java \ -java/lang/RuntimePermission.java \ -java/lang/SecurityException.java \ -java/lang/SecurityManager.java \ -java/lang/Short.java \ -java/lang/StackOverflowError.java \ -java/lang/StackTraceElement.java \ -java/lang/StrictMath.java \ -java/lang/String.java \ -java/lang/StringBuffer.java \ -java/lang/StringBuilder.java \ -java/lang/StringIndexOutOfBoundsException.java \ -java/lang/System.java \ -java/lang/Thread.java \ -java/lang/ThreadDeath.java \ -java/lang/ThreadGroup.java \ -java/lang/ThreadLocal.java \ -java/lang/Throwable.java \ -java/lang/UnknownError.java \ -java/lang/UnsatisfiedLinkError.java \ -java/lang/UnsupportedClassVersionError.java \ -java/lang/UnsupportedOperationException.java \ -java/lang/VerifyError.java \ -java/lang/VirtualMachineError.java \ -java/lang/VMClassLoader.java \ -java/lang/VMCompiler.java \ -java/lang/VMSecurityManager.java \ -java/lang/VMThrowable.java \ -java/lang/Void.java \ -java/io/BufferedInputStream.java \ -java/io/BufferedOutputStream.java \ -java/io/BufferedReader.java \ -java/io/BufferedWriter.java \ -java/io/ByteArrayInputStream.java \ -java/io/ByteArrayOutputStream.java \ -java/io/CharArrayReader.java \ -java/io/CharArrayWriter.java \ -java/io/CharConversionException.java \ -java/io/DataInput.java \ -java/io/DataInputStream.java \ -java/io/DataOutput.java \ -java/io/DataOutputStream.java \ -java/io/EOFException.java \ -java/io/Externalizable.java \ -java/io/File.java \ -java/io/FileDescriptor.java \ -java/io/FileFilter.java \ -java/io/FileInputStream.java \ -java/io/FileNotFoundException.java \ -java/io/FileOutputStream.java \ -java/io/FilePermission.java \ -java/io/FileReader.java \ -java/io/FileWriter.java \ -java/io/FilenameFilter.java \ -java/io/FilterInputStream.java \ -java/io/FilterOutputStream.java \ -java/io/FilterReader.java \ -java/io/FilterWriter.java \ -java/io/IOException.java \ -java/io/InputStream.java \ -java/io/InputStreamReader.java \ -java/io/InterruptedIOException.java \ -java/io/InvalidClassException.java \ -java/io/InvalidObjectException.java \ -java/io/LineNumberInputStream.java \ -java/io/LineNumberReader.java \ -java/io/NotActiveException.java \ -java/io/NotSerializableException.java \ -java/io/ObjectInput.java \ -java/io/ObjectInputStream.java \ -java/io/ObjectInputValidation.java \ -java/io/ObjectOutput.java \ -java/io/ObjectOutputStream.java \ -java/io/ObjectStreamClass.java \ -java/io/ObjectStreamConstants.java \ -java/io/ObjectStreamException.java \ -java/io/ObjectStreamField.java \ -java/io/OptionalDataException.java \ -java/io/OutputStream.java \ -java/io/OutputStreamWriter.java \ -java/io/PipedInputStream.java \ -java/io/PipedOutputStream.java \ -java/io/PipedReader.java \ -java/io/PipedWriter.java \ -java/io/PrintStream.java \ -java/io/PrintWriter.java \ -java/io/PushbackInputStream.java \ -java/io/PushbackReader.java \ -java/io/RandomAccessFile.java \ -java/io/Reader.java \ -java/io/SequenceInputStream.java \ -java/io/Serializable.java \ -java/io/SerializablePermission.java \ -java/io/StreamCorruptedException.java \ -java/io/StreamTokenizer.java \ -java/io/StringBufferInputStream.java \ -java/io/StringReader.java \ -java/io/StringWriter.java \ -java/io/SyncFailedException.java \ -java/io/UTFDataFormatException.java \ -java/io/UnsupportedEncodingException.java \ -java/io/VMObjectStreamClass.java \ -java/io/WriteAbortedException.java \ -java/io/Writer.java \ -java/util/AbstractCollection.java \ -java/util/AbstractList.java \ -java/util/AbstractMap.java \ -java/util/AbstractSequentialList.java \ -java/util/AbstractSet.java \ -java/util/ArrayList.java \ -java/util/Arrays.java \ -java/util/BitSet.java \ -java/util/Calendar.java \ -java/util/Collection.java \ -java/util/Collections.java \ -java/util/Comparator.java \ -java/util/ConcurrentModificationException.java \ -java/util/Currency.java \ -java/util/Date.java \ -java/util/Dictionary.java \ -java/util/EmptyStackException.java \ -java/util/Enumeration.java \ -java/util/EventListener.java \ -java/util/EventListenerProxy.java \ -java/util/EventObject.java \ -java/util/GregorianCalendar.java \ -java/util/HashMap.java \ -java/util/HashSet.java \ -java/util/Hashtable.java \ -java/util/IdentityHashMap.java \ -java/util/Iterator.java \ -java/util/LinkedList.java \ -java/util/LinkedHashMap.java \ -java/util/LinkedHashSet.java \ -java/util/List.java \ -java/util/ListIterator.java \ -java/util/ListResourceBundle.java \ -java/util/Locale.java \ -java/util/Map.java \ -java/util/MissingResourceException.java \ -java/util/NoSuchElementException.java \ -java/util/Observable.java \ -java/util/Observer.java \ -java/util/Properties.java \ -java/util/PropertyPermission.java \ -java/util/PropertyPermissionCollection.java \ -java/util/PropertyResourceBundle.java \ -java/util/Random.java \ -java/util/RandomAccess.java \ -java/util/ResourceBundle.java \ -java/util/Set.java \ -java/util/SimpleTimeZone.java \ -java/util/SortedMap.java \ -java/util/SortedSet.java \ -java/util/Stack.java \ -java/util/StringTokenizer.java \ -java/util/TimeZone.java \ -java/util/Timer.java \ -java/util/TimerTask.java \ -java/util/TreeMap.java \ -java/util/TreeSet.java \ -java/util/TooManyListenersException.java \ -java/util/Vector.java \ -java/util/VMTimeZone.java \ -java/util/WeakHashMap.java \ -java/util/logging/ConsoleHandler.java \ -java/util/logging/ErrorManager.java \ -java/util/logging/FileHandler.java \ -java/util/logging/Filter.java \ -java/util/logging/Formatter.java \ -java/util/logging/Handler.java \ -java/util/logging/Level.java \ -java/util/logging/Logger.java \ -java/util/logging/LoggingPermission.java \ -java/util/logging/LogManager.java \ -java/util/logging/LogRecord.java \ -java/util/logging/MemoryHandler.java \ -java/util/logging/SimpleFormatter.java \ -java/util/logging/SocketHandler.java \ -java/util/logging/StreamHandler.java \ -java/util/logging/XMLFormatter.java \ -java/util/prefs/NodeChangeListener.java \ -java/util/prefs/Preferences.java \ -java/util/prefs/PreferenceChangeListener.java \ -java/util/prefs/NodeChangeEvent.java \ -java/util/prefs/InvalidPreferencesFormatException.java \ -java/util/prefs/AbstractPreferences.java \ -java/util/prefs/BackingStoreException.java \ -java/util/prefs/PreferenceChangeEvent.java \ -java/util/prefs/PreferencesFactory.java \ -java/util/regex/Matcher.java \ -java/util/regex/Pattern.java \ -java/util/regex/PatternSyntaxException.java - -## List of all .java files to be compiled. Please keep this list -## alphabetical. Please put files from java/lang, java/io, and java/util -## into core_java_source_files. Please put files from gnu/gcj/convert -## into convert_source_files and files from java/awt into -## awt_java_source_files. If the .java file has a hand-maintained -## header, please list it in special_java_source_files. -ordinary_java_source_files = $(core_java_source_files) \ -gnu/classpath/ServiceFactory.java \ -gnu/classpath/ServiceProviderLoadingAction.java \ -gnu/classpath/SystemProperties.java \ -gnu/gcj/Core.java \ -gnu/gcj/RawData.java \ -gnu/gcj/RawDataManaged.java \ -gnu/gcj/io/DefaultMimeTypes.java \ -gnu/gcj/io/MimeTypes.java \ -gnu/gcj/io/SimpleSHSStream.java \ -gnu/gcj/runtime/BootClassLoader.java \ -gnu/gcj/runtime/ExtensionClassLoader.java \ -gnu/gcj/runtime/FileDeleter.java \ -gnu/gcj/runtime/FinalizerThread.java \ -gnu/gcj/runtime/HelperClassLoader.java \ -gnu/gcj/runtime/JNIWeakRef.java \ -gnu/gcj/runtime/NameFinder.java \ -gnu/gcj/runtime/PersistentByteMap.java \ -gnu/gcj/runtime/SharedLibHelper.java \ -gnu/gcj/runtime/SharedLibLoader.java \ -gnu/gcj/runtime/StringBuffer.java \ -gnu/gcj/runtime/SystemClassLoader.java \ -gnu/gcj/util/Debug.java \ -gnu/java/io/ASN1ParsingException.java \ -gnu/java/io/Base64InputStream.java \ -gnu/java/io/ClassLoaderObjectInputStream.java \ -gnu/java/io/NullOutputStream.java \ -gnu/java/io/ObjectIdentityWrapper.java \ -gnu/java/lang/ArrayHelper.java \ -gnu/java/lang/ClassHelper.java \ -gnu/java/lang/MainThread.java \ -gnu/java/lang/reflect/TypeSignature.java \ -gnu/java/locale/Calendar.java \ -gnu/java/locale/Calendar_de.java \ -gnu/java/locale/Calendar_en.java \ -gnu/java/locale/Calendar_nl.java \ -gnu/java/locale/LocaleInformation.java \ -gnu/java/locale/LocaleInformation_af_ZA.java \ -gnu/java/locale/LocaleInformation_ar_AE.java \ -gnu/java/locale/LocaleInformation_ar_BH.java \ -gnu/java/locale/LocaleInformation_ar_DZ.java \ -gnu/java/locale/LocaleInformation_ar_EG.java \ -gnu/java/locale/LocaleInformation_ar_IN.java \ -gnu/java/locale/LocaleInformation_ar_IQ.java \ -gnu/java/locale/LocaleInformation_ar_JO.java \ -gnu/java/locale/LocaleInformation_ar_KW.java \ -gnu/java/locale/LocaleInformation_ar_LB.java \ -gnu/java/locale/LocaleInformation_ar_LY.java \ -gnu/java/locale/LocaleInformation_ar_MA.java \ -gnu/java/locale/LocaleInformation_ar_OM.java \ -gnu/java/locale/LocaleInformation_ar_QA.java \ -gnu/java/locale/LocaleInformation_ar_SD.java \ -gnu/java/locale/LocaleInformation_ar_SY.java \ -gnu/java/locale/LocaleInformation_ar_TN.java \ -gnu/java/locale/LocaleInformation_ar_YE.java \ -gnu/java/locale/LocaleInformation_be_BY.java \ -gnu/java/locale/LocaleInformation_bn_IN.java \ -gnu/java/locale/LocaleInformation_br_FR.java \ -gnu/java/locale/LocaleInformation_bs_BA.java \ -gnu/java/locale/LocaleInformation_ca_ES.java \ -gnu/java/locale/LocaleInformation_cs_CZ.java \ -gnu/java/locale/LocaleInformation_cy_GB.java \ -gnu/java/locale/LocaleInformation_da_DK.java \ -gnu/java/locale/LocaleInformation_de.java \ -gnu/java/locale/LocaleInformation_de_AT.java \ -gnu/java/locale/LocaleInformation_de_BE.java \ -gnu/java/locale/LocaleInformation_de_CH.java \ -gnu/java/locale/LocaleInformation_de_DE.java \ -gnu/java/locale/LocaleInformation_de_LU.java \ -gnu/java/locale/LocaleInformation_el_GR.java \ -gnu/java/locale/LocaleInformation_en.java \ -gnu/java/locale/LocaleInformation_en_AU.java \ -gnu/java/locale/LocaleInformation_en_BW.java \ -gnu/java/locale/LocaleInformation_en_CA.java \ -gnu/java/locale/LocaleInformation_en_DK.java \ -gnu/java/locale/LocaleInformation_en_GB.java \ -gnu/java/locale/LocaleInformation_en_HK.java \ -gnu/java/locale/LocaleInformation_en_IE.java \ -gnu/java/locale/LocaleInformation_en_IN.java \ -gnu/java/locale/LocaleInformation_en_NZ.java \ -gnu/java/locale/LocaleInformation_en_PH.java \ -gnu/java/locale/LocaleInformation_en_SG.java \ -gnu/java/locale/LocaleInformation_en_US.java \ -gnu/java/locale/LocaleInformation_en_ZA.java \ -gnu/java/locale/LocaleInformation_en_ZW.java \ -gnu/java/locale/LocaleInformation_es_AR.java \ -gnu/java/locale/LocaleInformation_es_BO.java \ -gnu/java/locale/LocaleInformation_es_CL.java \ -gnu/java/locale/LocaleInformation_es_CO.java \ -gnu/java/locale/LocaleInformation_es_CR.java \ -gnu/java/locale/LocaleInformation_es_DO.java \ -gnu/java/locale/LocaleInformation_es_EC.java \ -gnu/java/locale/LocaleInformation_es_ES.java \ -gnu/java/locale/LocaleInformation_es_GT.java \ -gnu/java/locale/LocaleInformation_es_HN.java \ -gnu/java/locale/LocaleInformation_es_MX.java \ -gnu/java/locale/LocaleInformation_es_NI.java \ -gnu/java/locale/LocaleInformation_es_PA.java \ -gnu/java/locale/LocaleInformation_es_PE.java \ -gnu/java/locale/LocaleInformation_es_PR.java \ -gnu/java/locale/LocaleInformation_es_PY.java \ -gnu/java/locale/LocaleInformation_es_SV.java \ -gnu/java/locale/LocaleInformation_es_US.java \ -gnu/java/locale/LocaleInformation_es_UY.java \ -gnu/java/locale/LocaleInformation_es_VE.java \ -gnu/java/locale/LocaleInformation_et_EE.java \ -gnu/java/locale/LocaleInformation_eu_ES.java \ -gnu/java/locale/LocaleInformation_fa_IR.java \ -gnu/java/locale/LocaleInformation_fi_FI.java \ -gnu/java/locale/LocaleInformation_fo_FO.java \ -gnu/java/locale/LocaleInformation_fr_BE.java \ -gnu/java/locale/LocaleInformation_fr_CA.java \ -gnu/java/locale/LocaleInformation_fr_CH.java \ -gnu/java/locale/LocaleInformation_fr_FR.java \ -gnu/java/locale/LocaleInformation_fr_LU.java \ -gnu/java/locale/LocaleInformation_ga_IE.java \ -gnu/java/locale/LocaleInformation_gd_GB.java \ -gnu/java/locale/LocaleInformation_gl_ES.java \ -gnu/java/locale/LocaleInformation_gv_GB.java \ -gnu/java/locale/LocaleInformation_he_IL.java \ -gnu/java/locale/LocaleInformation_hi_IN.java \ -gnu/java/locale/LocaleInformation_hr_HR.java \ -gnu/java/locale/LocaleInformation_hu_HU.java \ -gnu/java/locale/LocaleInformation_id_ID.java \ -gnu/java/locale/LocaleInformation_it_CH.java \ -gnu/java/locale/LocaleInformation_it_IT.java \ -gnu/java/locale/LocaleInformation_iw_IL.java \ -gnu/java/locale/LocaleInformation_ja_JP.java \ -gnu/java/locale/LocaleInformation_ka_GE.java \ -gnu/java/locale/LocaleInformation_kl_GL.java \ -gnu/java/locale/LocaleInformation_ko_KR.java \ -gnu/java/locale/LocaleInformation_kw_GB.java \ -gnu/java/locale/LocaleInformation_lt_LT.java \ -gnu/java/locale/LocaleInformation_lv_LV.java \ -gnu/java/locale/LocaleInformation_mi_NZ.java \ -gnu/java/locale/LocaleInformation_mk_MK.java \ -gnu/java/locale/LocaleInformation_mr_IN.java \ -gnu/java/locale/LocaleInformation_mt_MT.java \ -gnu/java/locale/LocaleInformation_nl.java \ -gnu/java/locale/LocaleInformation_nl_BE.java \ -gnu/java/locale/LocaleInformation_nl_NL.java \ -gnu/java/locale/LocaleInformation_nn_NO.java \ -gnu/java/locale/LocaleInformation_no_NO.java \ -gnu/java/locale/LocaleInformation_oc_FR.java \ -gnu/java/locale/LocaleInformation_pl_PL.java \ -gnu/java/locale/LocaleInformation_pt_BR.java \ -gnu/java/locale/LocaleInformation_pt_PT.java \ -gnu/java/locale/LocaleInformation_ro_RO.java \ -gnu/java/locale/LocaleInformation_ru_RU.java \ -gnu/java/locale/LocaleInformation_ru_UA.java \ -gnu/java/locale/LocaleInformation_se_NO.java \ -gnu/java/locale/LocaleInformation_sk_SK.java \ -gnu/java/locale/LocaleInformation_sl_SI.java \ -gnu/java/locale/LocaleInformation_sq_AL.java \ -gnu/java/locale/LocaleInformation_sr_YU.java \ -gnu/java/locale/LocaleInformation_sv_FI.java \ -gnu/java/locale/LocaleInformation_sv_SE.java \ -gnu/java/locale/LocaleInformation_ta_IN.java \ -gnu/java/locale/LocaleInformation_te_IN.java \ -gnu/java/locale/LocaleInformation_tg_TJ.java \ -gnu/java/locale/LocaleInformation_tl_PH.java \ -gnu/java/locale/LocaleInformation_tr_TR.java \ -gnu/java/locale/LocaleInformation_uk_UA.java \ -gnu/java/locale/LocaleInformation_ur_PK.java \ -gnu/java/locale/LocaleInformation_uz_UZ.java \ -gnu/java/locale/LocaleInformation_vi_VN.java \ -gnu/java/locale/LocaleInformation_yi_US.java \ -gnu/java/locale/LocaleInformation_zh_CN.java \ -gnu/java/locale/LocaleInformation_zh_HK.java \ -gnu/java/locale/LocaleInformation_zh_SG.java \ -gnu/java/locale/LocaleInformation_zh_TW.java \ -gnu/java/math/MPN.java \ -gnu/java/net/BASE64.java \ -gnu/java/net/CRLFInputStream.java \ -gnu/java/net/CRLFOutputStream.java \ -gnu/java/net/DefaultContentHandlerFactory.java \ -gnu/java/net/EmptyX509TrustManager.java \ -gnu/java/net/GetLocalHostAction.java \ -gnu/java/net/HeaderFieldHelper.java \ -gnu/java/net/LineInputStream.java \ -gnu/java/net/PlainDatagramSocketImpl.java \ -gnu/java/net/PlainSocketImpl.java \ -gnu/java/net/URLParseError.java \ -gnu/java/net/protocol/core/Connection.java \ -gnu/java/net/protocol/core/CoreInputStream.java \ -gnu/java/net/protocol/core/Handler.java \ -gnu/java/net/protocol/file/Connection.java \ -gnu/java/net/protocol/file/Handler.java \ -gnu/java/net/protocol/ftp/ActiveModeDTP.java \ -gnu/java/net/protocol/ftp/BlockInputStream.java \ -gnu/java/net/protocol/ftp/BlockOutputStream.java \ -gnu/java/net/protocol/ftp/CompressedInputStream.java \ -gnu/java/net/protocol/ftp/CompressedOutputStream.java \ -gnu/java/net/protocol/ftp/DTP.java \ -gnu/java/net/protocol/ftp/DTPInputStream.java \ -gnu/java/net/protocol/ftp/DTPOutputStream.java \ -gnu/java/net/protocol/ftp/FTPConnection.java \ -gnu/java/net/protocol/ftp/FTPException.java \ -gnu/java/net/protocol/ftp/FTPResponse.java \ -gnu/java/net/protocol/ftp/FTPURLConnection.java \ -gnu/java/net/protocol/ftp/Handler.java \ -gnu/java/net/protocol/ftp/PassiveModeDTP.java \ -gnu/java/net/protocol/ftp/StreamInputStream.java \ -gnu/java/net/protocol/ftp/StreamOutputStream.java \ -gnu/java/net/protocol/gcjlib/Connection.java \ -gnu/java/net/protocol/gcjlib/Handler.java \ -gnu/java/net/protocol/http/Authenticator.java \ -gnu/java/net/protocol/http/ByteArrayRequestBodyWriter.java \ -gnu/java/net/protocol/http/ByteArrayResponseBodyReader.java \ -gnu/java/net/protocol/http/ChunkedInputStream.java \ -gnu/java/net/protocol/http/Cookie.java \ -gnu/java/net/protocol/http/CookieManager.java \ -gnu/java/net/protocol/http/Credentials.java \ -gnu/java/net/protocol/http/HTTPConnection.java \ -gnu/java/net/protocol/http/HTTPDateFormat.java \ -gnu/java/net/protocol/http/HTTPURLConnection.java \ -gnu/java/net/protocol/http/Handler.java \ -gnu/java/net/protocol/http/Headers.java \ -gnu/java/net/protocol/http/Request.java \ -gnu/java/net/protocol/http/RequestBodyWriter.java \ -gnu/java/net/protocol/http/Response.java \ -gnu/java/net/protocol/http/ResponseBodyReader.java \ -gnu/java/net/protocol/http/ResponseHeaderHandler.java \ -gnu/java/net/protocol/http/SimpleCookieManager.java \ -gnu/java/net/protocol/http/event/ConnectionEvent.java \ -gnu/java/net/protocol/http/event/ConnectionListener.java \ -gnu/java/net/protocol/http/event/RequestEvent.java \ -gnu/java/net/protocol/http/event/RequestListener.java \ -gnu/java/net/protocol/https/Handler.java \ -gnu/java/net/protocol/jar/Connection.java \ -gnu/java/net/protocol/jar/Handler.java \ -gnu/java/nio/ChannelInputStream.java \ -gnu/java/nio/ChannelOutputStream.java \ -gnu/java/nio/ChannelReader.java \ -gnu/java/nio/DatagramChannelImpl.java \ -gnu/java/nio/DatagramChannelSelectionKey.java \ -gnu/java/nio/FileLockImpl.java \ -gnu/java/nio/InputStreamChannel.java \ -gnu/java/nio/NIOConstants.java \ -gnu/java/nio/NIODatagramSocket.java \ -gnu/java/nio/NIOServerSocket.java \ -gnu/java/nio/NIOSocket.java \ -gnu/java/nio/OutputStreamChannel.java \ -gnu/java/nio/PipeImpl.java \ -gnu/java/nio/SelectionKeyImpl.java \ -gnu/java/nio/SelectorImpl.java \ -gnu/java/nio/SelectorProviderImpl.java \ -gnu/java/nio/ServerSocketChannelImpl.java \ -gnu/java/nio/ServerSocketChannelSelectionKey.java \ -gnu/java/nio/SocketChannelImpl.java \ -gnu/java/nio/SocketChannelSelectionKey.java \ -gnu/java/nio/VMPipe.java \ -gnu/java/nio/VMSelector.java \ -gnu/java/nio/channels/FileChannelImpl.java \ -gnu/java/nio/charset/ISO_8859_1.java \ -gnu/java/nio/charset/Provider.java \ -gnu/java/nio/charset/US_ASCII.java \ -gnu/java/nio/charset/UTF_16.java \ -gnu/java/nio/charset/UTF_16BE.java \ -gnu/java/nio/charset/UTF_16Decoder.java \ -gnu/java/nio/charset/UTF_16Encoder.java \ -gnu/java/nio/charset/UTF_16LE.java \ -gnu/java/nio/charset/UTF_8.java \ -gnu/java/security/Engine.java \ -gnu/java/security/OID.java \ -gnu/java/security/PolicyFile.java \ -gnu/java/security/action/GetPropertyAction.java \ -gnu/java/security/action/GetSecurityPropertyAction.java \ -gnu/java/security/action/SetAccessibleAction.java \ -gnu/java/security/ber/BER.java \ -gnu/java/security/ber/BEREncodingException.java \ -gnu/java/security/ber/BERReader.java \ -gnu/java/security/ber/BERValue.java \ -gnu/java/security/der/BitString.java \ -gnu/java/security/der/DER.java \ -gnu/java/security/der/DEREncodingException.java \ -gnu/java/security/der/DERReader.java \ -gnu/java/security/der/DERValue.java \ -gnu/java/security/der/DERWriter.java \ -gnu/java/security/pkcs/PKCS7SignedData.java \ -gnu/java/security/pkcs/SignerInfo.java \ -gnu/java/security/provider/CollectionCertStoreImpl.java \ -gnu/java/security/provider/DSAKeyFactory.java \ -gnu/java/security/provider/DSAKeyPairGenerator.java \ -gnu/java/security/provider/DSAParameterGenerator.java \ -gnu/java/security/provider/DSAParameters.java \ -gnu/java/security/provider/DSASignature.java \ -gnu/java/security/provider/DefaultPolicy.java \ -gnu/java/security/provider/EncodedKeyFactory.java \ -gnu/java/security/provider/Gnu.java \ -gnu/java/security/provider/GnuDHPublicKey.java \ -gnu/java/security/provider/GnuDSAPrivateKey.java \ -gnu/java/security/provider/GnuDSAPublicKey.java \ -gnu/java/security/provider/GnuRSAPrivateKey.java \ -gnu/java/security/provider/GnuRSAPublicKey.java \ -gnu/java/security/provider/MD2withRSA.java \ -gnu/java/security/provider/MD4withRSA.java \ -gnu/java/security/provider/MD5.java \ -gnu/java/security/provider/MD5withRSA.java \ -gnu/java/security/provider/PKIXCertPathValidatorImpl.java \ -gnu/java/security/provider/RSA.java \ -gnu/java/security/provider/RSAKeyFactory.java \ -gnu/java/security/provider/SHA.java \ -gnu/java/security/provider/SHA1PRNG.java \ -gnu/java/security/provider/SHA1withRSA.java \ -gnu/java/security/provider/X509CertificateFactory.java \ -gnu/java/security/util/Prime.java \ -gnu/java/security/x509/GnuPKIExtension.java \ -gnu/java/security/x509/PolicyNodeImpl.java \ -gnu/java/security/x509/Util.java \ -gnu/java/security/x509/X500DistinguishedName.java \ -gnu/java/security/x509/X509CRL.java \ -gnu/java/security/x509/X509CRLEntry.java \ -gnu/java/security/x509/X509CRLSelectorImpl.java \ -gnu/java/security/x509/X509Certificate.java \ -gnu/java/security/x509/X509CertPath.java \ -gnu/java/security/x509/X509CertSelectorImpl.java \ -gnu/java/security/x509/ext/AuthorityKeyIdentifier.java \ -gnu/java/security/x509/ext/BasicConstraints.java \ -gnu/java/security/x509/ext/CRLNumber.java \ -gnu/java/security/x509/ext/CertificatePolicies.java \ -gnu/java/security/x509/ext/ExtendedKeyUsage.java \ -gnu/java/security/x509/ext/Extension.java \ -gnu/java/security/x509/ext/GeneralNames.java \ -gnu/java/security/x509/ext/IssuerAlternativeNames.java \ -gnu/java/security/x509/ext/KeyUsage.java \ -gnu/java/security/x509/ext/PolicyConstraint.java \ -gnu/java/security/x509/ext/PolicyMappings.java \ -gnu/java/security/x509/ext/PrivateKeyUsagePeriod.java \ -gnu/java/security/x509/ext/ReasonCode.java \ -gnu/java/security/x509/ext/SubjectAlternativeNames.java \ -gnu/java/security/x509/ext/SubjectKeyIdentifier.java \ -gnu/java/text/AttributedFormatBuffer.java \ -gnu/java/text/BaseBreakIterator.java \ -gnu/java/text/CharacterBreakIterator.java \ -gnu/java/text/FormatBuffer.java \ -gnu/java/text/FormatCharacterIterator.java \ -gnu/java/text/LineBreakIterator.java \ -gnu/java/text/SentenceBreakIterator.java \ -gnu/java/text/StringFormatBuffer.java \ -gnu/java/text/WordBreakIterator.java \ -gnu/java/util/DoubleEnumeration.java \ -gnu/java/util/EmptyEnumeration.java \ -gnu/java/util/prefs/FileBasedFactory.java \ -gnu/java/util/prefs/MemoryBasedFactory.java \ -gnu/java/util/prefs/MemoryBasedPreferences.java \ -gnu/java/util/prefs/NodeReader.java \ -gnu/java/util/prefs/NodeWriter.java \ -gnu/regexp/CharIndexed.java \ -gnu/regexp/CharIndexedCharArray.java \ -gnu/regexp/CharIndexedInputStream.java \ -gnu/regexp/CharIndexedString.java \ -gnu/regexp/CharIndexedStringBuffer.java \ -gnu/regexp/RE.java \ -gnu/regexp/REException.java \ -gnu/regexp/REFilterInputStream.java \ -gnu/regexp/REMatch.java \ -gnu/regexp/REMatchEnumeration.java \ -gnu/regexp/RESyntax.java \ -gnu/regexp/REToken.java \ -gnu/regexp/RETokenAny.java \ -gnu/regexp/RETokenBackRef.java \ -gnu/regexp/RETokenChar.java \ -gnu/regexp/RETokenEnd.java \ -gnu/regexp/RETokenEndSub.java \ -gnu/regexp/RETokenLookAhead.java \ -gnu/regexp/RETokenOneOf.java \ -gnu/regexp/RETokenPOSIX.java \ -gnu/regexp/RETokenRange.java \ -gnu/regexp/RETokenRepeated.java \ -gnu/regexp/RETokenStart.java \ -gnu/regexp/RETokenWordBoundary.java \ -gnu/regexp/UncheckedRE.java \ -java/lang/ref/PhantomReference.java \ -java/lang/ref/Reference.java \ -java/lang/ref/ReferenceQueue.java \ -java/lang/ref/SoftReference.java \ -java/lang/ref/WeakReference.java \ -java/lang/reflect/AccessibleObject.java \ -java/lang/reflect/Array.java \ -java/lang/reflect/Constructor.java \ -java/lang/reflect/Field.java \ -java/lang/reflect/InvocationHandler.java \ -java/lang/reflect/InvocationTargetException.java \ -java/lang/reflect/Member.java \ -java/lang/reflect/Method.java \ -java/lang/reflect/Modifier.java \ -java/lang/reflect/Proxy.java \ -java/lang/reflect/ReflectPermission.java \ -java/lang/reflect/UndeclaredThrowableException.java \ -java/math/BigDecimal.java \ -java/math/BigInteger.java \ -java/net/Authenticator.java \ -java/net/BindException.java \ -java/net/ConnectException.java \ -java/net/ContentHandler.java \ -java/net/ContentHandlerFactory.java \ -java/net/DatagramPacket.java \ -java/net/DatagramSocket.java \ -java/net/DatagramSocketImpl.java \ -java/net/DatagramSocketImplFactory.java \ -java/net/FileNameMap.java \ -java/net/HttpURLConnection.java \ -java/net/Inet4Address.java \ -java/net/Inet6Address.java \ -java/net/InetAddress.java \ -java/net/InetSocketAddress.java \ -java/net/JarURLConnection.java \ -java/net/MalformedURLException.java \ -java/net/MulticastSocket.java \ -java/net/NetPermission.java \ -java/net/NetworkInterface.java \ -java/net/NoRouteToHostException.java \ -java/net/PasswordAuthentication.java \ -java/net/PortUnreachableException.java \ -java/net/ProtocolException.java \ -java/net/ServerSocket.java \ -java/net/Socket.java \ -java/net/SocketAddress.java \ -java/net/SocketException.java \ -java/net/SocketImpl.java \ -java/net/SocketImplFactory.java \ -java/net/SocketOptions.java \ -java/net/SocketPermission.java \ -java/net/SocketTimeoutException.java \ -java/net/URI.java \ -java/net/URISyntaxException.java \ -java/net/URL.java \ -java/net/URLClassLoader.java \ -java/net/URLConnection.java \ -java/net/URLDecoder.java \ -java/net/URLEncoder.java \ -java/net/URLStreamHandler.java \ -java/net/URLStreamHandlerFactory.java \ -java/net/UnknownHostException.java \ -java/net/UnknownServiceException.java \ -java/net/VMNetworkInterface.java \ -java/nio/Buffer.java \ -java/nio/BufferOverflowException.java \ -java/nio/BufferUnderflowException.java \ -java/nio/ByteBuffer.java \ -java/nio/ByteBufferHelper.java \ -java/nio/ByteBufferImpl.java \ -java/nio/ByteOrder.java \ -java/nio/CharBuffer.java \ -java/nio/CharBufferImpl.java \ -java/nio/CharViewBufferImpl.java \ -java/nio/DirectByteBufferImpl.java \ -java/nio/DoubleBuffer.java \ -java/nio/DoubleBufferImpl.java \ -java/nio/DoubleViewBufferImpl.java \ -java/nio/FloatBuffer.java \ -java/nio/FloatBufferImpl.java \ -java/nio/FloatViewBufferImpl.java \ -java/nio/IntBuffer.java \ -java/nio/IntBufferImpl.java \ -java/nio/IntViewBufferImpl.java \ -java/nio/InvalidMarkException.java \ -java/nio/LongBuffer.java \ -java/nio/LongBufferImpl.java \ -java/nio/LongViewBufferImpl.java \ -java/nio/MappedByteBuffer.java \ -java/nio/MappedByteBufferImpl.java \ -java/nio/ReadOnlyBufferException.java \ -java/nio/ShortBuffer.java \ -java/nio/ShortBufferImpl.java \ -java/nio/ShortViewBufferImpl.java \ -java/nio/VMDirectByteBuffer.java \ -java/nio/channels/AlreadyConnectedException.java \ -java/nio/channels/AsynchronousCloseException.java \ -java/nio/channels/ByteChannel.java \ -java/nio/channels/CancelledKeyException.java \ -java/nio/channels/Channel.java \ -java/nio/channels/Channels.java \ -java/nio/channels/ClosedByInterruptException.java \ -java/nio/channels/ClosedChannelException.java \ -java/nio/channels/ClosedSelectorException.java \ -java/nio/channels/ConnectionPendingException.java \ -java/nio/channels/DatagramChannel.java \ -java/nio/channels/FileChannel.java \ -java/nio/channels/FileLock.java \ -java/nio/channels/FileLockInterruptionException.java \ -java/nio/channels/GatheringByteChannel.java \ -java/nio/channels/IllegalBlockingModeException.java \ -java/nio/channels/IllegalSelectorException.java \ -java/nio/channels/InterruptibleChannel.java \ -java/nio/channels/NoConnectionPendingException.java \ -java/nio/channels/NonReadableChannelException.java \ -java/nio/channels/NonWritableChannelException.java \ -java/nio/channels/NotYetBoundException.java \ -java/nio/channels/NotYetConnectedException.java \ -java/nio/channels/OverlappingFileLockException.java \ -java/nio/channels/Pipe.java \ -java/nio/channels/ReadableByteChannel.java \ -java/nio/channels/ScatteringByteChannel.java \ -java/nio/channels/SelectableChannel.java \ -java/nio/channels/SelectionKey.java \ -java/nio/channels/Selector.java \ -java/nio/channels/ServerSocketChannel.java \ -java/nio/channels/SocketChannel.java \ -java/nio/channels/UnresolvedAddressException.java \ -java/nio/channels/UnsupportedAddressTypeException.java \ -java/nio/channels/WritableByteChannel.java \ -java/nio/channels/spi/AbstractInterruptibleChannel.java \ -java/nio/channels/spi/AbstractSelectableChannel.java \ -java/nio/channels/spi/AbstractSelectionKey.java \ -java/nio/channels/spi/AbstractSelector.java \ -java/nio/channels/spi/SelectorProvider.java \ -java/nio/charset/CharacterCodingException.java \ -java/nio/charset/Charset.java \ -java/nio/charset/CharsetDecoder.java \ -java/nio/charset/CharsetEncoder.java \ -java/nio/charset/CoderMalfunctionError.java \ -java/nio/charset/CoderResult.java \ -java/nio/charset/CodingErrorAction.java \ -java/nio/charset/IllegalCharsetNameException.java \ -java/nio/charset/MalformedInputException.java \ -java/nio/charset/UnmappableCharacterException.java \ -java/nio/charset/UnsupportedCharsetException.java \ -java/nio/charset/spi/CharsetProvider.java \ -java/security/AccessControlContext.java \ -java/security/AccessControlException.java \ -java/security/AccessController.java \ -java/security/AlgorithmParameterGenerator.java \ -java/security/AlgorithmParameterGeneratorSpi.java \ -java/security/AlgorithmParameters.java \ -java/security/AlgorithmParametersSpi.java \ -java/security/AllPermission.java \ -java/security/BasicPermission.java \ -java/security/Certificate.java \ -java/security/CodeSource.java \ -java/security/DigestException.java \ -java/security/DigestInputStream.java \ -java/security/DigestOutputStream.java \ -java/security/DomainCombiner.java \ -java/security/DummyKeyPairGenerator.java \ -java/security/DummyMessageDigest.java \ -java/security/DummySignature.java \ -java/security/GeneralSecurityException.java \ -java/security/Guard.java \ -java/security/GuardedObject.java \ -java/security/Identity.java \ -java/security/IdentityScope.java \ -java/security/InvalidAlgorithmParameterException.java \ -java/security/InvalidKeyException.java \ -java/security/InvalidParameterException.java \ -java/security/Key.java \ -java/security/KeyException.java \ -java/security/KeyFactory.java \ -java/security/KeyFactorySpi.java \ -java/security/KeyManagementException.java \ -java/security/KeyPair.java \ -java/security/KeyPairGenerator.java \ -java/security/KeyPairGeneratorSpi.java \ -java/security/KeyStore.java \ -java/security/KeyStoreException.java \ -java/security/KeyStoreSpi.java \ -java/security/MessageDigest.java \ -java/security/MessageDigestSpi.java \ -java/security/NoSuchAlgorithmException.java \ -java/security/NoSuchProviderException.java \ -java/security/Permission.java \ -java/security/PermissionCollection.java \ -java/security/Permissions.java \ -java/security/Policy.java \ -java/security/Principal.java \ -java/security/PrivateKey.java \ -java/security/PrivilegedAction.java \ -java/security/PrivilegedActionException.java \ -java/security/PrivilegedExceptionAction.java \ -java/security/ProtectionDomain.java \ -java/security/Provider.java \ -java/security/ProviderException.java \ -java/security/PublicKey.java \ -java/security/SecureClassLoader.java \ -java/security/SecureRandom.java \ -java/security/SecureRandomSpi.java \ -java/security/Security.java \ -java/security/SecurityPermission.java \ -java/security/Signature.java \ -java/security/SignatureException.java \ -java/security/SignatureSpi.java \ -java/security/SignedObject.java \ -java/security/Signer.java \ -java/security/UnrecoverableKeyException.java \ -java/security/UnresolvedPermission.java \ -java/security/acl/Acl.java \ -java/security/acl/AclEntry.java \ -java/security/acl/AclNotFoundException.java \ -java/security/acl/Group.java \ -java/security/acl/LastOwnerException.java \ -java/security/acl/NotOwnerException.java \ -java/security/acl/Owner.java \ -java/security/acl/Permission.java \ -java/security/cert/CRL.java \ -java/security/cert/CRLException.java \ -java/security/cert/CRLSelector.java \ -java/security/cert/CertPath.java \ -java/security/cert/CertPathBuilder.java \ -java/security/cert/CertPathBuilderException.java \ -java/security/cert/CertPathBuilderResult.java \ -java/security/cert/CertPathBuilderSpi.java \ -java/security/cert/CertPathParameters.java \ -java/security/cert/CertPathValidator.java \ -java/security/cert/CertPathValidatorException.java \ -java/security/cert/CertPathValidatorResult.java \ -java/security/cert/CertPathValidatorSpi.java \ -java/security/cert/CertSelector.java \ -java/security/cert/CertStore.java \ -java/security/cert/CertStoreException.java \ -java/security/cert/CertStoreParameters.java \ -java/security/cert/CertStoreSpi.java \ -java/security/cert/Certificate.java \ -java/security/cert/CertificateEncodingException.java \ -java/security/cert/CertificateException.java \ -java/security/cert/CertificateExpiredException.java \ -java/security/cert/CertificateFactory.java \ -java/security/cert/CertificateFactorySpi.java \ -java/security/cert/CertificateNotYetValidException.java \ -java/security/cert/CertificateParsingException.java \ -java/security/cert/CollectionCertStoreParameters.java \ -java/security/cert/LDAPCertStoreParameters.java \ -java/security/cert/PKIXBuilderParameters.java \ -java/security/cert/PKIXCertPathBuilderResult.java \ -java/security/cert/PKIXCertPathChecker.java \ -java/security/cert/PKIXCertPathValidatorResult.java \ -java/security/cert/PKIXParameters.java \ -java/security/cert/PolicyNode.java \ -java/security/cert/PolicyQualifierInfo.java \ -java/security/cert/TrustAnchor.java \ -java/security/cert/X509CRL.java \ -java/security/cert/X509CRLEntry.java \ -java/security/cert/X509CRLSelector.java \ -java/security/cert/X509CertSelector.java \ -java/security/cert/X509Certificate.java \ -java/security/cert/X509Extension.java \ -java/security/interfaces/DSAKey.java \ -java/security/interfaces/DSAKeyPairGenerator.java \ -java/security/interfaces/DSAParams.java \ -java/security/interfaces/DSAPrivateKey.java \ -java/security/interfaces/DSAPublicKey.java \ -java/security/interfaces/RSAKey.java \ -java/security/interfaces/RSAMultiPrimePrivateCrtKey.java \ -java/security/interfaces/RSAPrivateCrtKey.java \ -java/security/interfaces/RSAPrivateKey.java \ -java/security/interfaces/RSAPublicKey.java \ -java/security/spec/AlgorithmParameterSpec.java \ -java/security/spec/DSAParameterSpec.java \ -java/security/spec/DSAPrivateKeySpec.java \ -java/security/spec/DSAPublicKeySpec.java \ -java/security/spec/EncodedKeySpec.java \ -java/security/spec/InvalidKeySpecException.java \ -java/security/spec/InvalidParameterSpecException.java \ -java/security/spec/KeySpec.java \ -java/security/spec/PKCS8EncodedKeySpec.java \ -java/security/spec/PSSParameterSpec.java \ -java/security/spec/RSAKeyGenParameterSpec.java \ -java/security/spec/RSAMultiPrimePrivateCrtKeySpec.java\ -java/security/spec/RSAOtherPrimeInfo.java \ -java/security/spec/RSAPrivateCrtKeySpec.java \ -java/security/spec/RSAPrivateKeySpec.java \ -java/security/spec/RSAPublicKeySpec.java \ -java/security/spec/X509EncodedKeySpec.java \ -java/sql/Array.java \ -java/sql/BatchUpdateException.java \ -java/sql/Blob.java \ -java/sql/CallableStatement.java \ -java/sql/Clob.java \ -java/sql/Connection.java \ -java/sql/DataTruncation.java \ -java/sql/DatabaseMetaData.java \ -java/sql/Date.java \ -java/sql/Driver.java \ -java/sql/DriverManager.java \ -java/sql/DriverPropertyInfo.java \ -java/sql/ParameterMetaData.java \ -java/sql/PreparedStatement.java \ -java/sql/Ref.java \ -java/sql/ResultSet.java \ -java/sql/ResultSetMetaData.java \ -java/sql/SQLData.java \ -java/sql/SQLException.java \ -java/sql/SQLInput.java \ -java/sql/SQLOutput.java \ -java/sql/SQLPermission.java \ -java/sql/SQLWarning.java \ -java/sql/Savepoint.java \ -java/sql/Statement.java \ -java/sql/Struct.java \ -java/sql/Time.java \ -java/sql/Timestamp.java \ -java/sql/Types.java \ -java/text/Annotation.java \ -java/text/AttributedCharacterIterator.java \ -java/text/AttributedString.java \ -java/text/AttributedStringIterator.java \ -java/text/BreakIterator.java \ -java/text/CharacterIterator.java \ -java/text/ChoiceFormat.java \ -java/text/CollationElementIterator.java \ -java/text/CollationKey.java \ -java/text/Collator.java \ -java/text/DateFormat.java \ -java/text/DateFormatSymbols.java \ -java/text/DecimalFormat.java \ -java/text/DecimalFormatSymbols.java \ -java/text/FieldPosition.java \ -java/text/Format.java \ -java/text/MessageFormat.java \ -java/text/NumberFormat.java \ -java/text/ParseException.java \ -java/text/ParsePosition.java \ -java/text/RuleBasedCollator.java \ -java/text/SimpleDateFormat.java \ -java/text/StringCharacterIterator.java \ -java/util/jar/Attributes.java \ -java/util/jar/JarEntry.java \ -java/util/jar/JarException.java \ -java/util/jar/JarFile.java \ -java/util/jar/JarInputStream.java \ -java/util/jar/JarOutputStream.java \ -java/util/jar/Manifest.java \ -java/util/zip/Adler32.java \ -java/util/zip/CRC32.java \ -java/util/zip/CheckedInputStream.java \ -java/util/zip/CheckedOutputStream.java \ -java/util/zip/Checksum.java \ -java/util/zip/DataFormatException.java \ -java/util/zip/Deflater.java \ -java/util/zip/DeflaterOutputStream.java \ -java/util/zip/GZIPInputStream.java \ -java/util/zip/GZIPOutputStream.java \ -java/util/zip/Inflater.java \ -java/util/zip/InflaterInputStream.java \ -java/util/zip/ZipConstants.java \ -java/util/zip/ZipEntry.java \ -java/util/zip/ZipException.java \ -java/util/zip/ZipFile.java \ -java/util/zip/ZipInputStream.java \ -java/util/zip/ZipOutputStream.java \ -$(rmi_java_source_files) \ -$(awt_java_source_files) \ -$(convert_source_files) \ -$(javax_source_files) \ -$(org_source_files) - - -java_source_files = $(special_java_source_files) $(ordinary_java_source_files) - -## Math library: C, not C++ -math_c_source_files = \ - java/lang/dtoa.c java/lang/k_rem_pio2.c java/lang/s_tan.c \ - java/lang/e_acos.c java/lang/k_sin.c java/lang/strtod.c \ - java/lang/e_asin.c java/lang/k_tan.c java/lang/w_acos.c \ - java/lang/e_atan2.c java/lang/mprec.c java/lang/w_asin.c \ - java/lang/e_exp.c java/lang/s_atan.c java/lang/w_atan2.c \ - java/lang/e_fmod.c java/lang/s_ceil.c java/lang/w_exp.c \ - java/lang/e_log.c java/lang/s_copysign.c java/lang/w_fmod.c \ - java/lang/e_pow.c java/lang/s_cos.c java/lang/w_log.c \ - java/lang/e_rem_pio2.c java/lang/s_fabs.c java/lang/w_pow.c \ - java/lang/e_remainder.c java/lang/s_floor.c java/lang/w_remainder.c \ - java/lang/e_scalb.c java/lang/s_rint.c java/lang/w_sqrt.c \ - java/lang/e_sqrt.c java/lang/s_scalbn.c java/lang/sf_rint.c \ - java/lang/k_cos.c java/lang/s_sin.c java/lang/sf_fabs.c - - ## This lists all the C++ source files in subdirectories. nat_source_files = \ gnu/classpath/natSystemProperties.cc \ @@ -4006,16 +902,6 @@ src.zip: ## Many of the above circumlocutions are because ZIP will most likely ## be a relative path to fastjar. $(ZIP) -cfM@ $$here/src.zip -## Now include the files from external/. - for dir in sax w3c_dom; do \ - (cd $(srcdir)/external/$$dir; \ - find org -type f -name '*.java' -print | while read file; do \ - echo "x-C" | sed -e 's/^.//'; \ - echo $(srcdir)/external/$$dir; \ - echo $$file; \ - done) | \ - $(ZIP) -ufM0E@ src.zip; \ - done ## We use a variable for this in case the user wants to override it. sourcesdir = $(jardir) @@ -4031,13 +917,33 @@ install-src.zip: src.zip ## ## This is an evil hack to work around an automake limitation. We -## need to ensure that all CNI headers are built, not just the ones used -## internally by libgcj. We can't make the .o files depend on nat_headers, -## because in that case we'll force a complete rebuild of -## the C++ code whenever any .java file is touched. -## Also force all the class files to build first. This makes them build in -## the right order to improve performance. -all-recursive: classes.stamp $(nat_headers) $(xlib_nat_headers) +## need to ensure that all CNI headers are built, not just the ones +## used internally by libgcj. We can't make the .o files depend on +## nat_headers, because in that case we'll force a complete rebuild of +## the C++ code whenever any .java file is touched. So instead we +## have a dummy rule which is only used once, namely the first time a +## build is done. On subsequent builds, the dependency tracking for +## the .cc compilations will have picked up the .h files, and these +## will be built directly as needed. + +headers.stamp: +## Note that we don't use a real dependency here, since we don't want +## to rebuild all the headers here when the header list changes. If +## we did rebuild here, then any addition of a .java file would cause +## a large number of recompilations. + $(MAKE) create-headers + @echo > headers.stamp + +headers_to_make = $(nat_headers) +if XLIB_AWT +headers_to_make += $(xlib_nat_headers) +endif + +create-headers: $(headers_to_make) + +.PHONY: create-headers + +$(libgcj_la_OBJECTS) $(gcj_dbtool_OBJECTS) $(xlib_nat_files): headers.stamp ## ################################################################ diff --git a/libjava/Makefile.in b/libjava/Makefile.in index 2979f0beff1..23be822d4f4 100644 --- a/libjava/Makefile.in +++ b/libjava/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.9.3 from Makefile.am. +# Makefile.in generated by automake 1.9.5 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. +# 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in 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. @@ -58,11 +58,6 @@ target_triplet = @target@ @USING_POSIX_THREADS_TRUE@am__append_11 = posix-threads.cc @USING_WIN32_THREADS_TRUE@am__append_12 = win32-threads.cc @USING_NO_THREADS_TRUE@am__append_13 = no-threads.cc - -# Gtk/Cairo JNI sources. -@GTK_CAIRO_TRUE@am__append_14 = jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c -@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@noinst_PROGRAMS = \ -@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gen-from-JIS$(EXEEXT) DIST_COMMON = README $(am__configure_deps) $(srcdir)/../compile \ $(srcdir)/../config.guess $(srcdir)/../config.sub \ $(srcdir)/../depcomp $(srcdir)/../install-sh \ @@ -70,20 +65,20 @@ DIST_COMMON = README $(am__configure_deps) $(srcdir)/../compile \ $(srcdir)/../mkinstalldirs $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(srcdir)/libgcj-test.spec.in \ $(srcdir)/libgcj.pc.in $(srcdir)/libgcj.spec.in \ - $(top_srcdir)/configure \ - $(top_srcdir)/gnu/classpath/Configuration.java.in COPYING \ - ChangeLog NEWS THANKS + $(srcdir)/sources.am $(top_srcdir)/configure COPYING ChangeLog \ + NEWS THANKS +@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@noinst_PROGRAMS = \ +@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gen-from-JIS$(EXEEXT) +@XLIB_AWT_TRUE@am__append_14 = $(xlib_nat_headers) subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ - $(top_srcdir)/../config/depstand.m4 \ $(top_srcdir)/../config/gxx-include-dir.m4 \ $(top_srcdir)/../config/iconv.m4 \ $(top_srcdir)/../config/lcmessage.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)/pkg.m4 \ + $(top_srcdir)/../config/lib-prefix.m4 \ $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/../config/no-executables.m4 \ $(top_srcdir)/../libtool.m4 $(top_srcdir)/configure.ac @@ -94,9 +89,9 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ CONFIG_HEADER = $(top_builddir)/include/config.h \ $(top_builddir)/gcj/libgcj-config.h CONFIG_CLEAN_FILES = libgcj.pc libgcj.spec libgcj-test.spec \ - gnu/classpath/Configuration.java java/io/natFile.cc \ - java/lang/ConcreteProcess.java java/lang/natConcreteProcess.cc \ - java/net/natInetAddress.cc java/net/natVMNetworkInterface.cc \ + java/io/natFile.cc java/lang/ConcreteProcess.java \ + java/lang/natConcreteProcess.cc java/net/natInetAddress.cc \ + java/net/natVMNetworkInterface.cc \ gnu/java/net/natPlainSocketImpl.cc \ gnu/java/net/natPlainDatagramSocketImpl.cc \ gnu/java/nio/natPipeImpl.cc gnu/java/nio/natSelectorImpl.cc \ @@ -140,100 +135,75 @@ am_lib_gnu_awt_xlib_la_OBJECTS = $(am__objects_1) lib_gnu_awt_xlib_la_OBJECTS = $(am_lib_gnu_awt_xlib_la_OBJECTS) @XLIB_AWT_TRUE@am_lib_gnu_awt_xlib_la_rpath = -rpath $(toolexeclibdir) am__DEPENDENCIES_2 = -am__lib_gnu_java_awt_peer_gtk_la_SOURCES_DIST = \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GdkTextLayout.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFramePeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.c \ - jni/gtk-peer/gthread-jni.c jni/gtk-peer/gtk_jawt.c \ - jni/classpath/native_state.c jni/gtk-peer/gthread-jni.h \ - jni/gtk-peer/gtkpeer.h jni/classpath/native_state.h \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c -@GTK_CAIRO_TRUE@am__objects_2 = jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.lo -am_lib_gnu_java_awt_peer_gtk_la_OBJECTS = jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gthread-jni.lo \ - jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.lo \ - jni/classpath/lib_gnu_java_awt_peer_gtk_la-native_state.lo \ - $(am__objects_2) +am_lib_gnu_java_awt_peer_gtk_la_OBJECTS = lib_gnu_java_awt_peer_gtk_la_OBJECTS = \ $(am_lib_gnu_java_awt_peer_gtk_la_OBJECTS) @GTK_AWT_TRUE@am_lib_gnu_java_awt_peer_gtk_la_rpath = -rpath \ @GTK_AWT_TRUE@ $(toolexeclibdir) -am__DEPENDENCIES_3 = $(filter-out $(all_xlib_lo_files), \ - $(all_java_lo_files)) -am__DEPENDENCIES_4 = gnu/regexp/MessagesBundle.properties.lo \ - gnu/regexp/MessagesBundle_fr.properties.lo \ - org/ietf/jgss/MessagesBundle.properties.lo -am__DEPENDENCIES_5 = $(am__DEPENDENCIES_4) +am__DEPENDENCIES_3 = gnu/awt.lo gnu/awt/j2d.lo gnu/classpath.lo \ + gnu/classpath/debug.lo gnu/gcj.lo gnu/gcj/convert.lo \ + gnu/gcj/io.lo gnu/gcj/runtime.lo gnu/gcj/util.lo \ + gnu/java/awt.lo gnu/java/awt/color.lo gnu/java/awt/image.lo \ + gnu/java/awt/peer.lo gnu/java/io.lo gnu/java/lang.lo \ + gnu/java/lang/reflect.lo gnu/java/locale.lo gnu/java/math.lo \ + gnu/java/net.lo gnu/java/net/protocol/file.lo \ + gnu/java/net/protocol/ftp.lo gnu/java/net/protocol/http.lo \ + gnu/java/net/protocol/http/event.lo \ + gnu/java/net/protocol/https.lo gnu/java/net/protocol/jar.lo \ + gnu/java/nio.lo gnu/java/nio/channels.lo \ + gnu/java/nio/charset.lo gnu/java/rmi.lo gnu/java/rmi/dgc.lo \ + gnu/java/rmi/registry.lo gnu/java/rmi/server.lo \ + gnu/java/security.lo gnu/java/security/action.lo \ + gnu/java/security/ber.lo gnu/java/security/der.lo \ + gnu/java/security/pkcs.lo gnu/java/security/provider.lo \ + gnu/java/security/util.lo gnu/java/security/x509.lo \ + gnu/java/security/x509/ext.lo gnu/java/text.lo \ + gnu/java/util.lo gnu/java/util/prefs.lo \ + gnu/javax/swing/text/html/parser.lo \ + gnu/javax/swing/text/html/parser/models.lo \ + gnu/javax/swing/text/html/parser/support.lo \ + gnu/javax/swing/text/html/parser/support/low.lo gnu/regexp.lo \ + java/applet.lo java/awt.lo java/awt/color.lo \ + java/awt/datatransfer.lo java/awt/dnd.lo java/awt/dnd/peer.lo \ + java/awt/event.lo java/awt/font.lo java/awt/geom.lo \ + java/awt/im.lo java/awt/im/spi.lo java/awt/image.lo \ + java/awt/image/renderable.lo java/awt/peer.lo \ + java/awt/print.lo java/beans.lo java/beans/beancontext.lo \ + java/io.lo java/lang.lo java/lang/annotation.lo \ + java/lang/ref.lo java/lang/reflect.lo java/math.lo java/net.lo \ + java/nio.lo java/nio/channels.lo java/nio/channels/spi.lo \ + java/nio/charset.lo java/nio/charset/spi.lo java/rmi.lo \ + java/rmi/activation.lo java/rmi/dgc.lo java/rmi/registry.lo \ + java/rmi/server.lo java/security.lo java/security/acl.lo \ + java/security/cert.lo java/security/interfaces.lo \ + java/security/spec.lo java/sql.lo java/text.lo java/util.lo \ + java/util/jar.lo java/util/logging.lo java/util/prefs.lo \ + java/util/regex.lo java/util/zip.lo javax/accessibility.lo \ + javax/crypto.lo javax/crypto/interfaces.lo \ + javax/crypto/spec.lo javax/naming.lo javax/naming/directory.lo \ + javax/naming/event.lo javax/naming/ldap.lo javax/naming/spi.lo \ + javax/net.lo javax/net/ssl.lo javax/print.lo \ + javax/print/attribute.lo javax/print/attribute/standard.lo \ + javax/print/event.lo javax/security/auth.lo \ + javax/security/auth/callback.lo javax/security/auth/login.lo \ + javax/security/auth/spi.lo javax/security/auth/x500.lo \ + javax/security/cert.lo javax/security/sasl.lo javax/sql.lo \ + javax/swing.lo javax/swing/border.lo \ + javax/swing/colorchooser.lo javax/swing/event.lo \ + javax/swing/filechooser.lo javax/swing/plaf.lo \ + javax/swing/plaf/basic.lo javax/swing/plaf/metal.lo \ + javax/swing/table.lo javax/swing/text.lo \ + javax/swing/text/html.lo javax/swing/text/html/parser.lo \ + javax/swing/text/rtf.lo javax/swing/tree.lo \ + javax/swing/undo.lo javax/transaction.lo \ + javax/transaction/xa.lo org/ietf/jgss.lo +am__DEPENDENCIES_4 = gnu-java-beans.lo gnu-xml.lo javax-imageio.lo \ + javax-xml.lo org-w3c.lo org-xml.lo +am__DEPENDENCIES_5 = $(patsubst \ + classpath/resource/%,%,$(property_files:.properties=.properties.lo)) am__libgcj_la_SOURCES_DIST = prims.cc jni.cc exception.cc \ stacktrace.cc link.cc defineclass.cc interpret.cc verify.cc \ + java/lang/Class.java java/lang/Object.java \ gnu/classpath/natSystemProperties.cc gnu/gcj/natCore.cc \ gnu/gcj/convert/JIS0208_to_Unicode.cc \ gnu/gcj/convert/JIS0212_to_Unicode.cc \ @@ -272,23 +242,10 @@ am__libgcj_la_SOURCES_DIST = prims.cc jni.cc exception.cc \ java/nio/natDirectByteBufferImpl.cc java/text/natCollator.cc \ java/util/natResourceBundle.cc java/util/natVMTimeZone.cc \ java/util/logging/natLogger.cc java/util/zip/natDeflater.cc \ - java/util/zip/natInflater.cc java/lang/dtoa.c \ - java/lang/k_rem_pio2.c java/lang/s_tan.c java/lang/e_acos.c \ - java/lang/k_sin.c java/lang/strtod.c java/lang/e_asin.c \ - java/lang/k_tan.c java/lang/w_acos.c java/lang/e_atan2.c \ - java/lang/mprec.c java/lang/w_asin.c java/lang/e_exp.c \ - java/lang/s_atan.c java/lang/w_atan2.c java/lang/e_fmod.c \ - java/lang/s_ceil.c java/lang/w_exp.c java/lang/e_log.c \ - java/lang/s_copysign.c java/lang/w_fmod.c java/lang/e_pow.c \ - java/lang/s_cos.c java/lang/w_log.c java/lang/e_rem_pio2.c \ - java/lang/s_fabs.c java/lang/w_pow.c java/lang/e_remainder.c \ - java/lang/s_floor.c java/lang/w_remainder.c \ - java/lang/e_scalb.c java/lang/s_rint.c java/lang/w_sqrt.c \ - java/lang/e_sqrt.c java/lang/s_scalbn.c java/lang/sf_rint.c \ - java/lang/k_cos.c java/lang/s_sin.c java/lang/sf_fabs.c \ - boehm.cc nogc.cc sysdep/dwarf2-backtrace.cc posix.cc win32.cc \ - darwin.cc posix-threads.cc win32-threads.cc no-threads.cc -am__objects_3 = gnu/classpath/natSystemProperties.lo \ + java/util/zip/natInflater.cc boehm.cc nogc.cc \ + sysdep/dwarf2-backtrace.cc posix.cc win32.cc darwin.cc \ + posix-threads.cc win32-threads.cc no-threads.cc +am__objects_2 = gnu/classpath/natSystemProperties.lo \ gnu/gcj/natCore.lo gnu/gcj/convert/JIS0208_to_Unicode.lo \ gnu/gcj/convert/JIS0212_to_Unicode.lo \ gnu/gcj/convert/Unicode_to_JIS.lo gnu/gcj/convert/natIconv.lo \ @@ -327,35 +284,21 @@ am__objects_3 = gnu/classpath/natSystemProperties.lo \ java/util/natResourceBundle.lo java/util/natVMTimeZone.lo \ java/util/logging/natLogger.lo java/util/zip/natDeflater.lo \ java/util/zip/natInflater.lo -am__objects_4 = java/lang/dtoa.lo java/lang/k_rem_pio2.lo \ - java/lang/s_tan.lo java/lang/e_acos.lo java/lang/k_sin.lo \ - java/lang/strtod.lo java/lang/e_asin.lo java/lang/k_tan.lo \ - java/lang/w_acos.lo java/lang/e_atan2.lo java/lang/mprec.lo \ - java/lang/w_asin.lo java/lang/e_exp.lo java/lang/s_atan.lo \ - java/lang/w_atan2.lo java/lang/e_fmod.lo java/lang/s_ceil.lo \ - java/lang/w_exp.lo java/lang/e_log.lo java/lang/s_copysign.lo \ - java/lang/w_fmod.lo java/lang/e_pow.lo java/lang/s_cos.lo \ - java/lang/w_log.lo java/lang/e_rem_pio2.lo java/lang/s_fabs.lo \ - java/lang/w_pow.lo java/lang/e_remainder.lo \ - java/lang/s_floor.lo java/lang/w_remainder.lo \ - java/lang/e_scalb.lo java/lang/s_rint.lo java/lang/w_sqrt.lo \ - java/lang/e_sqrt.lo java/lang/s_scalbn.lo java/lang/sf_rint.lo \ - java/lang/k_cos.lo java/lang/s_sin.lo java/lang/sf_fabs.lo -@USING_BOEHMGC_TRUE@am__objects_5 = boehm.lo -@USING_NOGC_TRUE@am__objects_6 = nogc.lo -@SUPPLY_BACKTRACE_TRUE@am__objects_7 = sysdep/dwarf2-backtrace.lo -@USING_POSIX_PLATFORM_TRUE@am__objects_8 = posix.lo -@USING_WIN32_PLATFORM_TRUE@am__objects_9 = win32.lo -@USING_DARWIN_CRT_TRUE@am__objects_10 = darwin.lo -@USING_POSIX_THREADS_TRUE@am__objects_11 = posix-threads.lo -@USING_WIN32_THREADS_TRUE@am__objects_12 = win32-threads.lo -@USING_NO_THREADS_TRUE@am__objects_13 = no-threads.lo +@USING_BOEHMGC_TRUE@am__objects_3 = boehm.lo +@USING_NOGC_TRUE@am__objects_4 = nogc.lo +@SUPPLY_BACKTRACE_TRUE@am__objects_5 = sysdep/dwarf2-backtrace.lo +@USING_POSIX_PLATFORM_TRUE@am__objects_6 = posix.lo +@USING_WIN32_PLATFORM_TRUE@am__objects_7 = win32.lo +@USING_DARWIN_CRT_TRUE@am__objects_8 = darwin.lo +@USING_POSIX_THREADS_TRUE@am__objects_9 = posix-threads.lo +@USING_WIN32_THREADS_TRUE@am__objects_10 = win32-threads.lo +@USING_NO_THREADS_TRUE@am__objects_11 = no-threads.lo am_libgcj_la_OBJECTS = prims.lo jni.lo exception.lo stacktrace.lo \ - link.lo defineclass.lo interpret.lo verify.lo $(am__objects_3) \ - $(am__objects_4) $(am__objects_5) $(am__objects_6) \ - $(am__objects_7) $(am__objects_8) $(am__objects_9) \ - $(am__objects_10) $(am__objects_11) $(am__objects_12) \ - $(am__objects_13) + link.lo defineclass.lo interpret.lo verify.lo \ + java/lang/Class.lo java/lang/Object.lo $(am__objects_2) \ + $(am__objects_3) $(am__objects_4) $(am__objects_5) \ + $(am__objects_6) $(am__objects_7) $(am__objects_8) \ + $(am__objects_9) $(am__objects_10) $(am__objects_11) libgcj_la_OBJECTS = $(am_libgcj_la_OBJECTS) libgcjawt_la_DEPENDENCIES = lib-gnu-java-awt-peer-gtk.la am_libgcjawt_la_OBJECTS = libgcjawt_la-jawt.lo @@ -413,7 +356,7 @@ SOURCES = $(lib_gnu_awt_xlib_la_SOURCES) \ $(gcj_dbtool_SOURCES) $(gen_from_JIS_SOURCES) $(gij_SOURCES) \ $(grmic_SOURCES) $(grmiregistry_SOURCES) $(jv_convert_SOURCES) DIST_SOURCES = $(lib_gnu_awt_xlib_la_SOURCES) \ - $(am__lib_gnu_java_awt_peer_gtk_la_SOURCES_DIST) \ + $(lib_gnu_java_awt_peer_gtk_la_SOURCES) \ $(am__libgcj_la_SOURCES_DIST) $(libgcjawt_la_SOURCES) \ $(libgij_la_SOURCES) $(gcj_dbtool_SOURCES) \ $(am__gen_from_JIS_SOURCES_DIST) $(gij_SOURCES) \ @@ -432,7 +375,7 @@ DATA = $(dbexec_DATA) $(jar_DATA) $(pkgconfig_DATA) \ $(toolexecmainlib_DATA) ETAGS = etags CTAGS = ctags -DIST_SUBDIRS = @DIRLTDL@ gcj include external testsuite +DIST_SUBDIRS = @DIRLTDL@ gcj include classpath testsuite DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -669,7 +612,7 @@ ACLOCAL_AMFLAGS = -I . -I ../config # May be used by various substitution variables. gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER) -SUBDIRS = $(DIRLTDL) gcj include external $(am__append_1) +SUBDIRS = $(DIRLTDL) gcj include classpath $(am__append_1) # write_entries_to_file - writes each entry in a list # to the specified file. Each entry is written individually @@ -700,7 +643,6 @@ bin_SCRIPTS = addr2name.awk GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated GCJLINK = $(LIBTOOL) --tag=GCJ --mode=link $(GCJ) -L$(here) $(JC1FLAGS) $(LDFLAGS) -o $@ LIBLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXX) -L$(here) $(JC1FLAGS) $(LDFLAGS) -o $@ -JAVAC = $(GCJ_WITH_FLAGS) -C WARNINGS = -Wextra -Wall AM_CXXFLAGS = \ -fno-rtti \ @@ -733,37 +675,14 @@ AM_CFLAGS = @LIBGCJ_CFLAGS@ $(am__append_4) PEDANTIC_CFLAGS = -ansi -pedantic -Wall -Wno-long-long JCFLAGS = -g JC1FLAGS = @LIBGCJ_JAVAFLAGS@ $(GCJFLAGS) -AM_CPPFLAGS = -I$(top_srcdir) -Iinclude -I$(top_srcdir)/include \ +AM_CPPFLAGS = -I$(top_srcdir) \ + -Iinclude -I$(top_srcdir)/include \ + -I$(top_srcdir)/classpath/include \ + -I$(top_srcdir)/classpath/native/fdlibm \ $(GCINCS) $(THREADINCS) $(INCLTDL) \ $(GCC_UNWIND_INCLUDE) $(ZINCS) $(LIBFFIINCS) -BOOTCLASSPATH = $(here)'$(CLASSPATH_SEPARATOR)'$(srcdir)'$(CLASSPATH_SEPARATOR)'$(srcdir)/external/w3c_dom'$(CLASSPATH_SEPARATOR)'$(srcdir)/external/sax - -# Files for which we build .lo files -all_native_compiled_source_files = \ - $(java_source_files) \ - $(built_java_source_files) \ - $(xlib_java_source_files) - - -# Files for which we build .class files -# It *must* begin with $(all_native_compiled_source_files) -all_java_source_files = \ - $(all_native_compiled_source_files) \ - $(gtk_awt_peer_source_files) \ - $(gnu_xml_source_files) \ - $(javax_imageio_source_files) \ - $(javax_xml_source_files) \ - $(gnu_java_beans_source_files) \ - gnu/gcj/tools/gcj_dbtool/Main.java - -EXTRA_DIST = $(all_java_source_files) -all_native_compiled_dirs = $(sort $(patsubst %/, %, $(dir $(all_native_compiled_source_files)))) -all_java_dirs = $(sort $(patsubst %/, %, $(dir $(all_java_source_files)))) -all_java_lo_files = $(all_native_compiled_dirs:=.lo) -all_java_deps_files = $(all_java_dirs:=.deps) -all_java_stamp_files = $(all_java_dirs:=.stamp) -all_java_filelist_files = $(all_java_dirs:=.list) +BOOTCLASSPATH = $(here)/classpath/lib # In the future these may be defined manually, if we decide to split libgcj.so # into multiple shared libraries. For now, everything but xlib goes into @@ -780,11 +699,11 @@ libgij_la_LDFLAGS = -rpath $(toolexeclibdir) \ -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(LIBGCJ_LD_SYMBOLIC) libgcj_la_SOURCES = prims.cc jni.cc exception.cc stacktrace.cc link.cc \ - defineclass.cc interpret.cc verify.cc $(nat_source_files) \ - $(math_c_source_files) $(am__append_5) $(am__append_6) \ - $(am__append_7) $(am__append_8) $(am__append_9) \ - $(am__append_10) $(am__append_11) $(am__append_12) \ - $(am__append_13) + defineclass.cc interpret.cc verify.cc java/lang/Class.java \ + java/lang/Object.java $(nat_source_files) $(am__append_5) \ + $(am__append_6) $(am__append_7) $(am__append_8) \ + $(am__append_9) $(am__append_10) $(am__append_11) \ + $(am__append_12) $(am__append_13) nat_files = $(nat_source_files:.cc=.lo) xlib_nat_files = $(xlib_nat_source_files:.cc=.lo) @@ -795,122 +714,35 @@ libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) $(THREADLDFLAGS) $(THREADLIBS) \ -version-info `grep -v '^\#' $(srcdir)/libtool-version` libgcj_la_LIBADD = \ - $(all_libgcj_lo_files) \ - gnu-xml.lo javax-imageio.lo \ - javax-xml.lo gnu-java-beans.lo \ - external/sax/libsax-gcj.la \ - external/w3c_dom/libw3c-gcj.la \ - $(LIBFFI) $(ZLIBS) $(GCLIBS) $(propertyo_files) + classpath/native/fdlibm/libfdlibm.la \ + $(all_packages_source_files:.list=.lo) \ + $(bc_objects) \ + $(propertyo_files) \ + $(LIBFFI) $(ZLIBS) $(GCLIBS) libgcj_la_DEPENDENCIES = libgcj-$(gcc_version).jar \ - java/lang/fdlibm.h java/lang/ieeefp.h java/lang/mprec.h \ + $(all_packages_source_files:.list=.lo) \ $(LIBLTDL) $(libgcj_la_LIBADD) libgcj_la_LINK = $(LIBLINK) -lib_gnu_java_awt_peer_gtk_la_SOURCES = \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GdkTextLayout.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFramePeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c \ - jni/gtk-peer/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.c \ - jni/gtk-peer/gthread-jni.c jni/gtk-peer/gtk_jawt.c \ - jni/classpath/native_state.c jni/gtk-peer/gthread-jni.h \ - jni/gtk-peer/gtkpeer.h jni/classpath/native_state.h \ - $(am__append_14) -gtk_awt_peer_source_files = \ -gnu/java/awt/peer/gtk/GdkTextLayout.java \ -gnu/java/awt/peer/gtk/GdkFontMetrics.java \ -gnu/java/awt/peer/gtk/GdkFontPeer.java \ -gnu/java/awt/peer/gtk/GdkGlyphVector.java \ -gnu/java/awt/peer/gtk/GdkGraphics.java \ -gnu/java/awt/peer/gtk/GdkGraphics2D.java \ -gnu/java/awt/peer/gtk/GdkGraphicsConfiguration.java \ -gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java \ -gnu/java/awt/peer/gtk/GdkPixbufDecoder.java \ -gnu/java/awt/peer/gtk/GdkRobotPeer.java \ -gnu/java/awt/peer/gtk/GdkScreenGraphicsDevice.java \ -gnu/java/awt/peer/gtk/GtkButtonPeer.java \ -gnu/java/awt/peer/gtk/GtkCanvasPeer.java \ -gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java \ -gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java \ -gnu/java/awt/peer/gtk/GtkCheckboxPeer.java \ -gnu/java/awt/peer/gtk/GtkChoicePeer.java \ -gnu/java/awt/peer/gtk/GtkClipboard.java \ -gnu/java/awt/peer/gtk/GtkComponentPeer.java \ -gnu/java/awt/peer/gtk/GtkContainerPeer.java \ -gnu/java/awt/peer/gtk/GtkDialogPeer.java \ -gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java \ -gnu/java/awt/peer/gtk/GtkFileDialogPeer.java \ -gnu/java/awt/peer/gtk/GtkFramePeer.java \ -gnu/java/awt/peer/gtk/GtkGenericPeer.java \ -gnu/java/awt/peer/gtk/GtkImage.java \ -gnu/java/awt/peer/gtk/GtkImagePainter.java \ -gnu/java/awt/peer/gtk/GtkLabelPeer.java \ -gnu/java/awt/peer/gtk/GtkListPeer.java \ -gnu/java/awt/peer/gtk/GtkMenuBarPeer.java \ -gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java \ -gnu/java/awt/peer/gtk/GtkMenuItemPeer.java \ -gnu/java/awt/peer/gtk/GtkMenuPeer.java \ -gnu/java/awt/peer/gtk/GtkOffScreenImage.java \ -gnu/java/awt/peer/gtk/GtkPanelPeer.java \ -gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java \ -gnu/java/awt/peer/gtk/GtkScrollPanePeer.java \ -gnu/java/awt/peer/gtk/GtkScrollbarPeer.java \ -gnu/java/awt/peer/gtk/GtkTextAreaPeer.java \ -gnu/java/awt/peer/gtk/GtkTextComponentPeer.java \ -gnu/java/awt/peer/gtk/GtkTextFieldPeer.java \ -gnu/java/awt/peer/gtk/GtkToolkit.java \ -gnu/java/awt/peer/gtk/GtkVolatileImage.java \ -gnu/java/awt/peer/gtk/GtkWindowPeer.java \ -gnu/java/awt/peer/gtk/GThreadMutex.java \ -gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java +lib_gnu_java_awt_peer_gtk_la_SOURCES = +lib_gnu_java_awt_peer_gtk_la_LIBADD = \ + gnu-java-awt-peer-gtk.lo \ + classpath/native/jni/gtk-peer/libgtkpeer.la \ + $(GTK_LIBS) $(GLIB_LIBS) $(LIBART_LIBS) $(CAIRO_LIBS) $(PANGOFT2_LIBS) -gtk_jni_headers = $(patsubst %.java,jniinclude/%.h,$(subst /,_,$(gtk_awt_peer_source_files))) -lib_gnu_java_awt_peer_gtk_la_CFLAGS = \ - -Ijniinclude -I$(srcdir)/jni/classpath \ - -I$(srcdir)/jni/gtk-peer $(PEDANTIC_CFLAGS) $(GTK_CFLAGS) $(LIBART_CFLAGS) \ - $(X_CFLAGS) $(CAIRO_CFLAGS) $(PANGOFT2_CFLAGS) +lib_gnu_java_awt_peer_gtk_la_DEPENDENCIES = gnu-java-awt-peer-gtk.lo \ + classpath/native/jni/gtk-peer/libgtkpeer.la \ + libgcj-$(gcc_version).jar libgcj.la libgcj.spec -lib_gnu_java_awt_peer_gtk_la_GCJFLAGS = $(AM_GCJFLAGS) -fjni -lib_gnu_java_awt_peer_gtk_la_LIBADD = gtk-awt-peer.lo $(GTK_LIBS) $(GLIB_LIBS) $(LIBART_LIBS) $(CAIRO_LIBS) $(PANGOFT2_LIBS) -lib_gnu_java_awt_peer_gtk_la_DEPENDENCIES = gtk-awt-peer.lo $(gtk_jni_headers) libgcj-$(gcc_version).jar libgcj.la libgcj.spec lib_gnu_java_awt_peer_gtk_la_LDFLAGS = \ -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(LIBGCJ_LD_SYMBOLIC) $(X_LIBS) -lXtst lib_gnu_java_awt_peer_gtk_la_LINK = $(LIBLINK) libgcjawt_la_SOURCES = jawt.c -libgcjawt_la_CFLAGS = -I$(srcdir)/jni/classpath $(PEDANTIC_CFLAGS) $(X_CFLAGS) +libgcjawt_la_CFLAGS = -I$(srcdir)/classpath/native/jni/classpath \ + $(PEDANTIC_CFLAGS) $(X_CFLAGS) + libgcjawt_la_LIBADD = -L$(here)/.libs lib-gnu-java-awt-peer-gtk.la libgcjawt_la_LDFLAGS = \ -version-info `grep -v '^\#' $(srcdir)/libtool-version` \ @@ -935,2090 +767,84 @@ lib_gnu_awt_xlib_la_LDFLAGS = ../libstdc++-v3/src/libstdc++.la \ lib_gnu_awt_xlib_la_LINK = $(LIBLINK) property_files = \ -gnu/regexp/MessagesBundle.properties \ -gnu/regexp/MessagesBundle_fr.properties \ -org/ietf/jgss/MessagesBundle.properties +classpath/resource/org/ietf/jgss/MessagesBundle.properties \ +classpath/resource/java/util/iso4217.properties \ +classpath/resource/gnu/java/awt/peer/gtk/font.properties \ +classpath/resource/gnu/regexp/MessagesBundle_it.properties \ +classpath/resource/gnu/regexp/MessagesBundle_fr.properties \ +classpath/resource/gnu/regexp/MessagesBundle.properties -propertyo_files = $(property_files:.properties=.properties.lo) -CLEANFILES = libgcj-$(gcc_version).jar classes.stamp $(all_java_stamp_files) \ +propertyo_files = $(patsubst classpath/resource/%,%,$(property_files:.properties=.properties.lo)) +CLEANFILES = libgcj-$(gcc_version).jar \ $(all_java_deps_files) $(all_java_filelist_files) -DISTCLEANFILES = Makefile.deps native.dirs bytecompile.dirs -SUFFIXES = .class .java .h .properties -ordinary_nat_headers = \ - $(ordinary_java_source_files:.java=.h) \ - $(built_java_source_files:.java=.h) +DISTCLEANFILES = native.dirs +SUFFIXES = .class .java .h .properties .list +gnu_awt_source_files = \ +gnu/awt/LightweightRedirector.java -inner_nat_headers = java/io/ObjectOutputStream$$PutField.h \ - java/io/ObjectInputStream$$GetField.h \ - java/nio/DirectByteBufferImpl$$ReadWrite.h \ - java/nio/channels/Pipe$$SinkChannel.h \ - java/nio/channels/Pipe$$SourceChannel.h \ - java/lang/reflect/Proxy$$ProxyData.h \ - java/lang/reflect/Proxy$$ProxyType.h \ - gnu/java/net/PlainSocketImpl$$SocketInputStream.h \ - gnu/java/net/PlainSocketImpl$$SocketOutputStream.h \ - gnu/java/nio/PipeImpl$$SinkChannelImpl.h \ - gnu/java/nio/PipeImpl$$SourceChannelImpl.h \ - $(PLATFORM_INNER_NAT_HDRS) +gnu_awt_header_files = $(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_awt_source_files))) +gnu_awt_j2d_source_files = \ +gnu/awt/j2d/AbstractGraphicsState.java \ +gnu/awt/j2d/DirectRasterGraphics.java \ +gnu/awt/j2d/Graphics2DImpl.java \ +gnu/awt/j2d/IntegerGraphicsState.java \ +gnu/awt/j2d/MappedRaster.java -nat_headers = $(ordinary_nat_headers) $(inner_nat_headers) gnu/gcj/tools/gcj_dbtool/Main.h -nat_headers_install = $(ordinary_nat_headers) -xlib_nat_headers = $(xlib_java_source_files:.java=.h) -extra_headers = java/lang/Object.h java/lang/Class.h -NM = nm -@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@gen_from_JIS_SOURCES = \ -@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gnu/gcj/convert/gen-from-JIS.c \ -@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gnu/gcj/convert/make-trie.c +gnu_awt_j2d_header_files = $(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_awt_j2d_source_files))) +gnu_classpath_source_files = \ +classpath/gnu/classpath/Configuration.java \ +classpath/gnu/classpath/RawData.java \ +classpath/gnu/classpath/RawData32.java \ +classpath/gnu/classpath/RawData64.java \ +classpath/gnu/classpath/ServiceFactory.java \ +classpath/gnu/classpath/ServiceProviderLoadingAction.java \ +gnu/classpath/SystemProperties.java -@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@gen_from_JIS_DEPENDENCIES = \ -@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gnu/gcj/convert/JIS0201.h \ -@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gnu/gcj/convert/JIS0208.h \ -@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gnu/gcj/convert/JIS0212.h +gnu_classpath_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_classpath_source_files)))) +gnu_classpath_debug_source_files = \ +classpath/gnu/classpath/debug/Component.java \ +classpath/gnu/classpath/debug/PreciseFilter.java \ +classpath/gnu/classpath/debug/SystemLogger.java -jv_convert_SOURCES = -jv_convert_LDFLAGS = --main=gnu.gcj.convert.Convert \ - -rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS) +gnu_classpath_debug_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_classpath_debug_source_files))) +gnu_gcj_source_files = \ +gnu/gcj/Core.java \ +gnu/gcj/RawData.java \ +gnu/gcj/RawDataManaged.java -jv_convert_LINK = $(GCJLINK) -jv_convert_LDADD = -L$(here)/.libs libgcj.la -jv_convert_DEPENDENCIES = libgcj.la libgcj.spec -gcj_dbtool_SOURCES = gnu/gcj/tools/gcj_dbtool/Main.java \ - gnu/gcj/tools/gcj_dbtool/natMain.cc - -gcj_dbtool_LDFLAGS = --main=gnu.gcj.tools.gcj_dbtool.Main \ - -rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS) - -gcj_dbtool_LINK = $(GCJLINK) -gcj_dbtool_LDADD = -L$(here)/.libs libgcj.la -gcj_dbtool_DEPENDENCIES = libgcj.la libgcj.spec -gij_SOURCES = -gij_LDFLAGS = -rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS) -gij_LINK = $(GCJLINK) -gij_LDADD = -L$(here)/.libs libgij.la -gij_DEPENDENCIES = libgij.la -grmic_SOURCES = -grmic_LDFLAGS = --main=gnu.java.rmi.rmic.RMIC \ - -rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS) - -grmic_LINK = $(GCJLINK) -grmic_LDADD = -L$(here)/.libs libgcj.la -grmic_DEPENDENCIES = libgcj.la libgcj.spec -grmiregistry_SOURCES = -grmiregistry_LDFLAGS = --main=gnu.java.rmi.registry.RegistryImpl \ - -rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS) - -grmiregistry_LINK = $(GCJLINK) -grmiregistry_LDADD = -L$(here)/.libs libgcj.la -grmiregistry_DEPENDENCIES = libgcj.la libgcj.spec -convert_source_files = \ +gnu_gcj_header_files = $(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_gcj_source_files))) +gnu_gcj_convert_source_files = \ gnu/gcj/convert/BytesToUnicode.java \ gnu/gcj/convert/Convert.java \ +gnu/gcj/convert/IOConverter.java \ gnu/gcj/convert/Input_8859_1.java \ gnu/gcj/convert/Input_ASCII.java \ gnu/gcj/convert/Input_EUCJIS.java \ gnu/gcj/convert/Input_JavaSrc.java \ gnu/gcj/convert/Input_SJIS.java \ +gnu/gcj/convert/Input_UTF8.java \ gnu/gcj/convert/Input_UnicodeBig.java \ gnu/gcj/convert/Input_UnicodeLittle.java \ -gnu/gcj/convert/Input_UTF8.java \ gnu/gcj/convert/Input_iconv.java \ -gnu/gcj/convert/IOConverter.java \ gnu/gcj/convert/Output_8859_1.java \ gnu/gcj/convert/Output_ASCII.java \ gnu/gcj/convert/Output_EUCJIS.java \ gnu/gcj/convert/Output_JavaSrc.java \ gnu/gcj/convert/Output_SJIS.java \ -gnu/gcj/convert/Output_UnicodeLittleUnmarked.java \ gnu/gcj/convert/Output_UTF8.java \ +gnu/gcj/convert/Output_UnicodeLittleUnmarked.java \ gnu/gcj/convert/Output_iconv.java \ gnu/gcj/convert/UnicodeToBytes.java -special_java_source_files = java/lang/Class.java java/lang/Object.java -gnu_java_beans_source_files = \ -gnu/java/beans/decoder/AbstractContext.java \ -gnu/java/beans/decoder/AbstractCreatableObjectContext.java \ -gnu/java/beans/decoder/AbstractElementHandler.java \ -gnu/java/beans/decoder/AbstractObjectContext.java \ -gnu/java/beans/decoder/ArrayContext.java \ -gnu/java/beans/decoder/ArrayHandler.java \ -gnu/java/beans/decoder/AssemblyException.java \ -gnu/java/beans/decoder/BooleanHandler.java \ -gnu/java/beans/decoder/ByteHandler.java \ -gnu/java/beans/decoder/CharHandler.java \ -gnu/java/beans/decoder/ClassHandler.java \ -gnu/java/beans/decoder/ConstructorContext.java \ -gnu/java/beans/decoder/Context.java \ -gnu/java/beans/decoder/DecoderContext.java \ -gnu/java/beans/decoder/DefaultExceptionListener.java \ -gnu/java/beans/decoder/DoubleHandler.java \ -gnu/java/beans/decoder/DummyContext.java \ -gnu/java/beans/decoder/DummyHandler.java \ -gnu/java/beans/decoder/ElementHandler.java \ -gnu/java/beans/decoder/FloatHandler.java \ -gnu/java/beans/decoder/GrowableArrayContext.java \ -gnu/java/beans/decoder/IndexContext.java \ -gnu/java/beans/decoder/IntHandler.java \ -gnu/java/beans/decoder/JavaHandler.java \ -gnu/java/beans/decoder/LongHandler.java \ -gnu/java/beans/decoder/MethodContext.java \ -gnu/java/beans/decoder/MethodFinder.java \ -gnu/java/beans/decoder/NullHandler.java \ -gnu/java/beans/decoder/ObjectContext.java \ -gnu/java/beans/decoder/ObjectHandler.java \ -gnu/java/beans/decoder/PersistenceParser.java \ -gnu/java/beans/decoder/PropertyContext.java \ -gnu/java/beans/decoder/ShortHandler.java \ -gnu/java/beans/decoder/SimpleHandler.java \ -gnu/java/beans/decoder/StaticMethodContext.java \ -gnu/java/beans/decoder/StringHandler.java \ -gnu/java/beans/decoder/VoidHandler.java \ -gnu/java/beans/editors/ColorEditor.java \ -gnu/java/beans/editors/FontEditor.java \ -gnu/java/beans/editors/NativeBooleanEditor.java \ -gnu/java/beans/editors/NativeByteEditor.java \ -gnu/java/beans/editors/NativeDoubleEditor.java \ -gnu/java/beans/editors/NativeFloatEditor.java \ -gnu/java/beans/editors/NativeIntEditor.java \ -gnu/java/beans/editors/NativeLongEditor.java \ -gnu/java/beans/editors/NativeShortEditor.java \ -gnu/java/beans/editors/StringEditor.java \ -gnu/java/beans/BeanInfoEmbryo.java \ -gnu/java/beans/DummyAppletContext.java \ -gnu/java/beans/DummyAppletStub.java \ -gnu/java/beans/ExplicitBeanInfo.java \ -gnu/java/beans/IntrospectionIncubator.java - -awt_java_source_files = \ -gnu/awt/LightweightRedirector.java \ -gnu/awt/j2d/AbstractGraphicsState.java \ -gnu/awt/j2d/DirectRasterGraphics.java \ -gnu/awt/j2d/Graphics2DImpl.java \ -gnu/awt/j2d/IntegerGraphicsState.java \ -gnu/awt/j2d/MappedRaster.java \ -gnu/java/awt/BitMaskExtent.java \ -gnu/java/awt/Buffers.java \ -gnu/java/awt/BitwiseXORComposite.java \ -gnu/java/awt/ComponentDataBlitOp.java \ -gnu/java/awt/ClasspathToolkit.java \ -gnu/java/awt/EmbeddedWindow.java \ -gnu/java/awt/EmbeddedWindowSupport.java \ -gnu/java/awt/EventModifier.java \ -gnu/java/awt/color/CieXyzConverter.java \ -gnu/java/awt/color/ClutProfileConverter.java \ -gnu/java/awt/color/ColorLookUpTable.java \ -gnu/java/awt/color/ColorSpaceConverter.java \ -gnu/java/awt/color/GrayProfileConverter.java \ -gnu/java/awt/color/GrayScaleConverter.java \ -gnu/java/awt/color/LinearRGBConverter.java \ -gnu/java/awt/color/ProfileHeader.java \ -gnu/java/awt/color/PyccConverter.java \ -gnu/java/awt/color/RgbProfileConverter.java \ -gnu/java/awt/color/SrgbConverter.java \ -gnu/java/awt/color/TagEntry.java \ -gnu/java/awt/color/ToneReproductionCurve.java \ -gnu/java/awt/image/ImageDecoder.java \ -gnu/java/awt/image/XBMDecoder.java \ -gnu/java/awt/peer/EmbeddedWindowPeer.java \ -gnu/java/awt/peer/GLightweightPeer.java \ -gnu/java/awt/peer/ClasspathFontPeer.java \ -gnu/java/awt/peer/ClasspathTextLayoutPeer.java \ -gnu/javax/swing/text/html/parser/support/gnuStringIntMapper.java \ -gnu/javax/swing/text/html/parser/support/parameterDefaulter.java \ -gnu/javax/swing/text/html/parser/support/Parser.java \ -gnu/javax/swing/text/html/parser/support/textPreProcessor.java \ -gnu/javax/swing/text/html/parser/support/low/Buffer.java \ -gnu/javax/swing/text/html/parser/support/low/Constants.java \ -gnu/javax/swing/text/html/parser/support/low/Location.java \ -gnu/javax/swing/text/html/parser/support/low/node.java \ -gnu/javax/swing/text/html/parser/support/low/ParseException.java \ -gnu/javax/swing/text/html/parser/support/low/pattern.java \ -gnu/javax/swing/text/html/parser/support/low/Queue.java \ -gnu/javax/swing/text/html/parser/support/low/ReaderTokenizer.java \ -gnu/javax/swing/text/html/parser/support/low/Token.java \ -gnu/javax/swing/text/html/parser/gnuDTD.java \ -gnu/javax/swing/text/html/parser/HTML_401F.java \ -gnu/javax/swing/text/html/parser/htmlAttributeSet.java \ -gnu/javax/swing/text/html/parser/htmlValidator.java \ -gnu/javax/swing/text/html/parser/models/list.java \ -gnu/javax/swing/text/html/parser/models/node.java \ -gnu/javax/swing/text/html/parser/models/noTagModel.java \ -gnu/javax/swing/text/html/parser/models/PCDATAonly_model.java \ -gnu/javax/swing/text/html/parser/models/TableRowContentModel.java \ -gnu/javax/swing/text/html/parser/models/transformer.java \ -java/applet/Applet.java \ -java/applet/AppletStub.java \ -java/applet/AppletContext.java \ -java/applet/AudioClip.java \ -java/awt/AWTError.java \ -java/awt/AWTEvent.java \ -java/awt/AWTEventMulticaster.java \ -java/awt/AWTException.java \ -java/awt/AWTPermission.java \ -java/awt/ActiveEvent.java \ -java/awt/Adjustable.java \ -java/awt/BorderLayout.java \ -java/awt/Button.java \ -java/awt/Canvas.java \ -java/awt/CardLayout.java \ -java/awt/Checkbox.java \ -java/awt/CheckboxGroup.java \ -java/awt/CheckboxMenuItem.java \ -java/awt/Choice.java \ -java/awt/Color.java \ -java/awt/Component.java \ -java/awt/ComponentOrientation.java \ -java/awt/Container.java \ -java/awt/Cursor.java \ -java/awt/Dialog.java \ -java/awt/Dimension.java \ -java/awt/Event.java \ -java/awt/EventDispatchThread.java \ -java/awt/EventQueue.java \ -java/awt/FileDialog.java \ -java/awt/FlowLayout.java \ -java/awt/Font.java \ -java/awt/FontMetrics.java \ -java/awt/Frame.java \ -java/awt/Graphics.java \ -java/awt/Graphics2D.java \ -java/awt/GraphicsConfiguration.java \ -java/awt/GridBagConstraints.java \ -java/awt/GridBagLayout.java \ -java/awt/GridBagLayoutInfo.java \ -java/awt/GridLayout.java \ -java/awt/IllegalComponentStateException.java \ -java/awt/Image.java \ -java/awt/Insets.java \ -java/awt/ItemSelectable.java \ -java/awt/Label.java \ -java/awt/LayoutManager.java \ -java/awt/LayoutManager2.java \ -java/awt/List.java \ -java/awt/Menu.java \ -java/awt/MenuBar.java \ -java/awt/MenuComponent.java \ -java/awt/MenuContainer.java \ -java/awt/MenuItem.java \ -java/awt/MenuShortcut.java \ -java/awt/Paint.java \ -java/awt/PaintContext.java \ -java/awt/Panel.java \ -java/awt/Point.java \ -java/awt/PopupMenu.java \ -java/awt/Rectangle.java \ -java/awt/RenderingHints.java \ -java/awt/ScrollPane.java \ -java/awt/Scrollbar.java \ -java/awt/Shape.java \ -java/awt/TextArea.java \ -java/awt/TextComponent.java \ -java/awt/TextField.java \ -java/awt/Toolkit.java \ -java/awt/Transparency.java \ -java/awt/Window.java \ -java/awt/color/ColorSpace.java \ -java/awt/color/ICC_ColorSpace.java \ -java/awt/color/ICC_Profile.java \ -java/awt/color/ICC_ProfileGray.java \ -java/awt/color/ICC_ProfileRGB.java \ -java/awt/color/CMMException.java \ -java/awt/color/ProfileDataException.java \ -java/awt/datatransfer/Clipboard.java \ -java/awt/datatransfer/ClipboardOwner.java \ -java/awt/datatransfer/DataFlavor.java \ -java/awt/datatransfer/FlavorMap.java \ -java/awt/datatransfer/MimeTypeParseException.java \ -java/awt/datatransfer/StringSelection.java \ -java/awt/datatransfer/SystemFlavorMap.java \ -java/awt/datatransfer/Transferable.java \ -java/awt/datatransfer/UnsupportedFlavorException.java \ -java/awt/datatransfer/FlavorTable.java \ -java/awt/event/AWTEventListener.java \ -java/awt/event/ActionEvent.java \ -java/awt/event/ActionListener.java \ -java/awt/event/AdjustmentEvent.java \ -java/awt/event/AdjustmentListener.java \ -java/awt/event/ComponentAdapter.java \ -java/awt/event/ComponentEvent.java \ -java/awt/event/ComponentListener.java \ -java/awt/event/ContainerAdapter.java \ -java/awt/event/ContainerEvent.java \ -java/awt/event/ContainerListener.java \ -java/awt/event/FocusAdapter.java \ -java/awt/event/FocusEvent.java \ -java/awt/event/FocusListener.java \ -java/awt/event/HierarchyBoundsAdapter.java \ -java/awt/event/HierarchyBoundsListener.java \ -java/awt/event/HierarchyEvent.java \ -java/awt/event/HierarchyListener.java \ -java/awt/event/InputEvent.java \ -java/awt/event/InputMethodEvent.java \ -java/awt/event/InputMethodListener.java \ -java/awt/event/InvocationEvent.java \ -java/awt/event/ItemEvent.java \ -java/awt/event/ItemListener.java \ -java/awt/event/KeyAdapter.java \ -java/awt/event/KeyEvent.java \ -java/awt/event/KeyListener.java \ -java/awt/event/MouseAdapter.java \ -java/awt/event/MouseEvent.java \ -java/awt/event/MouseListener.java \ -java/awt/event/MouseMotionAdapter.java \ -java/awt/event/MouseMotionListener.java \ -java/awt/event/PaintEvent.java \ -java/awt/event/TextEvent.java \ -java/awt/event/TextListener.java \ -java/awt/event/WindowAdapter.java \ -java/awt/event/WindowEvent.java \ -java/awt/event/WindowListener.java \ -java/awt/event/AWTEventListenerProxy.java \ -java/awt/event/MouseWheelEvent.java \ -java/awt/event/MouseWheelListener.java \ -java/awt/event/WindowFocusListener.java \ -java/awt/event/WindowStateListener.java \ -java/awt/font/FontRenderContext.java \ -java/awt/font/ShapeGraphicAttribute.java \ -java/awt/font/MultipleMaster.java \ -java/awt/font/TransformAttribute.java \ -java/awt/font/GlyphJustificationInfo.java \ -java/awt/font/LineBreakMeasurer.java \ -java/awt/font/TextMeasurer.java \ -java/awt/font/TextLayout.java \ -java/awt/font/LineMetrics.java \ -java/awt/font/TextAttribute.java \ -java/awt/font/GlyphMetrics.java \ -java/awt/font/OpenType.java \ -java/awt/font/GlyphVector.java \ -java/awt/font/GraphicAttribute.java \ -java/awt/font/ImageGraphicAttribute.java \ -java/awt/font/NumericShaper.java \ -java/awt/geom/AffineTransform.java \ -java/awt/geom/Dimension2D.java \ -java/awt/geom/Ellipse2D.java \ -java/awt/geom/IllegalPathStateException.java \ -java/awt/geom/NoninvertibleTransformException.java \ -java/awt/geom/PathIterator.java \ -java/awt/geom/Point2D.java \ -java/awt/geom/Rectangle2D.java \ -java/awt/geom/RectangularShape.java \ -java/awt/geom/RoundRectangle2D.java \ -java/awt/geom/Line2D.java \ -java/awt/geom/Arc2D.java \ -java/awt/geom/Area.java \ -java/awt/geom/CubicCurve2D.java \ -java/awt/geom/FlatteningPathIterator.java \ -java/awt/geom/GeneralPath.java \ -java/awt/geom/QuadCurve2D.java \ -java/awt/image/BandCombineOp.java \ -java/awt/image/BandedSampleModel.java \ -java/awt/image/AffineTransformOp.java \ -java/awt/image/BufferedImage.java \ -java/awt/image/BufferedImageFilter.java \ -java/awt/image/ByteLookupTable.java \ -java/awt/image/ColorConvertOp.java \ -java/awt/image/ColorModel.java \ -java/awt/image/ComponentColorModel.java \ -java/awt/image/ComponentSampleModel.java \ -java/awt/image/ConvolveOp.java \ -java/awt/image/DataBuffer.java \ -java/awt/image/DataBufferByte.java \ -java/awt/image/DataBufferDouble.java \ -java/awt/image/DataBufferFloat.java \ -java/awt/image/DataBufferInt.java \ -java/awt/image/DataBufferShort.java \ -java/awt/image/DataBufferUShort.java \ -java/awt/image/DirectColorModel.java \ -java/awt/image/ImageConsumer.java \ -java/awt/image/ImageObserver.java \ -java/awt/image/ImageProducer.java \ -java/awt/image/IndexColorModel.java \ -java/awt/image/Kernel.java \ -java/awt/image/LookupOp.java \ -java/awt/image/LookupTable.java \ -java/awt/image/MultiPixelPackedSampleModel.java \ -java/awt/image/PackedColorModel.java \ -java/awt/image/PixelInterleavedSampleModel.java \ -java/awt/image/Raster.java \ -java/awt/image/RasterOp.java \ -java/awt/image/RescaleOp.java \ -java/awt/image/SampleModel.java \ -java/awt/image/ShortLookupTable.java \ -java/awt/image/SinglePixelPackedSampleModel.java \ -java/awt/image/WritableRaster.java \ -java/awt/image/AreaAveragingScaleFilter.java \ -java/awt/image/CropImageFilter.java \ -java/awt/image/FilteredImageSource.java \ -java/awt/image/ImageFilter.java \ -java/awt/image/MemoryImageSource.java \ -java/awt/image/PixelGrabber.java \ -java/awt/image/RGBImageFilter.java \ -java/awt/image/ReplicateScaleFilter.java \ -java/awt/image/BufferStrategy.java \ -java/awt/image/BufferedImageOp.java \ -java/awt/image/ImagingOpException.java \ -java/awt/image/RasterFormatException.java \ -java/awt/image/RenderedImage.java \ -java/awt/image/TileObserver.java \ -java/awt/image/VolatileImage.java \ -java/awt/image/WritableRenderedImage.java \ -java/awt/image/renderable/ContextualRenderedImageFactory.java \ -java/awt/image/renderable/ParameterBlock.java \ -java/awt/image/renderable/RenderContext.java \ -java/awt/image/renderable/RenderableImage.java \ -java/awt/image/renderable/RenderableImageOp.java \ -java/awt/image/renderable/RenderableImageProducer.java \ -java/awt/image/renderable/RenderedImageFactory.java \ -java/awt/peer/ButtonPeer.java \ -java/awt/peer/CanvasPeer.java \ -java/awt/peer/CheckboxMenuItemPeer.java \ -java/awt/peer/CheckboxPeer.java \ -java/awt/peer/ChoicePeer.java \ -java/awt/peer/ComponentPeer.java \ -java/awt/peer/ContainerPeer.java \ -java/awt/peer/DialogPeer.java \ -java/awt/peer/FileDialogPeer.java \ -java/awt/peer/FontPeer.java \ -java/awt/peer/FramePeer.java \ -java/awt/peer/LabelPeer.java \ -java/awt/peer/LightweightPeer.java \ -java/awt/peer/ListPeer.java \ -java/awt/peer/MenuBarPeer.java \ -java/awt/peer/MenuComponentPeer.java \ -java/awt/peer/MenuItemPeer.java \ -java/awt/peer/MenuPeer.java \ -java/awt/peer/PanelPeer.java \ -java/awt/peer/PopupMenuPeer.java \ -java/awt/peer/RobotPeer.java \ -java/awt/peer/ScrollPanePeer.java \ -java/awt/peer/ScrollbarPeer.java \ -java/awt/peer/TextAreaPeer.java \ -java/awt/peer/TextComponentPeer.java \ -java/awt/peer/TextFieldPeer.java \ -java/awt/peer/WindowPeer.java \ -java/awt/SystemColor.java \ -java/awt/Polygon.java \ -java/awt/MediaTracker.java \ -java/awt/PrintGraphics.java \ -java/awt/PrintJob.java \ -java/awt/AWTKeyStroke.java \ -java/awt/AlphaComposite.java \ -java/awt/AttributeValue.java \ -java/awt/BasicStroke.java \ -java/awt/BufferCapabilities.java \ -java/awt/ColorPaintContext.java \ -java/awt/Composite.java \ -java/awt/CompositeContext.java \ -java/awt/ContainerOrderFocusTraversalPolicy.java \ -java/awt/DefaultFocusTraversalPolicy.java \ -java/awt/DefaultKeyboardFocusManager.java \ -java/awt/DisplayMode.java \ -java/awt/FocusTraversalPolicy.java \ -java/awt/FontFormatException.java \ -java/awt/GradientPaint.java \ -java/awt/GraphicsConfigTemplate.java \ -java/awt/GraphicsDevice.java \ -java/awt/GraphicsEnvironment.java \ -java/awt/HeadlessException.java \ -java/awt/ImageCapabilities.java \ -java/awt/JobAttributes.java \ -java/awt/KeyEventDispatcher.java \ -java/awt/KeyEventPostProcessor.java \ -java/awt/KeyboardFocusManager.java \ -java/awt/PageAttributes.java \ -java/awt/Robot.java \ -java/awt/ScrollPaneAdjustable.java \ -java/awt/Stroke.java \ -java/awt/TexturePaint.java \ -java/awt/dnd/peer/DragSourceContextPeer.java \ -java/awt/dnd/peer/DropTargetContextPeer.java \ -java/awt/dnd/peer/DropTargetPeer.java \ -java/awt/dnd/DnDConstants.java \ -java/awt/dnd/DnDEventMulticaster.java \ -java/awt/dnd/DragGestureEvent.java \ -java/awt/dnd/DragGestureListener.java \ -java/awt/dnd/DragGestureRecognizer.java \ -java/awt/dnd/DragSource.java \ -java/awt/dnd/DragSourceAdapter.java \ -java/awt/dnd/DragSourceContext.java \ -java/awt/dnd/DragSourceDragEvent.java \ -java/awt/dnd/DragSourceEvent.java \ -java/awt/dnd/DragSourceListener.java \ -java/awt/dnd/DragSourceMotionListener.java \ -java/awt/dnd/DropTarget.java \ -java/awt/dnd/InvalidDnDOperationException.java \ -java/awt/dnd/Autoscroll.java \ -java/awt/dnd/DragSourceDropEvent.java \ -java/awt/dnd/DropTargetAdapter.java \ -java/awt/dnd/DropTargetContext.java \ -java/awt/dnd/DropTargetDragEvent.java \ -java/awt/dnd/DropTargetDropEvent.java \ -java/awt/dnd/DropTargetEvent.java \ -java/awt/dnd/DropTargetListener.java \ -java/awt/dnd/MouseDragGestureRecognizer.java \ -java/awt/font/TextHitInfo.java \ -java/awt/im/spi/InputMethod.java \ -java/awt/im/spi/InputMethodContext.java \ -java/awt/im/spi/InputMethodDescriptor.java \ -java/awt/im/InputContext.java \ -java/awt/im/InputMethodHighlight.java \ -java/awt/im/InputMethodRequests.java \ -java/awt/im/InputSubset.java \ -java/awt/print/Book.java \ -java/awt/print/PageFormat.java \ -java/awt/print/Pageable.java \ -java/awt/print/Paper.java \ -java/awt/print/Printable.java \ -java/awt/print/PrinterAbortException.java \ -java/awt/print/PrinterException.java \ -java/awt/print/PrinterGraphics.java \ -java/awt/print/PrinterIOException.java \ -java/awt/print/PrinterJob.java \ -java/beans/beancontext/BeanContext.java \ -java/beans/beancontext/BeanContextChild.java \ -java/beans/beancontext/BeanContextChildComponentProxy.java \ -java/beans/beancontext/BeanContextChildSupport.java \ -java/beans/beancontext/BeanContextContainerProxy.java \ -java/beans/beancontext/BeanContextEvent.java \ -java/beans/beancontext/BeanContextMembershipEvent.java \ -java/beans/beancontext/BeanContextMembershipListener.java \ -java/beans/beancontext/BeanContextProxy.java \ -java/beans/beancontext/BeanContextServiceAvailableEvent.java \ -java/beans/beancontext/BeanContextServiceProvider.java \ -java/beans/beancontext/BeanContextServiceProviderBeanInfo.java \ -java/beans/beancontext/BeanContextServiceRevokedEvent.java \ -java/beans/beancontext/BeanContextServiceRevokedListener.java \ -java/beans/beancontext/BeanContextServices.java \ -java/beans/beancontext/BeanContextServicesListener.java \ -java/beans/beancontext/BeanContextServicesSupport.java \ -java/beans/beancontext/BeanContextSupport.java \ -java/beans/BeanDescriptor.java \ -java/beans/BeanInfo.java \ -java/beans/Beans.java \ -java/beans/Customizer.java \ -java/beans/DesignMode.java \ -java/beans/EventHandler.java \ -java/beans/EventSetDescriptor.java \ -java/beans/ExceptionListener.java \ -java/beans/Expression.java \ -java/beans/FeatureDescriptor.java \ -java/beans/IndexedPropertyDescriptor.java \ -java/beans/IntrospectionException.java \ -java/beans/Introspector.java \ -java/beans/MethodDescriptor.java \ -java/beans/ParameterDescriptor.java \ -java/beans/PropertyChangeEvent.java \ -java/beans/PropertyChangeListener.java \ -java/beans/PropertyChangeListenerProxy.java \ -java/beans/PropertyChangeSupport.java \ -java/beans/PropertyDescriptor.java \ -java/beans/PropertyEditor.java \ -java/beans/PropertyEditorManager.java \ -java/beans/PropertyEditorSupport.java \ -java/beans/PropertyVetoException.java \ -java/beans/Statement.java \ -java/beans/SimpleBeanInfo.java \ -java/beans/VetoableChangeListener.java \ -java/beans/VetoableChangeListenerProxy.java \ -java/beans/VetoableChangeSupport.java \ -java/beans/Visibility.java \ -java/beans/AppletInitializer.java \ -java/beans/XMLDecoder.java \ -javax/swing/border/AbstractBorder.java \ -javax/swing/border/BevelBorder.java \ -javax/swing/border/Border.java \ -javax/swing/border/CompoundBorder.java \ -javax/swing/border/EmptyBorder.java \ -javax/swing/border/EtchedBorder.java \ -javax/swing/border/LineBorder.java \ -javax/swing/border/MatteBorder.java \ -javax/swing/border/SoftBevelBorder.java \ -javax/swing/border/TitledBorder.java \ -javax/swing/GrayFilter.java \ -javax/swing/AbstractAction.java \ -javax/swing/AbstractButton.java \ -javax/swing/AbstractSpinnerModel.java \ -javax/swing/plaf/basic/BasicArrowButton.java \ -javax/swing/plaf/basic/BasicButtonListener.java \ -javax/swing/plaf/basic/BasicButtonUI.java \ -javax/swing/plaf/basic/BasicCheckBoxUI.java \ -javax/swing/plaf/basic/BasicColorChooserUI.java \ -javax/swing/plaf/basic/BasicComboBoxUI.java \ -javax/swing/plaf/basic/BasicComboBoxEditor.java \ -javax/swing/plaf/basic/BasicComboBoxRenderer.java \ -javax/swing/plaf/basic/BasicComboPopup.java \ -javax/swing/plaf/basic/BasicDesktopIconUI.java \ -javax/swing/plaf/basic/BasicDesktopPaneUI.java \ -javax/swing/plaf/basic/BasicEditorPaneUI.java \ -javax/swing/plaf/basic/BasicFormattedTextFieldUI.java \ -javax/swing/plaf/basic/BasicGraphicsUtils.java \ -javax/swing/plaf/basic/BasicInternalFrameTitlePane.java \ -javax/swing/plaf/basic/BasicInternalFrameUI.java \ -javax/swing/plaf/basic/BasicLabelUI.java \ -javax/swing/plaf/basic/BasicListUI.java \ -javax/swing/plaf/basic/BasicMenuUI.java \ -javax/swing/plaf/basic/BasicMenuBarUI.java \ -javax/swing/plaf/basic/BasicMenuItemUI.java \ -javax/swing/plaf/basic/BasicOptionPaneUI.java \ -javax/swing/plaf/basic/BasicPanelUI.java \ -javax/swing/plaf/basic/BasicPasswordFieldUI.java \ -javax/swing/plaf/basic/BasicPopupMenuUI.java \ -javax/swing/plaf/basic/BasicPopupMenuSeparatorUI.java \ -javax/swing/plaf/basic/BasicProgressBarUI.java \ -javax/swing/plaf/basic/BasicRootPaneUI.java \ -javax/swing/plaf/basic/BasicRadioButtonUI.java \ -javax/swing/plaf/basic/BasicRadioButtonMenuItemUI.java \ -javax/swing/plaf/basic/BasicCheckBoxMenuItemUI.java \ -javax/swing/plaf/basic/BasicScrollBarUI.java \ -javax/swing/plaf/basic/BasicScrollPaneUI.java \ -javax/swing/plaf/basic/BasicSeparatorUI.java \ -javax/swing/plaf/basic/BasicSliderUI.java \ -javax/swing/plaf/basic/BasicSpinnerUI.java \ -javax/swing/plaf/basic/BasicSplitPaneDivider.java \ -javax/swing/plaf/basic/BasicSplitPaneUI.java \ -javax/swing/plaf/basic/BasicTabbedPaneUI.java \ -javax/swing/plaf/basic/BasicTableUI.java \ -javax/swing/plaf/basic/BasicTableHeaderUI.java \ -javax/swing/plaf/basic/BasicTextAreaUI.java \ -javax/swing/plaf/basic/BasicTextFieldUI.java \ -javax/swing/plaf/basic/BasicTextPaneUI.java \ -javax/swing/plaf/basic/BasicTextUI.java \ -javax/swing/plaf/basic/BasicToggleButtonUI.java \ -javax/swing/plaf/basic/BasicToolBarSeparatorUI.java \ -javax/swing/plaf/basic/BasicToolBarUI.java \ -javax/swing/plaf/basic/BasicToolTipUI.java \ -javax/swing/plaf/basic/BasicTreeUI.java \ -javax/swing/plaf/basic/BasicViewportUI.java \ -javax/swing/plaf/basic/BasicLookAndFeel.java \ -javax/swing/plaf/basic/BasicBorders.java \ -javax/swing/plaf/basic/BasicIconFactory.java \ -javax/swing/plaf/basic/ComboPopup.java \ -javax/swing/plaf/metal/MetalBorders.java \ -javax/swing/plaf/metal/MetalButtonUI.java \ -javax/swing/plaf/metal/MetalCheckBoxUI.java \ -javax/swing/plaf/metal/MetalComboBoxUI.java \ -javax/swing/plaf/metal/MetalDesktopIconUI.java \ -javax/swing/plaf/metal/MetalInternalFrameUI.java \ -javax/swing/plaf/metal/MetalLabelUI.java \ -javax/swing/plaf/metal/MetalPopupMenuSeparatorUI.java \ -javax/swing/plaf/metal/MetalProgressBarUI.java \ -javax/swing/plaf/metal/MetalRadioButtonUI.java \ -javax/swing/plaf/metal/MetalRootPaneUI.java \ -javax/swing/plaf/metal/MetalScrollBarUI.java \ -javax/swing/plaf/metal/MetalScrollPaneUI.java \ -javax/swing/plaf/metal/MetalSeparatorUI.java \ -javax/swing/plaf/metal/MetalSliderUI.java \ -javax/swing/plaf/metal/MetalSplitPaneUI.java \ -javax/swing/plaf/metal/MetalTabbedPaneUI.java \ -javax/swing/plaf/metal/MetalTextFieldUI.java \ -javax/swing/plaf/metal/MetalToggleButtonUI.java \ -javax/swing/plaf/metal/MetalToolBarUI.java \ -javax/swing/plaf/metal/MetalToolTipUI.java \ -javax/swing/plaf/metal/MetalTreeUI.java \ -javax/swing/plaf/BorderUIResource.java \ -javax/swing/plaf/UIResource.java \ -javax/swing/plaf/ButtonUI.java \ -javax/swing/plaf/ComponentUI.java \ -javax/swing/plaf/LabelUI.java \ -javax/swing/plaf/ListUI.java \ -javax/swing/plaf/OptionPaneUI.java \ -javax/swing/plaf/PanelUI.java \ -javax/swing/plaf/ScrollPaneUI.java \ -javax/swing/plaf/TabbedPaneUI.java \ -javax/swing/plaf/TextUI.java \ -javax/swing/plaf/TreeUI.java \ -javax/swing/plaf/ViewportUI.java \ -javax/swing/plaf/metal/DefaultMetalTheme.java \ -javax/swing/plaf/metal/MetalLookAndFeel.java \ -javax/swing/plaf/metal/MetalTheme.java \ -javax/swing/plaf/ColorUIResource.java \ -javax/swing/plaf/DimensionUIResource.java \ -javax/swing/plaf/FontUIResource.java \ -javax/swing/plaf/IconUIResource.java \ -javax/swing/plaf/InsetsUIResource.java \ -javax/swing/plaf/ActionMapUIResource.java \ -javax/swing/plaf/ColorChooserUI.java \ -javax/swing/plaf/ComboBoxUI.java \ -javax/swing/plaf/ComponentInputMapUIResource.java \ -javax/swing/plaf/DesktopIconUI.java \ -javax/swing/plaf/DesktopPaneUI.java \ -javax/swing/plaf/FileChooserUI.java \ -javax/swing/plaf/InputMapUIResource.java \ -javax/swing/plaf/InternalFrameUI.java \ -javax/swing/plaf/MenuBarUI.java \ -javax/swing/plaf/MenuItemUI.java \ -javax/swing/plaf/PopupMenuUI.java \ -javax/swing/plaf/ProgressBarUI.java \ -javax/swing/plaf/RootPaneUI.java \ -javax/swing/plaf/ScrollBarUI.java \ -javax/swing/plaf/SeparatorUI.java \ -javax/swing/plaf/SliderUI.java \ -javax/swing/plaf/SpinnerUI.java \ -javax/swing/plaf/SplitPaneUI.java \ -javax/swing/plaf/TableHeaderUI.java \ -javax/swing/plaf/TableUI.java \ -javax/swing/plaf/ToolBarUI.java \ -javax/swing/plaf/ToolTipUI.java \ -javax/swing/AbstractListModel.java \ -javax/swing/colorchooser/AbstractColorChooserPanel.java \ -javax/swing/colorchooser/ColorChooserComponentFactory.java \ -javax/swing/colorchooser/ColorSelectionModel.java \ -javax/swing/colorchooser/DefaultColorSelectionModel.java \ -javax/swing/colorchooser/DefaultPreviewPanel.java \ -javax/swing/colorchooser/DefaultSwatchChooserPanel.java \ -javax/swing/colorchooser/DefaultHSBChooserPanel.java \ -javax/swing/colorchooser/DefaultRGBChooserPanel.java \ -javax/swing/filechooser/FileFilter.java \ -javax/swing/filechooser/FileSystemView.java \ -javax/swing/filechooser/FileView.java \ -javax/swing/table/AbstractTableModel.java \ -javax/swing/table/DefaultTableColumnModel.java \ -javax/swing/table/DefaultTableModel.java \ -javax/swing/table/JTableHeader.java \ -javax/swing/table/TableCellEditor.java \ -javax/swing/table/TableCellRenderer.java \ -javax/swing/table/TableColumn.java \ -javax/swing/table/TableColumnModel.java \ -javax/swing/table/TableModel.java \ -javax/swing/table/DefaultTableCellRenderer.java \ -javax/swing/Action.java \ -javax/swing/BorderFactory.java \ -javax/swing/Box.java \ -javax/swing/BoxLayout.java \ -javax/swing/ButtonGroup.java \ -javax/swing/ButtonModel.java \ -javax/swing/ComponentInputMap.java \ -javax/swing/DefaultButtonModel.java \ -javax/swing/DefaultListModel.java \ -javax/swing/DefaultListSelectionModel.java \ -javax/swing/Icon.java \ -javax/swing/ImageIcon.java \ -javax/swing/InputMap.java \ -javax/swing/InternalFrameFocusTraversalPolicy.java \ -javax/swing/JApplet.java \ -javax/swing/JButton.java \ -javax/swing/JCheckBox.java \ -javax/swing/JComponent.java \ -javax/swing/JDialog.java \ -javax/swing/JEditorPane.java \ -javax/swing/JFormattedTextField.java \ -javax/swing/JFrame.java \ -javax/swing/JLabel.java \ -javax/swing/JLayeredPane.java \ -javax/swing/JList.java \ -javax/swing/JMenuBar.java \ -javax/swing/JOptionPane.java \ -javax/swing/JPanel.java \ -javax/swing/JRadioButton.java \ -javax/swing/JRootPane.java \ -javax/swing/JScrollBar.java \ -javax/swing/JScrollPane.java \ -javax/swing/JSpinner.java \ -javax/swing/JTabbedPane.java \ -javax/swing/JTextArea.java \ -javax/swing/JTextField.java \ -javax/swing/JToggleButton.java \ -javax/swing/JToolTip.java \ -javax/swing/JTree.java \ -javax/swing/JViewport.java \ -javax/swing/JWindow.java \ -javax/swing/KeyStroke.java \ -javax/swing/LayoutFocusTraversalPolicy.java \ -javax/swing/ListCellRenderer.java \ -javax/swing/ListModel.java \ -javax/swing/ListSelectionModel.java \ -javax/swing/LookAndFeel.java \ -javax/swing/Scrollable.java \ -javax/swing/SortingFocusTraversalPolicy.java \ -javax/swing/SpinnerDateModel.java \ -javax/swing/SpinnerListModel.java \ -javax/swing/SpinnerModel.java \ -javax/swing/SpinnerNumberModel.java \ -javax/swing/Spring.java \ -javax/swing/SpringLayout.java \ -javax/swing/SwingConstants.java \ -javax/swing/SwingUtilities.java \ -javax/swing/Timer.java \ -javax/swing/ToolTipManager.java \ -javax/swing/TransferHandler.java \ -javax/swing/UIDefaults.java \ -javax/swing/UIManager.java \ -javax/swing/UnsupportedLookAndFeelException.java \ -javax/swing/event/AncestorEvent.java \ -javax/swing/event/AncestorListener.java \ -javax/swing/event/ChangeEvent.java \ -javax/swing/event/ChangeListener.java \ -javax/swing/event/DocumentEvent.java \ -javax/swing/event/DocumentListener.java \ -javax/swing/event/HyperlinkEvent.java \ -javax/swing/event/HyperlinkListener.java \ -javax/swing/event/ListDataEvent.java \ -javax/swing/event/ListDataListener.java \ -javax/swing/event/ListSelectionEvent.java \ -javax/swing/event/ListSelectionListener.java \ -javax/swing/event/MenuEvent.java \ -javax/swing/event/UndoableEditEvent.java \ -javax/swing/event/UndoableEditListener.java \ -javax/swing/event/CaretEvent.java \ -javax/swing/event/CaretListener.java \ -javax/swing/event/CellEditorListener.java \ -javax/swing/event/EventListenerList.java \ -javax/swing/event/InternalFrameAdapter.java \ -javax/swing/event/InternalFrameEvent.java \ -javax/swing/event/InternalFrameListener.java \ -javax/swing/event/MenuDragMouseEvent.java \ -javax/swing/event/MenuDragMouseListener.java \ -javax/swing/event/MenuKeyEvent.java \ -javax/swing/event/MenuKeyListener.java \ -javax/swing/event/MenuListener.java \ -javax/swing/event/MouseInputAdapter.java \ -javax/swing/event/MouseInputListener.java \ -javax/swing/event/PopupMenuEvent.java \ -javax/swing/event/PopupMenuListener.java \ -javax/swing/event/SwingPropertyChangeSupport.java \ -javax/swing/event/TableColumnModelEvent.java \ -javax/swing/event/TableColumnModelListener.java \ -javax/swing/event/TableModelEvent.java \ -javax/swing/event/TableModelListener.java \ -javax/swing/event/TreeExpansionEvent.java \ -javax/swing/event/TreeExpansionListener.java \ -javax/swing/event/TreeModelEvent.java \ -javax/swing/event/TreeModelListener.java \ -javax/swing/event/TreeSelectionEvent.java \ -javax/swing/event/TreeSelectionListener.java \ -javax/swing/event/TreeWillExpandListener.java \ -javax/swing/ActionMap.java \ -javax/swing/text/AbstractDocument.java \ -javax/swing/text/AttributeSet.java \ -javax/swing/text/BadLocationException.java \ -javax/swing/text/Caret.java \ -javax/swing/text/ChangedCharSetException.java \ -javax/swing/text/ComponentView.java \ -javax/swing/text/DefaultCaret.java \ -javax/swing/text/DefaultEditorKit.java \ -javax/swing/text/DefaultHighlighter.java \ -javax/swing/text/DefaultStyledDocument.java \ -javax/swing/text/Document.java \ -javax/swing/text/DocumentFilter.java \ -javax/swing/text/EditorKit.java \ -javax/swing/text/Element.java \ -javax/swing/text/FieldView.java \ -javax/swing/text/GapContent.java \ -javax/swing/text/Highlighter.java \ -javax/swing/text/JTextComponent.java \ -javax/swing/text/Keymap.java \ -javax/swing/text/LayeredHighlighter.java \ -javax/swing/text/MutableAttributeSet.java \ -javax/swing/text/NavigationFilter.java \ -javax/swing/text/PasswordView.java \ -javax/swing/text/PlainDocument.java \ -javax/swing/text/PlainView.java \ -javax/swing/text/Position.java \ -javax/swing/text/Segment.java \ -javax/swing/text/SimpleAttributeSet.java \ -javax/swing/text/StringContent.java \ -javax/swing/text/Style.java \ -javax/swing/text/StyleConstants.java \ -javax/swing/text/StyleContext.java \ -javax/swing/text/StyledDocument.java \ -javax/swing/text/StyledEditorKit.java \ -javax/swing/text/TabableView.java \ -javax/swing/text/TabExpander.java \ -javax/swing/text/TabSet.java \ -javax/swing/text/TabStop.java \ -javax/swing/text/TextAction.java \ -javax/swing/text/Utilities.java \ -javax/swing/text/View.java \ -javax/swing/text/ViewFactory.java \ -javax/swing/text/html/HTML.java \ -javax/swing/text/html/HTMLDocument.java \ -javax/swing/text/html/HTMLEditorKit.java \ -javax/swing/text/html/HTMLFrameHyperlinkEvent.java \ -javax/swing/text/html/parser/AttributeList.java \ -javax/swing/text/html/parser/ContentModel.java \ -javax/swing/text/html/parser/DTD.java \ -javax/swing/text/html/parser/DTDConstants.java \ -javax/swing/text/html/parser/DocumentParser.java \ -javax/swing/text/html/parser/Element.java \ -javax/swing/text/html/parser/Entity.java \ -javax/swing/text/html/parser/Parser.java \ -javax/swing/text/html/parser/ParserDelegator.java \ -javax/swing/text/html/parser/TagElement.java \ -javax/swing/text/rtf/ControlWordToken.java \ -javax/swing/text/rtf/RTFEditorKit.java \ -javax/swing/text/rtf/RTFParseException.java \ -javax/swing/text/rtf/RTFParser.java \ -javax/swing/text/rtf/RTFScanner.java \ -javax/swing/text/rtf/TextToken.java \ -javax/swing/text/rtf/Token.java \ -javax/swing/tree/TreeNode.java \ -javax/swing/tree/AbstractLayoutCache.java \ -javax/swing/tree/DefaultMutableTreeNode.java \ -javax/swing/tree/DefaultTreeCellEditor.java \ -javax/swing/tree/DefaultTreeCellRenderer.java \ -javax/swing/tree/DefaultTreeModel.java \ -javax/swing/tree/DefaultTreeSelectionModel.java \ -javax/swing/tree/ExpandVetoException.java \ -javax/swing/tree/FixedHeightLayoutCache.java \ -javax/swing/tree/MutableTreeNode.java \ -javax/swing/tree/RowMapper.java \ -javax/swing/tree/TreeCellEditor.java \ -javax/swing/tree/TreeCellRenderer.java \ -javax/swing/tree/TreeModel.java \ -javax/swing/tree/TreePath.java \ -javax/swing/tree/TreeSelectionModel.java \ -javax/swing/tree/VariableHeightLayoutCache.java \ -javax/swing/undo/UndoableEdit.java \ -javax/swing/undo/AbstractUndoableEdit.java \ -javax/swing/undo/CannotRedoException.java \ -javax/swing/undo/CannotUndoException.java \ -javax/swing/undo/CompoundEdit.java \ -javax/swing/undo/StateEdit.java \ -javax/swing/undo/StateEditable.java \ -javax/swing/undo/UndoManager.java \ -javax/swing/undo/UndoableEditSupport.java \ -javax/swing/BoundedRangeModel.java \ -javax/swing/CellEditor.java \ -javax/swing/ComboBoxEditor.java \ -javax/swing/ComboBoxModel.java \ -javax/swing/DefaultBoundedRangeModel.java \ -javax/swing/DesktopManager.java \ -javax/swing/InputVerifier.java \ -javax/swing/JInternalFrame.java \ -javax/swing/JTable.java \ -javax/swing/MenuElement.java \ -javax/swing/MenuSelectionManager.java \ -javax/swing/MutableComboBoxModel.java \ -javax/swing/Renderer.java \ -javax/swing/RootPaneContainer.java \ -javax/swing/ScrollPaneConstants.java \ -javax/swing/SingleSelectionModel.java \ -javax/swing/SizeRequirements.java \ -javax/swing/SizeSequence.java \ -javax/swing/WindowConstants.java \ -javax/swing/AbstractCellEditor.java \ -javax/swing/CellRendererPane.java \ -javax/swing/DebugGraphics.java \ -javax/swing/DefaultCellEditor.java \ -javax/swing/DefaultComboBoxModel.java \ -javax/swing/DefaultDesktopManager.java \ -javax/swing/DefaultFocusManager.java \ -javax/swing/DefaultListCellRenderer.java \ -javax/swing/DefaultSingleSelectionModel.java \ -javax/swing/FocusManager.java \ -javax/swing/JCheckBoxMenuItem.java \ -javax/swing/JColorChooser.java \ -javax/swing/JComboBox.java \ -javax/swing/JDesktopPane.java \ -javax/swing/JFileChooser.java \ -javax/swing/JMenu.java \ -javax/swing/JMenuItem.java \ -javax/swing/JPasswordField.java \ -javax/swing/JPopupMenu.java \ -javax/swing/JProgressBar.java \ -javax/swing/JRadioButtonMenuItem.java \ -javax/swing/JSeparator.java \ -javax/swing/JSlider.java \ -javax/swing/JSplitPane.java \ -javax/swing/JTextPane.java \ -javax/swing/JToolBar.java \ -javax/swing/OverlayLayout.java \ -javax/swing/Popup.java \ -javax/swing/PopupFactory.java \ -javax/swing/ProgressMonitor.java \ -javax/swing/ProgressMonitorInputStream.java \ -javax/swing/RepaintManager.java \ -javax/swing/ScrollPaneLayout.java \ -javax/swing/ViewportLayout.java - -rmi_java_source_files = \ -java/rmi/activation/Activatable.java \ -java/rmi/activation/ActivateFailedException.java \ -java/rmi/activation/ActivationDesc.java \ -java/rmi/activation/ActivationException.java \ -java/rmi/activation/ActivationGroup.java \ -java/rmi/activation/ActivationGroupDesc.java \ -java/rmi/activation/ActivationGroupID.java \ -java/rmi/activation/ActivationID.java \ -java/rmi/activation/ActivationInstantiator.java \ -java/rmi/activation/ActivationMonitor.java \ -java/rmi/activation/ActivationSystem.java \ -java/rmi/activation/Activator.java \ -java/rmi/activation/UnknownGroupException.java \ -java/rmi/activation/UnknownObjectException.java \ -java/rmi/AccessException.java \ -java/rmi/AlreadyBoundException.java \ -java/rmi/ConnectException.java \ -java/rmi/ConnectIOException.java \ -java/rmi/MarshalException.java \ -java/rmi/MarshalledObject.java \ -java/rmi/Naming.java \ -java/rmi/NoSuchObjectException.java \ -java/rmi/NotBoundException.java \ -java/rmi/RMISecurityException.java \ -java/rmi/RMISecurityManager.java \ -java/rmi/Remote.java \ -java/rmi/RemoteException.java \ -java/rmi/ServerError.java \ -java/rmi/ServerException.java \ -java/rmi/ServerRuntimeException.java \ -java/rmi/StubNotFoundException.java \ -java/rmi/UnexpectedException.java \ -java/rmi/UnknownHostException.java \ -java/rmi/UnmarshalException.java \ -java/rmi/dgc/DGC.java \ -java/rmi/dgc/Lease.java \ -java/rmi/dgc/VMID.java \ -java/rmi/registry/LocateRegistry.java \ -java/rmi/registry/Registry.java \ -java/rmi/registry/RegistryHandler.java \ -java/rmi/server/ExportException.java \ -java/rmi/server/LoaderHandler.java \ -java/rmi/server/LogStream.java \ -java/rmi/server/ObjID.java \ -java/rmi/server/Operation.java \ -java/rmi/server/RMIClassLoader.java \ -java/rmi/server/RMIClassLoaderSpi.java \ -java/rmi/server/RMIClientSocketFactory.java \ -java/rmi/server/RMIFailureHandler.java \ -java/rmi/server/RMIServerSocketFactory.java \ -java/rmi/server/RMISocketFactory.java \ -java/rmi/server/RemoteCall.java \ -java/rmi/server/RemoteObject.java \ -java/rmi/server/RemoteRef.java \ -java/rmi/server/RemoteServer.java \ -java/rmi/server/RemoteStub.java \ -java/rmi/server/ServerCloneException.java \ -java/rmi/server/ServerNotActiveException.java \ -java/rmi/server/ServerRef.java \ -java/rmi/server/Skeleton.java \ -java/rmi/server/SkeletonMismatchException.java \ -java/rmi/server/SkeletonNotFoundException.java \ -java/rmi/server/SocketSecurityException.java \ -java/rmi/server/UID.java \ -java/rmi/server/UnicastRemoteObject.java \ -java/rmi/server/Unreferenced.java \ -gnu/java/rmi/RMIMarshalledObjectInputStream.java \ -gnu/java/rmi/RMIMarshalledObjectOutputStream.java \ -gnu/java/rmi/dgc/DGCImpl.java \ -gnu/java/rmi/dgc/DGCImpl_Skel.java \ -gnu/java/rmi/dgc/DGCImpl_Stub.java \ -gnu/java/rmi/registry/RegistryImpl.java \ -gnu/java/rmi/registry/RegistryImpl_Skel.java \ -gnu/java/rmi/registry/RegistryImpl_Stub.java \ -gnu/java/rmi/rmic/Compile_gcj.java \ -gnu/java/rmi/rmic/Compile_jikes.java \ -gnu/java/rmi/rmic/Compile_kjc.java \ -gnu/java/rmi/rmic/Compiler.java \ -gnu/java/rmi/rmic/CompilerProcess.java \ -gnu/java/rmi/rmic/RMIC.java \ -gnu/java/rmi/rmic/RMICException.java \ -gnu/java/rmi/rmic/TabbedWriter.java \ -gnu/java/rmi/server/ConnectionRunnerPool.java \ -gnu/java/rmi/server/ProtocolConstants.java \ -gnu/java/rmi/server/RMIDefaultSocketFactory.java \ -gnu/java/rmi/server/RMIHashes.java \ -gnu/java/rmi/server/RMIIncomingThread.java \ -gnu/java/rmi/server/RMIObjectInputStream.java \ -gnu/java/rmi/server/RMIObjectOutputStream.java \ -gnu/java/rmi/server/RMIVoidValue.java \ -gnu/java/rmi/server/UnicastConnection.java \ -gnu/java/rmi/server/UnicastConnectionManager.java \ -gnu/java/rmi/server/UnicastRef.java \ -gnu/java/rmi/server/UnicastRemoteCall.java \ -gnu/java/rmi/server/UnicastRemoteStub.java \ -gnu/java/rmi/server/UnicastServer.java \ -gnu/java/rmi/server/UnicastServerRef.java - -javax_imageio_source_files = \ -javax/imageio/ImageWriteParam.java \ -javax/imageio/ImageReader.java \ -javax/imageio/ImageWriter.java \ -javax/imageio/IIOException.java \ -javax/imageio/IIOParamController.java \ -javax/imageio/ImageReadParam.java \ -javax/imageio/IIOParam.java \ -javax/imageio/spi/IIORegistry.java \ -javax/imageio/spi/ImageWriterSpi.java \ -javax/imageio/spi/ImageOutputStreamSpi.java \ -javax/imageio/spi/ServiceRegistry.java \ -javax/imageio/spi/ImageTranscoderSpi.java \ -javax/imageio/spi/ImageReaderSpi.java \ -javax/imageio/spi/IIOServiceProvider.java \ -javax/imageio/spi/ImageReaderWriterSpi.java \ -javax/imageio/spi/ImageInputStreamSpi.java \ -javax/imageio/spi/RegisterableService.java \ -javax/imageio/metadata/IIOAttr.java \ -javax/imageio/metadata/IIONamedNodeMap.java \ -javax/imageio/metadata/IIONodeList.java \ -javax/imageio/metadata/IIOMetadataFormatImpl.java \ -javax/imageio/metadata/IIOInvalidTreeException.java \ -javax/imageio/metadata/IIOMetadataFormat.java \ -javax/imageio/metadata/IIOMetadataController.java \ -javax/imageio/metadata/IIOMetadataNode.java \ -javax/imageio/metadata/IIOMetadata.java \ -javax/imageio/stream/FileImageOutputStream.java \ -javax/imageio/stream/ImageInputStream.java \ -javax/imageio/stream/IIOByteBuffer.java \ -javax/imageio/stream/FileCacheImageInputStream.java \ -javax/imageio/stream/ImageInputStreamImpl.java \ -javax/imageio/stream/ImageOutputStreamImpl.java \ -javax/imageio/stream/MemoryCacheImageInputStream.java \ -javax/imageio/stream/FileCacheImageOutputStream.java \ -javax/imageio/stream/ImageOutputStream.java \ -javax/imageio/stream/MemoryCacheImageOutputStream.java \ -javax/imageio/stream/FileImageInputStream.java \ -javax/imageio/event/IIOReadProgressListener.java \ -javax/imageio/event/IIOWriteWarningListener.java \ -javax/imageio/event/IIOReadWarningListener.java \ -javax/imageio/event/IIOReadUpdateListener.java \ -javax/imageio/event/IIOWriteProgressListener.java \ -javax/imageio/ImageTranscoder.java \ -javax/imageio/ImageTypeSpecifier.java \ -javax/imageio/ImageIO.java \ -javax/imageio/IIOImage.java - -javax_xml_source_files = \ -javax/xml/xpath/XPathConstants.java \ -javax/xml/xpath/XPathFunction.java \ -javax/xml/xpath/XPathVariableResolver.java \ -javax/xml/xpath/XPathExpressionException.java \ -javax/xml/xpath/XPathFunctionResolver.java \ -javax/xml/xpath/XPath.java \ -javax/xml/xpath/XPathFactoryConfigurationException.java \ -javax/xml/xpath/XPathFactory.java \ -javax/xml/xpath/XPathException.java \ -javax/xml/xpath/XPathExpression.java \ -javax/xml/xpath/XPathFunctionException.java \ -javax/xml/validation/ValidatorHandler.java \ -javax/xml/validation/Validator.java \ -javax/xml/validation/TypeInfoProvider.java \ -javax/xml/validation/SchemaFactory.java \ -javax/xml/validation/Schema.java \ -javax/xml/parsers/SAXParserFactory.java \ -javax/xml/parsers/FactoryConfigurationError.java \ -javax/xml/parsers/SAXParser.java \ -javax/xml/parsers/DocumentBuilderFactory.java \ -javax/xml/parsers/ParserConfigurationException.java \ -javax/xml/parsers/DocumentBuilder.java \ -javax/xml/datatype/DatatypeFactory.java \ -javax/xml/datatype/XMLGregorianCalendar.java \ -javax/xml/datatype/Duration.java \ -javax/xml/datatype/DatatypeConfigurationException.java \ -javax/xml/datatype/DatatypeConstants.java \ -javax/xml/XMLConstants.java \ -javax/xml/namespace/NamespaceContext.java \ -javax/xml/namespace/QName.java \ -javax/xml/transform/TransformerException.java \ -javax/xml/transform/TransformerFactoryConfigurationError.java \ -javax/xml/transform/sax/SAXResult.java \ -javax/xml/transform/sax/TransformerHandler.java \ -javax/xml/transform/sax/SAXTransformerFactory.java \ -javax/xml/transform/sax/SAXSource.java \ -javax/xml/transform/sax/TemplatesHandler.java \ -javax/xml/transform/OutputKeys.java \ -javax/xml/transform/stream/StreamResult.java \ -javax/xml/transform/stream/StreamSource.java \ -javax/xml/transform/Source.java \ -javax/xml/transform/SourceLocator.java \ -javax/xml/transform/ErrorListener.java \ -javax/xml/transform/TransformerConfigurationException.java \ -javax/xml/transform/Templates.java \ -javax/xml/transform/Result.java \ -javax/xml/transform/URIResolver.java \ -javax/xml/transform/dom/DOMSource.java \ -javax/xml/transform/dom/DOMLocator.java \ -javax/xml/transform/dom/DOMResult.java \ -javax/xml/transform/Transformer.java \ -javax/xml/transform/TransformerFactory.java - -javax_source_files = \ -javax/net/VanillaSocketFactory.java \ -javax/net/ssl/TrustManagerFactorySpi.java \ -javax/net/ssl/SSLKeyException.java \ -javax/net/ssl/TrustManager.java \ -javax/net/ssl/SSLServerSocket.java \ -javax/net/ssl/TrustManagerFactory.java \ -javax/net/ssl/KeyManager.java \ -javax/net/ssl/SSLSocketFactory.java \ -javax/net/ssl/SSLPermission.java \ -javax/net/ssl/SSLContext.java \ -javax/net/ssl/TrivialHostnameVerifier.java \ -javax/net/ssl/X509KeyManager.java \ -javax/net/ssl/SSLServerSocketFactory.java \ -javax/net/ssl/SSLSessionBindingListener.java \ -javax/net/ssl/SSLSessionContext.java \ -javax/net/ssl/KeyManagerFactory.java \ -javax/net/ssl/SSLProtocolException.java \ -javax/net/ssl/SSLSocket.java \ -javax/net/ssl/HostnameVerifier.java \ -javax/net/ssl/HandshakeCompletedListener.java \ -javax/net/ssl/HttpsURLConnection.java \ -javax/net/ssl/KeyManagerFactorySpi.java \ -javax/net/ssl/SSLHandshakeException.java \ -javax/net/ssl/SSLPeerUnverifiedException.java \ -javax/net/ssl/X509TrustManager.java \ -javax/net/ssl/SSLSession.java \ -javax/net/ssl/SSLContextSpi.java \ -javax/net/ssl/HandshakeCompletedEvent.java \ -javax/net/ssl/SSLSessionBindingEvent.java \ -javax/net/ssl/SSLException.java \ -javax/net/ssl/ManagerFactoryParameters.java \ -javax/net/SocketFactory.java \ -javax/net/VanillaServerSocketFactory.java \ -javax/net/ServerSocketFactory.java \ -javax/print/attribute/HashPrintServiceAttributeSet.java \ -javax/print/attribute/Attribute.java \ -javax/print/attribute/DocAttributeSet.java \ -javax/print/attribute/PrintRequestAttributeSet.java \ -javax/print/attribute/standard/Chromaticity.java \ -javax/print/attribute/standard/Destination.java \ -javax/print/attribute/standard/MediaPrintableArea.java \ -javax/print/attribute/standard/MediaSize.java \ -javax/print/attribute/standard/NumberOfInterveningJobs.java \ -javax/print/attribute/standard/PrinterMakeAndModel.java \ -javax/print/attribute/standard/PrinterStateReason.java \ -javax/print/attribute/standard/JobImpressions.java \ -javax/print/attribute/standard/JobHoldUntil.java \ -javax/print/attribute/standard/JobKOctetsSupported.java \ -javax/print/attribute/standard/JobPriority.java \ -javax/print/attribute/standard/QueuedJobCount.java \ -javax/print/attribute/standard/JobOriginatingUserName.java \ -javax/print/attribute/standard/PrinterName.java \ -javax/print/attribute/standard/PDLOverrideSupported.java \ -javax/print/attribute/standard/PrinterStateReasons.java \ -javax/print/attribute/standard/JobMediaSheets.java \ -javax/print/attribute/standard/JobKOctets.java \ -javax/print/attribute/standard/MultipleDocumentHandling.java \ -javax/print/attribute/standard/PrinterMessageFromOperator.java \ -javax/print/attribute/standard/Severity.java \ -javax/print/attribute/standard/ReferenceUriSchemesSupported.java \ -javax/print/attribute/standard/DocumentName.java \ -javax/print/attribute/standard/PrinterMoreInfo.java \ -javax/print/attribute/standard/JobMessageFromOperator.java \ -javax/print/attribute/standard/JobStateReasons.java \ -javax/print/attribute/standard/PrinterIsAcceptingJobs.java \ -javax/print/attribute/standard/DateTimeAtProcessing.java \ -javax/print/attribute/standard/PagesPerMinute.java \ -javax/print/attribute/standard/PrinterResolution.java \ -javax/print/attribute/standard/JobMediaSheetsSupported.java \ -javax/print/attribute/standard/NumberUpSupported.java \ -javax/print/attribute/standard/Finishings.java \ -javax/print/attribute/standard/DateTimeAtCompleted.java \ -javax/print/attribute/standard/NumberOfDocuments.java \ -javax/print/attribute/standard/PrinterInfo.java \ -javax/print/attribute/standard/PrintQuality.java \ -javax/print/attribute/standard/JobSheets.java \ -javax/print/attribute/standard/Media.java \ -javax/print/attribute/standard/Fidelity.java \ -javax/print/attribute/standard/PrinterLocation.java \ -javax/print/attribute/standard/PrinterMoreInfoManufacturer.java \ -javax/print/attribute/standard/OrientationRequested.java \ -javax/print/attribute/standard/JobState.java \ -javax/print/attribute/standard/DateTimeAtCreation.java \ -javax/print/attribute/standard/PresentationDirection.java \ -javax/print/attribute/standard/JobName.java \ -javax/print/attribute/standard/PagesPerMinuteColor.java \ -javax/print/attribute/standard/CopiesSupported.java \ -javax/print/attribute/standard/PrinterURI.java \ -javax/print/attribute/standard/PageRanges.java \ -javax/print/attribute/standard/RequestingUserName.java \ -javax/print/attribute/standard/JobPrioritySupported.java \ -javax/print/attribute/standard/JobMediaSheetsCompleted.java \ -javax/print/attribute/standard/JobKOctetsProcessed.java \ -javax/print/attribute/standard/JobImpressionsCompleted.java \ -javax/print/attribute/standard/Compression.java \ -javax/print/attribute/standard/JobImpressionsSupported.java \ -javax/print/attribute/standard/Sides.java \ -javax/print/attribute/standard/JobStateReason.java \ -javax/print/attribute/standard/SheetCollate.java \ -javax/print/attribute/standard/Copies.java \ -javax/print/attribute/standard/MediaSizeName.java \ -javax/print/attribute/standard/OutputDeviceAssigned.java \ -javax/print/attribute/standard/PrinterState.java \ -javax/print/attribute/standard/NumberUp.java \ -javax/print/attribute/standard/ColorSupported.java \ -javax/print/attribute/HashAttributeSet.java \ -javax/print/attribute/SetOfIntegerSyntax.java \ -javax/print/attribute/HashDocAttributeSet.java \ -javax/print/attribute/PrintRequestAttribute.java \ -javax/print/attribute/DateTimeSyntax.java \ -javax/print/attribute/PrintServiceAttribute.java \ -javax/print/attribute/UnmodifiableSetException.java \ -javax/print/attribute/HashPrintJobAttributeSet.java \ -javax/print/attribute/PrintJobAttribute.java \ -javax/print/attribute/AttributeSet.java \ -javax/print/attribute/ResolutionSyntax.java \ -javax/print/attribute/URISyntax.java \ -javax/print/attribute/AttributeSetUtilities.java \ -javax/print/attribute/HashPrintRequestAttributeSet.java \ -javax/print/attribute/TextSyntax.java \ -javax/print/attribute/PrintJobAttributeSet.java \ -javax/print/attribute/SupportedValuesAttribute.java \ -javax/print/attribute/EnumSyntax.java \ -javax/print/attribute/DocAttribute.java \ -javax/print/attribute/Size2DSyntax.java \ -javax/print/attribute/IntegerSyntax.java \ -javax/print/attribute/PrintServiceAttributeSet.java \ -javax/print/PrintService.java \ -javax/print/DocFlavor.java \ -javax/print/DocPrintJob.java \ -javax/print/event/PrintEvent.java \ -javax/print/event/PrintJobAdapter.java \ -javax/print/event/PrintServiceAttributeEvent.java \ -javax/print/event/PrintJobAttributeEvent.java \ -javax/print/event/PrintServiceAttributeListener.java \ -javax/print/event/PrintJobEvent.java \ -javax/print/event/PrintJobListener.java \ -javax/print/event/PrintJobAttributeListener.java \ -javax/print/PrintServiceLookup.java \ -javax/print/URIException.java \ -javax/print/StreamPrintService.java \ -javax/print/MultiDoc.java \ -javax/print/FlavorException.java \ -javax/print/Doc.java \ -javax/print/MultiDocPrintJob.java \ -javax/print/CancelablePrintJob.java \ -javax/print/MultiDocPrintService.java \ -javax/print/ServiceUIFactory.java \ -javax/print/AttributeException.java \ -javax/print/PrintException.java \ -javax/naming/ServiceUnavailableException.java \ -javax/naming/directory/Attribute.java \ -javax/naming/directory/SchemaViolationException.java \ -javax/naming/directory/InitialDirContext.java \ -javax/naming/directory/BasicAttribute.java \ -javax/naming/directory/NoSuchAttributeException.java \ -javax/naming/directory/InvalidAttributesException.java \ -javax/naming/directory/InvalidAttributeValueException.java \ -javax/naming/directory/BasicAttributes.java \ -javax/naming/directory/AttributeModificationException.java \ -javax/naming/directory/InvalidAttributeIdentifierException.java \ -javax/naming/directory/DirContext.java \ -javax/naming/directory/Attributes.java \ -javax/naming/directory/InvalidSearchControlsException.java \ -javax/naming/directory/SearchControls.java \ -javax/naming/directory/AttributeInUseException.java \ -javax/naming/directory/InvalidSearchFilterException.java \ -javax/naming/directory/ModificationItem.java \ -javax/naming/directory/SearchResult.java \ -javax/naming/Binding.java \ -javax/naming/ContextNotEmptyException.java \ -javax/naming/Referenceable.java \ -javax/naming/InterruptedNamingException.java \ -javax/naming/CommunicationException.java \ -javax/naming/LinkException.java \ -javax/naming/BinaryRefAddr.java \ -javax/naming/LinkLoopException.java \ -javax/naming/AuthenticationException.java \ -javax/naming/NameAlreadyBoundException.java \ -javax/naming/MalformedLinkException.java \ -javax/naming/NotContextException.java \ -javax/naming/spi/DirStateFactory.java \ -javax/naming/spi/ResolveResult.java \ -javax/naming/spi/ObjectFactoryBuilder.java \ -javax/naming/spi/DirObjectFactory.java \ -javax/naming/spi/DirectoryManager.java \ -javax/naming/spi/InitialContextFactoryBuilder.java \ -javax/naming/spi/ObjectFactory.java \ -javax/naming/spi/Resolver.java \ -javax/naming/spi/StateFactory.java \ -javax/naming/spi/InitialContextFactory.java \ -javax/naming/spi/NamingManager.java \ -javax/naming/InvalidNameException.java \ -javax/naming/NamingEnumeration.java \ -javax/naming/LinkRef.java \ -javax/naming/event/NamingListener.java \ -javax/naming/event/NamingEvent.java \ -javax/naming/event/NamespaceChangeListener.java \ -javax/naming/event/ObjectChangeListener.java \ -javax/naming/event/EventContext.java \ -javax/naming/event/NamingExceptionEvent.java \ -javax/naming/event/EventDirContext.java \ -javax/naming/NamingException.java \ -javax/naming/CannotProceedException.java \ -javax/naming/PartialResultException.java \ -javax/naming/TimeLimitExceededException.java \ -javax/naming/NoPermissionException.java \ -javax/naming/CompoundName.java \ -javax/naming/SizeLimitExceededException.java \ -javax/naming/NoInitialContextException.java \ -javax/naming/NameNotFoundException.java \ -javax/naming/InitialContext.java \ -javax/naming/NamingSecurityException.java \ -javax/naming/Context.java \ -javax/naming/ConfigurationException.java \ -javax/naming/InsufficientResourcesException.java \ -javax/naming/AuthenticationNotSupportedException.java \ -javax/naming/StringRefAddr.java \ -javax/naming/ldap/InitialLdapContext.java \ -javax/naming/ldap/ExtendedRequest.java \ -javax/naming/ldap/Control.java \ -javax/naming/ldap/UnsolicitedNotificationListener.java \ -javax/naming/ldap/LdapReferralException.java \ -javax/naming/ldap/UnsolicitedNotificationEvent.java \ -javax/naming/ldap/HasControls.java \ -javax/naming/ldap/LdapContext.java \ -javax/naming/ldap/ExtendedResponse.java \ -javax/naming/ldap/UnsolicitedNotification.java \ -javax/naming/ldap/ControlFactory.java \ -javax/naming/OperationNotSupportedException.java \ -javax/naming/ReferralException.java \ -javax/naming/LimitExceededException.java \ -javax/naming/Reference.java \ -javax/naming/NameParser.java \ -javax/naming/NameClassPair.java \ -javax/naming/RefAddr.java \ -javax/naming/CompositeName.java \ -javax/naming/Name.java \ -javax/security/cert/CertificateNotYetValidException.java \ -javax/security/cert/Certificate.java \ -javax/security/cert/X509Certificate.java \ -javax/security/cert/X509CertBridge.java \ -javax/security/cert/CertificateEncodingException.java \ -javax/security/cert/CertificateExpiredException.java \ -javax/security/cert/CertificateException.java \ -javax/security/cert/CertificateParsingException.java \ -javax/security/auth/Destroyable.java \ -javax/security/auth/x500/X500PrivateCredential.java \ -javax/security/auth/x500/X500Principal.java \ -javax/security/auth/spi/LoginModule.java \ -javax/security/auth/DestroyFailedException.java \ -javax/security/auth/SubjectDomainCombiner.java \ -javax/security/auth/AuthPermission.java \ -javax/security/auth/login/CredentialExpiredException.java \ -javax/security/auth/login/NullConfiguration.java \ -javax/security/auth/login/AccountExpiredException.java \ -javax/security/auth/login/LoginException.java \ -javax/security/auth/login/AppConfigurationEntry.java \ -javax/security/auth/login/Configuration.java \ -javax/security/auth/login/LoginContext.java \ -javax/security/auth/login/FailedLoginException.java \ -javax/security/auth/PrivateCredentialPermission.java \ -javax/security/auth/Subject.java \ -javax/security/auth/Policy.java \ -javax/security/auth/Refreshable.java \ -javax/security/auth/callback/TextInputCallback.java \ -javax/security/auth/callback/LanguageCallback.java \ -javax/security/auth/callback/TextOutputCallback.java \ -javax/security/auth/callback/UnsupportedCallbackException.java \ -javax/security/auth/callback/Callback.java \ -javax/security/auth/callback/ConfirmationCallback.java \ -javax/security/auth/callback/ChoiceCallback.java \ -javax/security/auth/callback/NameCallback.java \ -javax/security/auth/callback/PasswordCallback.java \ -javax/security/auth/callback/CallbackHandler.java \ -javax/security/auth/RefreshFailedException.java \ -javax/security/sasl/RealmCallback.java \ -javax/security/sasl/SaslClient.java \ -javax/security/sasl/RealmChoiceCallback.java \ -javax/security/sasl/AuthenticationException.java \ -javax/security/sasl/Sasl.java \ -javax/security/sasl/SaslClientFactory.java \ -javax/security/sasl/AuthorizeCallback.java \ -javax/security/sasl/SaslServerFactory.java \ -javax/security/sasl/SaslException.java \ -javax/security/sasl/SaslServer.java \ -javax/transaction/TransactionRolledbackException.java \ -javax/transaction/Synchronization.java \ -javax/transaction/TransactionRequiredException.java \ -javax/transaction/RollbackException.java \ -javax/transaction/Status.java \ -javax/transaction/HeuristicMixedException.java \ -javax/transaction/HeuristicRollbackException.java \ -javax/transaction/SystemException.java \ -javax/transaction/UserTransaction.java \ -javax/transaction/NotSupportedException.java \ -javax/transaction/HeuristicCommitException.java \ -javax/transaction/Transaction.java \ -javax/transaction/TransactionManager.java \ -javax/transaction/InvalidTransactionException.java \ -javax/transaction/xa/XAException.java \ -javax/transaction/xa/XAResource.java \ -javax/transaction/xa/Xid.java \ -javax/accessibility/AccessibleValue.java \ -javax/accessibility/AccessibleBundle.java \ -javax/accessibility/AccessibleContext.java \ -javax/accessibility/AccessibleRelationSet.java \ -javax/accessibility/Accessible.java \ -javax/accessibility/AccessibleTableModelChange.java \ -javax/accessibility/AccessibleState.java \ -javax/accessibility/AccessibleIcon.java \ -javax/accessibility/AccessibleHypertext.java \ -javax/accessibility/AccessibleComponent.java \ -javax/accessibility/AccessibleText.java \ -javax/accessibility/AccessibleRole.java \ -javax/accessibility/AccessibleEditableText.java \ -javax/accessibility/AccessibleRelation.java \ -javax/accessibility/AccessibleTable.java \ -javax/accessibility/AccessibleStateSet.java \ -javax/accessibility/AccessibleSelection.java \ -javax/accessibility/AccessibleExtendedTable.java \ -javax/accessibility/AccessibleResourceBundle.java \ -javax/accessibility/AccessibleExtendedComponent.java \ -javax/accessibility/AccessibleHyperlink.java \ -javax/accessibility/AccessibleKeyBinding.java \ -javax/accessibility/AccessibleAction.java \ -javax/sql/ConnectionEventListener.java \ -javax/sql/RowSetEvent.java \ -javax/sql/ConnectionPoolDataSource.java \ -javax/sql/RowSetWriter.java \ -javax/sql/XAConnection.java \ -javax/sql/RowSet.java \ -javax/sql/DataSource.java \ -javax/sql/RowSetInternal.java \ -javax/sql/RowSetReader.java \ -javax/sql/RowSetMetaData.java \ -javax/sql/PooledConnection.java \ -javax/sql/XADataSource.java \ -javax/sql/RowSetListener.java \ -javax/sql/ConnectionEvent.java \ -javax/crypto/Cipher.java \ -javax/crypto/IllegalBlockSizeException.java \ -javax/crypto/MacSpi.java \ -javax/crypto/SecretKeyFactorySpi.java \ -javax/crypto/ShortBufferException.java \ -javax/crypto/KeyAgreement.java \ -javax/crypto/ExemptionMechanism.java \ -javax/crypto/CipherOutputStream.java \ -javax/crypto/SealedObject.java \ -javax/crypto/NullCipher.java \ -javax/crypto/KeyAgreementSpi.java \ -javax/crypto/SecretKeyFactory.java \ -javax/crypto/SecretKey.java \ -javax/crypto/NullCipherImpl.java \ -javax/crypto/spec/DESKeySpec.java \ -javax/crypto/spec/DHPrivateKeySpec.java \ -javax/crypto/spec/DHParameterSpec.java \ -javax/crypto/spec/PBEParameterSpec.java \ -javax/crypto/spec/DESedeKeySpec.java \ -javax/crypto/spec/DHGenParameterSpec.java \ -javax/crypto/spec/DHPublicKeySpec.java \ -javax/crypto/spec/PBEKeySpec.java \ -javax/crypto/spec/RC5ParameterSpec.java \ -javax/crypto/spec/RC2ParameterSpec.java \ -javax/crypto/spec/IvParameterSpec.java \ -javax/crypto/spec/SecretKeySpec.java \ -javax/crypto/interfaces/DHPublicKey.java \ -javax/crypto/interfaces/DHKey.java \ -javax/crypto/interfaces/DHPrivateKey.java \ -javax/crypto/interfaces/PBEKey.java \ -javax/crypto/NoSuchPaddingException.java \ -javax/crypto/KeyGeneratorSpi.java \ -javax/crypto/BadPaddingException.java \ -javax/crypto/CipherSpi.java \ -javax/crypto/KeyGenerator.java \ -javax/crypto/CipherInputStream.java \ -javax/crypto/ExemptionMechanismException.java \ -javax/crypto/ExemptionMechanismSpi.java \ -javax/crypto/EncryptedPrivateKeyInfo.java \ -javax/crypto/Mac.java - -org_source_files = \ -org/ietf/jgss/GSSManager.java \ -org/ietf/jgss/GSSException.java \ -org/ietf/jgss/MessageProp.java \ -org/ietf/jgss/GSSName.java \ -org/ietf/jgss/GSSContext.java \ -org/ietf/jgss/Oid.java \ -org/ietf/jgss/GSSCredential.java \ -org/ietf/jgss/ChannelBinding.java - -gnu_xml_source_files = \ -gnu/xml/xpath/EqualityExpr.java \ -gnu/xml/xpath/NumberFunction.java \ -gnu/xml/xpath/StringLengthFunction.java \ -gnu/xml/xpath/NameFunction.java \ -gnu/xml/xpath/SumFunction.java \ -gnu/xml/xpath/Pattern.java \ -gnu/xml/xpath/StringFunction.java \ -gnu/xml/xpath/NegativeExpr.java \ -gnu/xml/xpath/UnionExpr.java \ -gnu/xml/xpath/SubstringFunction.java \ -gnu/xml/xpath/Expr.java \ -gnu/xml/xpath/XPathFactoryImpl.java \ -gnu/xml/xpath/NormalizeSpaceFunction.java \ -gnu/xml/xpath/Constant.java \ -gnu/xml/xpath/Predicate.java \ -gnu/xml/xpath/Path.java \ -gnu/xml/xpath/OrExpr.java \ -gnu/xml/xpath/LangFunction.java \ -gnu/xml/xpath/StartsWithFunction.java \ -gnu/xml/xpath/SubstringAfterFunction.java \ -gnu/xml/xpath/FloorFunction.java \ -gnu/xml/xpath/NotFunction.java \ -gnu/xml/xpath/Root.java \ -gnu/xml/xpath/PositionFunction.java \ -gnu/xml/xpath/VariableReference.java \ -gnu/xml/xpath/DocumentOrderComparator.java \ -gnu/xml/xpath/LocalNameFunction.java \ -gnu/xml/xpath/NamespaceUriFunction.java \ -gnu/xml/xpath/TranslateFunction.java \ -gnu/xml/xpath/FalseFunction.java \ -gnu/xml/xpath/AndExpr.java \ -gnu/xml/xpath/XPathParser.java \ -gnu/xml/xpath/NamespaceTest.java \ -gnu/xml/xpath/ConcatFunction.java \ -gnu/xml/xpath/NameTest.java \ -gnu/xml/xpath/CountFunction.java \ -gnu/xml/xpath/IdFunction.java \ -gnu/xml/xpath/LastFunction.java \ -gnu/xml/xpath/XPathTokenizer.java \ -gnu/xml/xpath/Steps.java \ -gnu/xml/xpath/TrueFunction.java \ -gnu/xml/xpath/BooleanFunction.java \ -gnu/xml/xpath/ParenthesizedExpr.java \ -gnu/xml/xpath/XPathImpl.java \ -gnu/xml/xpath/Selector.java \ -gnu/xml/xpath/RoundFunction.java \ -gnu/xml/xpath/SubstringBeforeFunction.java \ -gnu/xml/xpath/Function.java \ -gnu/xml/xpath/CeilingFunction.java \ -gnu/xml/xpath/RelationalExpr.java \ -gnu/xml/xpath/FunctionCall.java \ -gnu/xml/xpath/NodeTypeTest.java \ -gnu/xml/xpath/ArithmeticExpr.java \ -gnu/xml/xpath/Test.java \ -gnu/xml/xpath/ContainsFunction.java \ -gnu/xml/pipeline/EventFilter.java \ -gnu/xml/pipeline/NSFilter.java \ -gnu/xml/pipeline/XsltFilter.java \ -gnu/xml/pipeline/ValidationConsumer.java \ -gnu/xml/pipeline/PipelineFactory.java \ -gnu/xml/pipeline/TextConsumer.java \ -gnu/xml/pipeline/LinkFilter.java \ -gnu/xml/pipeline/TeeConsumer.java \ -gnu/xml/pipeline/DomConsumer.java \ -gnu/xml/pipeline/EventConsumer.java \ -gnu/xml/pipeline/WellFormednessFilter.java \ -gnu/xml/pipeline/XIncludeFilter.java \ -gnu/xml/pipeline/CallFilter.java \ -gnu/xml/aelfred2/XmlParser.java \ -gnu/xml/aelfred2/XmlReader.java \ -gnu/xml/aelfred2/JAXPFactory.java \ -gnu/xml/aelfred2/ContentHandler2.java \ -gnu/xml/aelfred2/SAXDriver.java \ -gnu/xml/util/XCat.java \ -gnu/xml/util/DomParser.java \ -gnu/xml/util/XMLWriter.java \ -gnu/xml/util/Resolver.java \ -gnu/xml/util/DoParse.java \ -gnu/xml/util/XHTMLWriter.java \ -gnu/xml/util/SAXNullTransformerFactory.java \ -gnu/xml/dom/DomXPathNSResolver.java \ -gnu/xml/dom/ls/FilteredSAXEventSink.java \ -gnu/xml/dom/ls/DomLSException.java \ -gnu/xml/dom/ls/DomLSSerializer.java \ -gnu/xml/dom/ls/DomLSInput.java \ -gnu/xml/dom/ls/DomLSOutput.java \ -gnu/xml/dom/ls/SAXEventSink.java \ -gnu/xml/dom/ls/DomLSParser.java \ -gnu/xml/dom/ls/ReaderInputStream.java \ -gnu/xml/dom/ls/WriterOutputStream.java \ -gnu/xml/dom/DomElement.java \ -gnu/xml/dom/DomNsNode.java \ -gnu/xml/dom/DomAttr.java \ -gnu/xml/dom/DTDAttributeTypeInfo.java \ -gnu/xml/dom/DomDocumentBuilder.java \ -gnu/xml/dom/DTDElementTypeInfo.java \ -gnu/xml/dom/DomDocument.java \ -gnu/xml/dom/DomXPathExpression.java \ -gnu/xml/dom/DomDocumentConfiguration.java \ -gnu/xml/dom/DomDocumentFragment.java \ -gnu/xml/dom/DomProcessingInstruction.java \ -gnu/xml/dom/Consumer.java \ -gnu/xml/dom/DomComment.java \ -gnu/xml/dom/DomCharacterData.java \ -gnu/xml/dom/DomExtern.java \ -gnu/xml/dom/DomEntityReference.java \ -gnu/xml/dom/DomNamedNodeMap.java \ -gnu/xml/dom/ImplementationList.java \ -gnu/xml/dom/ImplementationSource.java \ -gnu/xml/dom/DomImpl.java \ -gnu/xml/dom/DomDoctype.java \ -gnu/xml/dom/DomNode.java \ -gnu/xml/dom/DomXPathResult.java \ -gnu/xml/dom/DomDocumentBuilderFactory.java \ -gnu/xml/dom/DomText.java \ -gnu/xml/dom/DomNSResolverContext.java \ -gnu/xml/dom/DomNodeIterator.java \ -gnu/xml/dom/DomNotation.java \ -gnu/xml/dom/JAXPFactory.java \ -gnu/xml/dom/DomIterator.java \ -gnu/xml/dom/DomEvent.java \ -gnu/xml/dom/DomEntity.java \ -gnu/xml/dom/DomCDATASection.java \ -gnu/xml/dom/DomDOMException.java \ -gnu/xml/dom/html2/DomHTMLAnchorElement.java \ -gnu/xml/dom/html2/DomHTMLAppletElement.java \ -gnu/xml/dom/html2/DomHTMLAreaElement.java \ -gnu/xml/dom/html2/DomHTMLBaseElement.java \ -gnu/xml/dom/html2/DomHTMLBaseFontElement.java \ -gnu/xml/dom/html2/DomHTMLBodyElement.java \ -gnu/xml/dom/html2/DomHTMLBRElement.java \ -gnu/xml/dom/html2/DomHTMLButtonElement.java \ -gnu/xml/dom/html2/DomHTMLCollection.java \ -gnu/xml/dom/html2/DomHTMLDirectoryElement.java \ -gnu/xml/dom/html2/DomHTMLDivElement.java \ -gnu/xml/dom/html2/DomHTMLDListElement.java \ -gnu/xml/dom/html2/DomHTMLDocument.java \ -gnu/xml/dom/html2/DomHTMLElement.java \ -gnu/xml/dom/html2/DomHTMLFieldSetElement.java \ -gnu/xml/dom/html2/DomHTMLFontElement.java \ -gnu/xml/dom/html2/DomHTMLFormElement.java \ -gnu/xml/dom/html2/DomHTMLFrameElement.java \ -gnu/xml/dom/html2/DomHTMLFrameSetElement.java \ -gnu/xml/dom/html2/DomHTMLHeadElement.java \ -gnu/xml/dom/html2/DomHTMLHeadingElement.java \ -gnu/xml/dom/html2/DomHTMLHRElement.java \ -gnu/xml/dom/html2/DomHTMLHtmlElement.java \ -gnu/xml/dom/html2/DomHTMLIFrameElement.java \ -gnu/xml/dom/html2/DomHTMLImageElement.java \ -gnu/xml/dom/html2/DomHTMLImpl.java \ -gnu/xml/dom/html2/DomHTMLInputElement.java \ -gnu/xml/dom/html2/DomHTMLIsIndexElement.java \ -gnu/xml/dom/html2/DomHTMLLabelElement.java \ -gnu/xml/dom/html2/DomHTMLLegendElement.java \ -gnu/xml/dom/html2/DomHTMLLIElement.java \ -gnu/xml/dom/html2/DomHTMLLinkElement.java \ -gnu/xml/dom/html2/DomHTMLMapElement.java \ -gnu/xml/dom/html2/DomHTMLMenuElement.java \ -gnu/xml/dom/html2/DomHTMLMetaElement.java \ -gnu/xml/dom/html2/DomHTMLModElement.java \ -gnu/xml/dom/html2/DomHTMLObjectElement.java \ -gnu/xml/dom/html2/DomHTMLOListElement.java \ -gnu/xml/dom/html2/DomHTMLOptGroupElement.java \ -gnu/xml/dom/html2/DomHTMLOptionElement.java \ -gnu/xml/dom/html2/DomHTMLParagraphElement.java \ -gnu/xml/dom/html2/DomHTMLParamElement.java \ -gnu/xml/dom/html2/DomHTMLParser.java \ -gnu/xml/dom/html2/DomHTMLPreElement.java \ -gnu/xml/dom/html2/DomHTMLQuoteElement.java \ -gnu/xml/dom/html2/DomHTMLScriptElement.java \ -gnu/xml/dom/html2/DomHTMLSelectElement.java \ -gnu/xml/dom/html2/DomHTMLStyleElement.java \ -gnu/xml/dom/html2/DomHTMLTableCaptionElement.java \ -gnu/xml/dom/html2/DomHTMLTableCellElement.java \ -gnu/xml/dom/html2/DomHTMLTableColElement.java \ -gnu/xml/dom/html2/DomHTMLTableElement.java \ -gnu/xml/dom/html2/DomHTMLTableRowElement.java \ -gnu/xml/dom/html2/DomHTMLTableSectionElement.java \ -gnu/xml/dom/html2/DomHTMLTextAreaElement.java \ -gnu/xml/dom/html2/DomHTMLTitleElement.java \ -gnu/xml/dom/html2/DomHTMLUListElement.java \ -gnu/xml/transform/GenerateIdFunction.java \ -gnu/xml/transform/FormatNumberFunction.java \ -gnu/xml/transform/ValueOfNode.java \ -gnu/xml/transform/ApplyImportsNode.java \ -gnu/xml/transform/WithParam.java \ -gnu/xml/transform/DocumentFunction.java \ -gnu/xml/transform/SAXSerializer.java \ -gnu/xml/transform/FunctionAvailableFunction.java \ -gnu/xml/transform/ElementAvailableFunction.java \ -gnu/xml/transform/IfNode.java \ -gnu/xml/transform/ApplyTemplatesNode.java \ -gnu/xml/transform/SortKey.java \ -gnu/xml/transform/Key.java \ -gnu/xml/transform/ElementNode.java \ -gnu/xml/transform/CurrentFunction.java \ -gnu/xml/transform/XSLComparator.java \ -gnu/xml/transform/CallTemplateNode.java \ -gnu/xml/transform/TemplatesImpl.java \ -gnu/xml/transform/ChooseNode.java \ -gnu/xml/transform/NumberNode.java \ -gnu/xml/transform/CopyOfNode.java \ -gnu/xml/transform/ParameterNode.java \ -gnu/xml/transform/TransformerFactoryImpl.java \ -gnu/xml/transform/TextNode.java \ -gnu/xml/transform/CopyNode.java \ -gnu/xml/transform/SystemPropertyFunction.java \ -gnu/xml/transform/Stylesheet.java \ -gnu/xml/transform/ProcessingInstructionNode.java \ -gnu/xml/transform/UnparsedEntityUriFunction.java \ -gnu/xml/transform/URIResolverEntityResolver.java \ -gnu/xml/transform/ErrorListenerErrorHandler.java \ -gnu/xml/transform/Bindings.java \ -gnu/xml/transform/AttributeSet.java \ -gnu/xml/transform/Template.java \ -gnu/xml/transform/MessageNode.java \ -gnu/xml/transform/LiteralNode.java \ -gnu/xml/transform/StreamSerializer.java \ -gnu/xml/transform/XSLURIResolver.java \ -gnu/xml/transform/AttributeNode.java \ -gnu/xml/transform/CommentNode.java \ -gnu/xml/transform/ForEachNode.java \ -gnu/xml/transform/KeyFunction.java \ -gnu/xml/transform/TransformerImpl.java \ -gnu/xml/transform/WhenNode.java \ -gnu/xml/transform/NodeNumberNode.java \ -gnu/xml/transform/OtherwiseNode.java \ -gnu/xml/transform/AbstractNumberNode.java \ -gnu/xml/transform/TemplateNode.java \ -gnu/xml/transform/TransformerOutputProperties.java \ -gnu/xml/transform/DOMSourceLocator.java - -built_java_source_files = java/lang/ConcreteProcess.java \ - gnu/classpath/Configuration.java - -core_java_source_files = \ -java/lang/AbstractMethodError.java \ -java/lang/ArithmeticException.java \ -java/lang/ArrayIndexOutOfBoundsException.java \ -java/lang/ArrayStoreException.java \ -java/lang/AssertionError.java \ -java/lang/Boolean.java \ -java/lang/Byte.java \ -java/lang/Character.java \ -java/lang/CharSequence.java \ -java/lang/ClassCastException.java \ -java/lang/ClassCircularityError.java \ -java/lang/ClassFormatError.java \ -java/lang/ClassLoader.java \ -java/lang/ClassNotFoundException.java \ -java/lang/CloneNotSupportedException.java \ -java/lang/Cloneable.java \ -java/lang/Comparable.java \ -java/lang/Compiler.java \ -java/lang/Double.java \ -java/lang/Error.java \ -java/lang/Exception.java \ -java/lang/ExceptionInInitializerError.java \ -java/lang/Float.java \ -java/lang/IllegalAccessError.java \ -java/lang/IllegalAccessException.java \ -java/lang/IllegalArgumentException.java \ -java/lang/IllegalMonitorStateException.java \ -java/lang/IllegalStateException.java \ -java/lang/IllegalThreadStateException.java \ -java/lang/IncompatibleClassChangeError.java \ -java/lang/IndexOutOfBoundsException.java \ -java/lang/InheritableThreadLocal.java \ -java/lang/InstantiationError.java \ -java/lang/InstantiationException.java \ -java/lang/Integer.java \ -java/lang/InternalError.java \ -java/lang/InterruptedException.java \ -java/lang/LinkageError.java \ -java/lang/Long.java \ -java/lang/Math.java \ -java/lang/NegativeArraySizeException.java \ -java/lang/NoClassDefFoundError.java \ -java/lang/NoSuchFieldError.java \ -java/lang/NoSuchFieldException.java \ -java/lang/NoSuchMethodError.java \ -java/lang/NoSuchMethodException.java \ -java/lang/NullPointerException.java \ -java/lang/Number.java \ -java/lang/NumberFormatException.java \ -java/lang/OutOfMemoryError.java \ -java/lang/Package.java \ -java/lang/Process.java \ -java/lang/Runnable.java \ -java/lang/Runtime.java \ -java/lang/RuntimeException.java \ -java/lang/RuntimePermission.java \ -java/lang/SecurityException.java \ -java/lang/SecurityManager.java \ -java/lang/Short.java \ -java/lang/StackOverflowError.java \ -java/lang/StackTraceElement.java \ -java/lang/StrictMath.java \ -java/lang/String.java \ -java/lang/StringBuffer.java \ -java/lang/StringBuilder.java \ -java/lang/StringIndexOutOfBoundsException.java \ -java/lang/System.java \ -java/lang/Thread.java \ -java/lang/ThreadDeath.java \ -java/lang/ThreadGroup.java \ -java/lang/ThreadLocal.java \ -java/lang/Throwable.java \ -java/lang/UnknownError.java \ -java/lang/UnsatisfiedLinkError.java \ -java/lang/UnsupportedClassVersionError.java \ -java/lang/UnsupportedOperationException.java \ -java/lang/VerifyError.java \ -java/lang/VirtualMachineError.java \ -java/lang/VMClassLoader.java \ -java/lang/VMCompiler.java \ -java/lang/VMSecurityManager.java \ -java/lang/VMThrowable.java \ -java/lang/Void.java \ -java/io/BufferedInputStream.java \ -java/io/BufferedOutputStream.java \ -java/io/BufferedReader.java \ -java/io/BufferedWriter.java \ -java/io/ByteArrayInputStream.java \ -java/io/ByteArrayOutputStream.java \ -java/io/CharArrayReader.java \ -java/io/CharArrayWriter.java \ -java/io/CharConversionException.java \ -java/io/DataInput.java \ -java/io/DataInputStream.java \ -java/io/DataOutput.java \ -java/io/DataOutputStream.java \ -java/io/EOFException.java \ -java/io/Externalizable.java \ -java/io/File.java \ -java/io/FileDescriptor.java \ -java/io/FileFilter.java \ -java/io/FileInputStream.java \ -java/io/FileNotFoundException.java \ -java/io/FileOutputStream.java \ -java/io/FilePermission.java \ -java/io/FileReader.java \ -java/io/FileWriter.java \ -java/io/FilenameFilter.java \ -java/io/FilterInputStream.java \ -java/io/FilterOutputStream.java \ -java/io/FilterReader.java \ -java/io/FilterWriter.java \ -java/io/IOException.java \ -java/io/InputStream.java \ -java/io/InputStreamReader.java \ -java/io/InterruptedIOException.java \ -java/io/InvalidClassException.java \ -java/io/InvalidObjectException.java \ -java/io/LineNumberInputStream.java \ -java/io/LineNumberReader.java \ -java/io/NotActiveException.java \ -java/io/NotSerializableException.java \ -java/io/ObjectInput.java \ -java/io/ObjectInputStream.java \ -java/io/ObjectInputValidation.java \ -java/io/ObjectOutput.java \ -java/io/ObjectOutputStream.java \ -java/io/ObjectStreamClass.java \ -java/io/ObjectStreamConstants.java \ -java/io/ObjectStreamException.java \ -java/io/ObjectStreamField.java \ -java/io/OptionalDataException.java \ -java/io/OutputStream.java \ -java/io/OutputStreamWriter.java \ -java/io/PipedInputStream.java \ -java/io/PipedOutputStream.java \ -java/io/PipedReader.java \ -java/io/PipedWriter.java \ -java/io/PrintStream.java \ -java/io/PrintWriter.java \ -java/io/PushbackInputStream.java \ -java/io/PushbackReader.java \ -java/io/RandomAccessFile.java \ -java/io/Reader.java \ -java/io/SequenceInputStream.java \ -java/io/Serializable.java \ -java/io/SerializablePermission.java \ -java/io/StreamCorruptedException.java \ -java/io/StreamTokenizer.java \ -java/io/StringBufferInputStream.java \ -java/io/StringReader.java \ -java/io/StringWriter.java \ -java/io/SyncFailedException.java \ -java/io/UTFDataFormatException.java \ -java/io/UnsupportedEncodingException.java \ -java/io/VMObjectStreamClass.java \ -java/io/WriteAbortedException.java \ -java/io/Writer.java \ -java/util/AbstractCollection.java \ -java/util/AbstractList.java \ -java/util/AbstractMap.java \ -java/util/AbstractSequentialList.java \ -java/util/AbstractSet.java \ -java/util/ArrayList.java \ -java/util/Arrays.java \ -java/util/BitSet.java \ -java/util/Calendar.java \ -java/util/Collection.java \ -java/util/Collections.java \ -java/util/Comparator.java \ -java/util/ConcurrentModificationException.java \ -java/util/Currency.java \ -java/util/Date.java \ -java/util/Dictionary.java \ -java/util/EmptyStackException.java \ -java/util/Enumeration.java \ -java/util/EventListener.java \ -java/util/EventListenerProxy.java \ -java/util/EventObject.java \ -java/util/GregorianCalendar.java \ -java/util/HashMap.java \ -java/util/HashSet.java \ -java/util/Hashtable.java \ -java/util/IdentityHashMap.java \ -java/util/Iterator.java \ -java/util/LinkedList.java \ -java/util/LinkedHashMap.java \ -java/util/LinkedHashSet.java \ -java/util/List.java \ -java/util/ListIterator.java \ -java/util/ListResourceBundle.java \ -java/util/Locale.java \ -java/util/Map.java \ -java/util/MissingResourceException.java \ -java/util/NoSuchElementException.java \ -java/util/Observable.java \ -java/util/Observer.java \ -java/util/Properties.java \ -java/util/PropertyPermission.java \ -java/util/PropertyPermissionCollection.java \ -java/util/PropertyResourceBundle.java \ -java/util/Random.java \ -java/util/RandomAccess.java \ -java/util/ResourceBundle.java \ -java/util/Set.java \ -java/util/SimpleTimeZone.java \ -java/util/SortedMap.java \ -java/util/SortedSet.java \ -java/util/Stack.java \ -java/util/StringTokenizer.java \ -java/util/TimeZone.java \ -java/util/Timer.java \ -java/util/TimerTask.java \ -java/util/TreeMap.java \ -java/util/TreeSet.java \ -java/util/TooManyListenersException.java \ -java/util/Vector.java \ -java/util/VMTimeZone.java \ -java/util/WeakHashMap.java \ -java/util/logging/ConsoleHandler.java \ -java/util/logging/ErrorManager.java \ -java/util/logging/FileHandler.java \ -java/util/logging/Filter.java \ -java/util/logging/Formatter.java \ -java/util/logging/Handler.java \ -java/util/logging/Level.java \ -java/util/logging/Logger.java \ -java/util/logging/LoggingPermission.java \ -java/util/logging/LogManager.java \ -java/util/logging/LogRecord.java \ -java/util/logging/MemoryHandler.java \ -java/util/logging/SimpleFormatter.java \ -java/util/logging/SocketHandler.java \ -java/util/logging/StreamHandler.java \ -java/util/logging/XMLFormatter.java \ -java/util/prefs/NodeChangeListener.java \ -java/util/prefs/Preferences.java \ -java/util/prefs/PreferenceChangeListener.java \ -java/util/prefs/NodeChangeEvent.java \ -java/util/prefs/InvalidPreferencesFormatException.java \ -java/util/prefs/AbstractPreferences.java \ -java/util/prefs/BackingStoreException.java \ -java/util/prefs/PreferenceChangeEvent.java \ -java/util/prefs/PreferencesFactory.java \ -java/util/regex/Matcher.java \ -java/util/regex/Pattern.java \ -java/util/regex/PatternSyntaxException.java - -ordinary_java_source_files = $(core_java_source_files) \ -gnu/classpath/ServiceFactory.java \ -gnu/classpath/ServiceProviderLoadingAction.java \ -gnu/classpath/SystemProperties.java \ -gnu/gcj/Core.java \ -gnu/gcj/RawData.java \ -gnu/gcj/RawDataManaged.java \ +gnu_gcj_convert_header_files = $(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_gcj_convert_source_files))) +gnu_gcj_io_source_files = \ gnu/gcj/io/DefaultMimeTypes.java \ gnu/gcj/io/MimeTypes.java \ -gnu/gcj/io/SimpleSHSStream.java \ +gnu/gcj/io/SimpleSHSStream.java + +gnu_gcj_io_header_files = $(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_gcj_io_source_files))) +gnu_gcj_runtime_source_files = \ gnu/gcj/runtime/BootClassLoader.java \ gnu/gcj/runtime/ExtensionClassLoader.java \ gnu/gcj/runtime/FileDeleter.java \ @@ -3030,21 +856,181 @@ gnu/gcj/runtime/PersistentByteMap.java \ gnu/gcj/runtime/SharedLibHelper.java \ gnu/gcj/runtime/SharedLibLoader.java \ gnu/gcj/runtime/StringBuffer.java \ -gnu/gcj/runtime/SystemClassLoader.java \ -gnu/gcj/util/Debug.java \ -gnu/java/io/ASN1ParsingException.java \ -gnu/java/io/Base64InputStream.java \ -gnu/java/io/ClassLoaderObjectInputStream.java \ -gnu/java/io/NullOutputStream.java \ -gnu/java/io/ObjectIdentityWrapper.java \ -gnu/java/lang/ArrayHelper.java \ -gnu/java/lang/ClassHelper.java \ -gnu/java/lang/MainThread.java \ -gnu/java/lang/reflect/TypeSignature.java \ +gnu/gcj/runtime/SystemClassLoader.java + +gnu_gcj_runtime_header_files = $(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_gcj_runtime_source_files))) +gnu_gcj_util_source_files = \ +gnu/gcj/util/Debug.java + +gnu_gcj_util_header_files = $(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_gcj_util_source_files))) +gnu_java_awt_source_files = \ +classpath/gnu/java/awt/AWTUtilities.java \ +classpath/gnu/java/awt/BitMaskExtent.java \ +classpath/gnu/java/awt/BitwiseXORComposite.java \ +classpath/gnu/java/awt/Buffers.java \ +classpath/gnu/java/awt/ClasspathToolkit.java \ +classpath/gnu/java/awt/ComponentDataBlitOp.java \ +classpath/gnu/java/awt/EmbeddedWindow.java \ +classpath/gnu/java/awt/EventModifier.java \ +classpath/gnu/java/awt/FocusManager.java \ +classpath/gnu/java/awt/GradientPaintContext.java + +gnu_java_awt_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_awt_source_files))) +gnu_java_awt_color_source_files = \ +classpath/gnu/java/awt/color/CieXyzConverter.java \ +classpath/gnu/java/awt/color/ClutProfileConverter.java \ +classpath/gnu/java/awt/color/ColorLookUpTable.java \ +classpath/gnu/java/awt/color/ColorSpaceConverter.java \ +classpath/gnu/java/awt/color/GrayProfileConverter.java \ +classpath/gnu/java/awt/color/GrayScaleConverter.java \ +classpath/gnu/java/awt/color/LinearRGBConverter.java \ +classpath/gnu/java/awt/color/ProfileHeader.java \ +classpath/gnu/java/awt/color/PyccConverter.java \ +classpath/gnu/java/awt/color/RgbProfileConverter.java \ +classpath/gnu/java/awt/color/SrgbConverter.java \ +classpath/gnu/java/awt/color/TagEntry.java \ +classpath/gnu/java/awt/color/ToneReproductionCurve.java + +gnu_java_awt_color_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_awt_color_source_files))) +gnu_java_awt_image_source_files = \ +classpath/gnu/java/awt/image/ImageDecoder.java \ +classpath/gnu/java/awt/image/XBMDecoder.java + +gnu_java_awt_image_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_awt_image_source_files))) +gnu_java_awt_peer_source_files = \ +classpath/gnu/java/awt/peer/ClasspathFontPeer.java \ +classpath/gnu/java/awt/peer/ClasspathTextLayoutPeer.java \ +classpath/gnu/java/awt/peer/EmbeddedWindowPeer.java \ +classpath/gnu/java/awt/peer/GLightweightPeer.java + +gnu_java_awt_peer_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_awt_peer_source_files))) +gnu_java_awt_peer_gtk_source_files = \ +classpath/gnu/java/awt/peer/gtk/GThreadMutex.java \ +classpath/gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java \ +classpath/gnu/java/awt/peer/gtk/GdkFontMetrics.java \ +classpath/gnu/java/awt/peer/gtk/GdkFontPeer.java \ +classpath/gnu/java/awt/peer/gtk/GdkGlyphVector.java \ +classpath/gnu/java/awt/peer/gtk/GdkGraphics.java \ +classpath/gnu/java/awt/peer/gtk/GdkGraphics2D.java \ +classpath/gnu/java/awt/peer/gtk/GdkGraphicsConfiguration.java \ +classpath/gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java \ +classpath/gnu/java/awt/peer/gtk/GdkPixbufDecoder.java \ +classpath/gnu/java/awt/peer/gtk/GdkRobotPeer.java \ +classpath/gnu/java/awt/peer/gtk/GdkScreenGraphicsDevice.java \ +classpath/gnu/java/awt/peer/gtk/GdkTextLayout.java \ +classpath/gnu/java/awt/peer/gtk/GtkButtonPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkCanvasPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkCheckboxPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkChoicePeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkClipboard.java \ +classpath/gnu/java/awt/peer/gtk/GtkComponentPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkContainerPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkDialogPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkFontPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkFramePeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkGenericPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkImage.java \ +classpath/gnu/java/awt/peer/gtk/GtkImageConsumer.java \ +classpath/gnu/java/awt/peer/gtk/GtkLabelPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkListPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkMenuBarPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkMenuItemPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkMenuPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkPanelPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkScrollPanePeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkScrollbarPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkTextAreaPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkTextFieldPeer.java \ +classpath/gnu/java/awt/peer/gtk/GtkToolkit.java \ +classpath/gnu/java/awt/peer/gtk/GtkVolatileImage.java \ +classpath/gnu/java/awt/peer/gtk/GtkWindowPeer.java + +gnu_java_beans_source_files = \ +classpath/gnu/java/beans/BeanInfoEmbryo.java \ +classpath/gnu/java/beans/DummyAppletContext.java \ +classpath/gnu/java/beans/DummyAppletStub.java \ +classpath/gnu/java/beans/ExplicitBeanInfo.java \ +classpath/gnu/java/beans/IntrospectionIncubator.java \ +classpath/gnu/java/beans/decoder/AbstractContext.java \ +classpath/gnu/java/beans/decoder/AbstractCreatableObjectContext.java \ +classpath/gnu/java/beans/decoder/AbstractElementHandler.java \ +classpath/gnu/java/beans/decoder/AbstractObjectContext.java \ +classpath/gnu/java/beans/decoder/ArrayContext.java \ +classpath/gnu/java/beans/decoder/ArrayHandler.java \ +classpath/gnu/java/beans/decoder/AssemblyException.java \ +classpath/gnu/java/beans/decoder/BooleanHandler.java \ +classpath/gnu/java/beans/decoder/ByteHandler.java \ +classpath/gnu/java/beans/decoder/CharHandler.java \ +classpath/gnu/java/beans/decoder/ClassHandler.java \ +classpath/gnu/java/beans/decoder/ConstructorContext.java \ +classpath/gnu/java/beans/decoder/Context.java \ +classpath/gnu/java/beans/decoder/DecoderContext.java \ +classpath/gnu/java/beans/decoder/DefaultExceptionListener.java \ +classpath/gnu/java/beans/decoder/DoubleHandler.java \ +classpath/gnu/java/beans/decoder/DummyContext.java \ +classpath/gnu/java/beans/decoder/DummyHandler.java \ +classpath/gnu/java/beans/decoder/ElementHandler.java \ +classpath/gnu/java/beans/decoder/FloatHandler.java \ +classpath/gnu/java/beans/decoder/GrowableArrayContext.java \ +classpath/gnu/java/beans/decoder/IndexContext.java \ +classpath/gnu/java/beans/decoder/IntHandler.java \ +classpath/gnu/java/beans/decoder/JavaHandler.java \ +classpath/gnu/java/beans/decoder/LongHandler.java \ +classpath/gnu/java/beans/decoder/MethodContext.java \ +classpath/gnu/java/beans/decoder/MethodFinder.java \ +classpath/gnu/java/beans/decoder/NullHandler.java \ +classpath/gnu/java/beans/decoder/ObjectContext.java \ +classpath/gnu/java/beans/decoder/ObjectHandler.java \ +classpath/gnu/java/beans/decoder/PersistenceParser.java \ +classpath/gnu/java/beans/decoder/PropertyContext.java \ +classpath/gnu/java/beans/decoder/ShortHandler.java \ +classpath/gnu/java/beans/decoder/SimpleHandler.java \ +classpath/gnu/java/beans/decoder/StaticMethodContext.java \ +classpath/gnu/java/beans/decoder/StringHandler.java \ +classpath/gnu/java/beans/decoder/VoidHandler.java \ +classpath/gnu/java/beans/editors/ColorEditor.java \ +classpath/gnu/java/beans/editors/FontEditor.java \ +classpath/gnu/java/beans/editors/NativeBooleanEditor.java \ +classpath/gnu/java/beans/editors/NativeByteEditor.java \ +classpath/gnu/java/beans/editors/NativeDoubleEditor.java \ +classpath/gnu/java/beans/editors/NativeFloatEditor.java \ +classpath/gnu/java/beans/editors/NativeIntEditor.java \ +classpath/gnu/java/beans/editors/NativeLongEditor.java \ +classpath/gnu/java/beans/editors/NativeShortEditor.java \ +classpath/gnu/java/beans/editors/StringEditor.java + +gnu_java_io_source_files = \ +classpath/gnu/java/io/ASN1ParsingException.java \ +classpath/gnu/java/io/Base64InputStream.java \ +classpath/gnu/java/io/ClassLoaderObjectInputStream.java \ +classpath/gnu/java/io/NullOutputStream.java \ +classpath/gnu/java/io/ObjectIdentityWrapper.java \ +classpath/gnu/java/io/PlatformHelper.java + +gnu_java_io_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_io_source_files))) +gnu_java_lang_source_files = \ +classpath/gnu/java/lang/ArrayHelper.java \ +classpath/gnu/java/lang/CharData.java \ +classpath/gnu/java/lang/ClassHelper.java \ +gnu/java/lang/MainThread.java + +gnu_java_lang_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_java_lang_source_files)))) +gnu_java_lang_reflect_source_files = \ +classpath/gnu/java/lang/reflect/TypeSignature.java + +gnu_java_lang_reflect_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_lang_reflect_source_files))) +gnu_java_locale_source_files = \ gnu/java/locale/Calendar.java \ gnu/java/locale/Calendar_de.java \ gnu/java/locale/Calendar_en.java \ gnu/java/locale/Calendar_nl.java \ +classpath/gnu/java/locale/LocaleHelper.java \ gnu/java/locale/LocaleInformation.java \ gnu/java/locale/LocaleInformation_af_ZA.java \ gnu/java/locale/LocaleInformation_ar_AE.java \ @@ -3179,598 +1165,3479 @@ gnu/java/locale/LocaleInformation_yi_US.java \ gnu/java/locale/LocaleInformation_zh_CN.java \ gnu/java/locale/LocaleInformation_zh_HK.java \ gnu/java/locale/LocaleInformation_zh_SG.java \ -gnu/java/locale/LocaleInformation_zh_TW.java \ -gnu/java/math/MPN.java \ -gnu/java/net/BASE64.java \ -gnu/java/net/CRLFInputStream.java \ -gnu/java/net/CRLFOutputStream.java \ +gnu/java/locale/LocaleInformation_zh_TW.java + +gnu_java_locale_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_java_locale_source_files)))) +gnu_java_math_source_files = \ +classpath/gnu/java/math/MPN.java + +gnu_java_math_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_math_source_files))) +gnu_java_net_source_files = \ +classpath/gnu/java/net/BASE64.java \ +classpath/gnu/java/net/CRLFInputStream.java \ +classpath/gnu/java/net/CRLFOutputStream.java \ gnu/java/net/DefaultContentHandlerFactory.java \ -gnu/java/net/EmptyX509TrustManager.java \ -gnu/java/net/GetLocalHostAction.java \ -gnu/java/net/HeaderFieldHelper.java \ -gnu/java/net/LineInputStream.java \ +classpath/gnu/java/net/EmptyX509TrustManager.java \ +classpath/gnu/java/net/GetLocalHostAction.java \ +classpath/gnu/java/net/HeaderFieldHelper.java \ +classpath/gnu/java/net/LineInputStream.java \ gnu/java/net/PlainDatagramSocketImpl.java \ gnu/java/net/PlainSocketImpl.java \ -gnu/java/net/URLParseError.java \ +classpath/gnu/java/net/URLParseError.java \ gnu/java/net/protocol/core/Connection.java \ gnu/java/net/protocol/core/CoreInputStream.java \ gnu/java/net/protocol/core/Handler.java \ -gnu/java/net/protocol/file/Connection.java \ -gnu/java/net/protocol/file/Handler.java \ -gnu/java/net/protocol/ftp/ActiveModeDTP.java \ -gnu/java/net/protocol/ftp/BlockInputStream.java \ -gnu/java/net/protocol/ftp/BlockOutputStream.java \ -gnu/java/net/protocol/ftp/CompressedInputStream.java \ -gnu/java/net/protocol/ftp/CompressedOutputStream.java \ -gnu/java/net/protocol/ftp/DTP.java \ -gnu/java/net/protocol/ftp/DTPInputStream.java \ -gnu/java/net/protocol/ftp/DTPOutputStream.java \ -gnu/java/net/protocol/ftp/FTPConnection.java \ -gnu/java/net/protocol/ftp/FTPException.java \ -gnu/java/net/protocol/ftp/FTPResponse.java \ -gnu/java/net/protocol/ftp/FTPURLConnection.java \ -gnu/java/net/protocol/ftp/Handler.java \ -gnu/java/net/protocol/ftp/PassiveModeDTP.java \ -gnu/java/net/protocol/ftp/StreamInputStream.java \ -gnu/java/net/protocol/ftp/StreamOutputStream.java \ gnu/java/net/protocol/gcjlib/Connection.java \ -gnu/java/net/protocol/gcjlib/Handler.java \ -gnu/java/net/protocol/http/Authenticator.java \ -gnu/java/net/protocol/http/ByteArrayRequestBodyWriter.java \ -gnu/java/net/protocol/http/ByteArrayResponseBodyReader.java \ -gnu/java/net/protocol/http/ChunkedInputStream.java \ -gnu/java/net/protocol/http/Cookie.java \ -gnu/java/net/protocol/http/CookieManager.java \ -gnu/java/net/protocol/http/Credentials.java \ -gnu/java/net/protocol/http/HTTPConnection.java \ -gnu/java/net/protocol/http/HTTPDateFormat.java \ -gnu/java/net/protocol/http/HTTPURLConnection.java \ -gnu/java/net/protocol/http/Handler.java \ -gnu/java/net/protocol/http/Headers.java \ -gnu/java/net/protocol/http/Request.java \ -gnu/java/net/protocol/http/RequestBodyWriter.java \ -gnu/java/net/protocol/http/Response.java \ -gnu/java/net/protocol/http/ResponseBodyReader.java \ -gnu/java/net/protocol/http/ResponseHeaderHandler.java \ -gnu/java/net/protocol/http/SimpleCookieManager.java \ -gnu/java/net/protocol/http/event/ConnectionEvent.java \ -gnu/java/net/protocol/http/event/ConnectionListener.java \ -gnu/java/net/protocol/http/event/RequestEvent.java \ -gnu/java/net/protocol/http/event/RequestListener.java \ -gnu/java/net/protocol/https/Handler.java \ +gnu/java/net/protocol/gcjlib/Handler.java + +gnu_java_net_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_java_net_source_files)))) +gnu_java_net_protocol_file_source_files = \ +gnu/java/net/protocol/file/Connection.java \ +gnu/java/net/protocol/file/Handler.java + +gnu_java_net_protocol_file_header_files = $(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_java_net_protocol_file_source_files))) +gnu_java_net_protocol_ftp_source_files = \ +classpath/gnu/java/net/protocol/ftp/ActiveModeDTP.java \ +classpath/gnu/java/net/protocol/ftp/BlockInputStream.java \ +classpath/gnu/java/net/protocol/ftp/BlockOutputStream.java \ +classpath/gnu/java/net/protocol/ftp/CompressedInputStream.java \ +classpath/gnu/java/net/protocol/ftp/CompressedOutputStream.java \ +classpath/gnu/java/net/protocol/ftp/DTP.java \ +classpath/gnu/java/net/protocol/ftp/DTPInputStream.java \ +classpath/gnu/java/net/protocol/ftp/DTPOutputStream.java \ +classpath/gnu/java/net/protocol/ftp/FTPConnection.java \ +classpath/gnu/java/net/protocol/ftp/FTPException.java \ +classpath/gnu/java/net/protocol/ftp/FTPResponse.java \ +classpath/gnu/java/net/protocol/ftp/FTPURLConnection.java \ +classpath/gnu/java/net/protocol/ftp/Handler.java \ +classpath/gnu/java/net/protocol/ftp/PassiveModeDTP.java \ +classpath/gnu/java/net/protocol/ftp/StreamInputStream.java \ +classpath/gnu/java/net/protocol/ftp/StreamOutputStream.java + +gnu_java_net_protocol_ftp_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_net_protocol_ftp_source_files))) +gnu_java_net_protocol_http_source_files = \ +classpath/gnu/java/net/protocol/http/Authenticator.java \ +classpath/gnu/java/net/protocol/http/ByteArrayRequestBodyWriter.java \ +classpath/gnu/java/net/protocol/http/ByteArrayResponseBodyReader.java \ +classpath/gnu/java/net/protocol/http/ChunkedInputStream.java \ +classpath/gnu/java/net/protocol/http/Cookie.java \ +classpath/gnu/java/net/protocol/http/CookieManager.java \ +classpath/gnu/java/net/protocol/http/Credentials.java \ +classpath/gnu/java/net/protocol/http/HTTPConnection.java \ +classpath/gnu/java/net/protocol/http/HTTPDateFormat.java \ +classpath/gnu/java/net/protocol/http/HTTPURLConnection.java \ +classpath/gnu/java/net/protocol/http/Handler.java \ +classpath/gnu/java/net/protocol/http/Headers.java \ +classpath/gnu/java/net/protocol/http/Request.java \ +classpath/gnu/java/net/protocol/http/RequestBodyWriter.java \ +classpath/gnu/java/net/protocol/http/Response.java \ +classpath/gnu/java/net/protocol/http/ResponseBodyReader.java \ +classpath/gnu/java/net/protocol/http/ResponseHeaderHandler.java \ +classpath/gnu/java/net/protocol/http/SimpleCookieManager.java + +gnu_java_net_protocol_http_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_net_protocol_http_source_files))) +gnu_java_net_protocol_http_event_source_files = \ +classpath/gnu/java/net/protocol/http/event/ConnectionEvent.java \ +classpath/gnu/java/net/protocol/http/event/ConnectionListener.java \ +classpath/gnu/java/net/protocol/http/event/RequestEvent.java \ +classpath/gnu/java/net/protocol/http/event/RequestListener.java + +gnu_java_net_protocol_http_event_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_net_protocol_http_event_source_files))) +gnu_java_net_protocol_https_source_files = \ +classpath/gnu/java/net/protocol/https/Handler.java + +gnu_java_net_protocol_https_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_net_protocol_https_source_files))) +gnu_java_net_protocol_jar_source_files = \ gnu/java/net/protocol/jar/Connection.java \ -gnu/java/net/protocol/jar/Handler.java \ -gnu/java/nio/ChannelInputStream.java \ -gnu/java/nio/ChannelOutputStream.java \ -gnu/java/nio/ChannelReader.java \ +classpath/gnu/java/net/protocol/jar/Handler.java + +gnu_java_net_protocol_jar_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_java_net_protocol_jar_source_files)))) +gnu_java_nio_source_files = \ +classpath/gnu/java/nio/ChannelInputStream.java \ +classpath/gnu/java/nio/ChannelOutputStream.java \ +classpath/gnu/java/nio/ChannelReader.java \ gnu/java/nio/DatagramChannelImpl.java \ gnu/java/nio/DatagramChannelSelectionKey.java \ -gnu/java/nio/FileLockImpl.java \ -gnu/java/nio/InputStreamChannel.java \ -gnu/java/nio/NIOConstants.java \ -gnu/java/nio/NIODatagramSocket.java \ +classpath/gnu/java/nio/FileLockImpl.java \ +classpath/gnu/java/nio/InputStreamChannel.java \ +classpath/gnu/java/nio/NIOConstants.java \ +classpath/gnu/java/nio/NIODatagramSocket.java \ gnu/java/nio/NIOServerSocket.java \ -gnu/java/nio/NIOSocket.java \ -gnu/java/nio/OutputStreamChannel.java \ -gnu/java/nio/PipeImpl.java \ -gnu/java/nio/SelectionKeyImpl.java \ -gnu/java/nio/SelectorImpl.java \ -gnu/java/nio/SelectorProviderImpl.java \ +classpath/gnu/java/nio/NIOSocket.java \ +classpath/gnu/java/nio/OutputStreamChannel.java \ +classpath/gnu/java/nio/PipeImpl.java \ +classpath/gnu/java/nio/SelectionKeyImpl.java \ +classpath/gnu/java/nio/SelectorImpl.java \ +classpath/gnu/java/nio/SelectorProviderImpl.java \ gnu/java/nio/ServerSocketChannelImpl.java \ gnu/java/nio/ServerSocketChannelSelectionKey.java \ gnu/java/nio/SocketChannelImpl.java \ gnu/java/nio/SocketChannelSelectionKey.java \ gnu/java/nio/VMPipe.java \ -gnu/java/nio/VMSelector.java \ -gnu/java/nio/channels/FileChannelImpl.java \ -gnu/java/nio/charset/ISO_8859_1.java \ +gnu/java/nio/VMSelector.java + +gnu_java_nio_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_java_nio_source_files)))) +gnu_java_nio_channels_source_files = \ +gnu/java/nio/channels/FileChannelImpl.java + +gnu_java_nio_channels_header_files = $(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_java_nio_channels_source_files))) +gnu_java_nio_charset_source_files = \ +classpath/gnu/java/nio/charset/ByteCharset.java \ +classpath/gnu/java/nio/charset/Cp424.java \ +classpath/gnu/java/nio/charset/Cp437.java \ +classpath/gnu/java/nio/charset/Cp737.java \ +classpath/gnu/java/nio/charset/Cp775.java \ +classpath/gnu/java/nio/charset/Cp850.java \ +classpath/gnu/java/nio/charset/Cp852.java \ +classpath/gnu/java/nio/charset/Cp855.java \ +classpath/gnu/java/nio/charset/Cp857.java \ +classpath/gnu/java/nio/charset/Cp860.java \ +classpath/gnu/java/nio/charset/Cp861.java \ +classpath/gnu/java/nio/charset/Cp862.java \ +classpath/gnu/java/nio/charset/Cp863.java \ +classpath/gnu/java/nio/charset/Cp864.java \ +classpath/gnu/java/nio/charset/Cp865.java \ +classpath/gnu/java/nio/charset/Cp866.java \ +classpath/gnu/java/nio/charset/Cp869.java \ +classpath/gnu/java/nio/charset/Cp874.java \ +classpath/gnu/java/nio/charset/EncodingHelper.java \ +classpath/gnu/java/nio/charset/ISO_8859_1.java \ +classpath/gnu/java/nio/charset/ISO_8859_13.java \ +classpath/gnu/java/nio/charset/ISO_8859_15.java \ +classpath/gnu/java/nio/charset/ISO_8859_2.java \ +classpath/gnu/java/nio/charset/ISO_8859_3.java \ +classpath/gnu/java/nio/charset/ISO_8859_4.java \ +classpath/gnu/java/nio/charset/ISO_8859_5.java \ +classpath/gnu/java/nio/charset/ISO_8859_6.java \ +classpath/gnu/java/nio/charset/ISO_8859_7.java \ +classpath/gnu/java/nio/charset/ISO_8859_8.java \ +classpath/gnu/java/nio/charset/ISO_8859_9.java \ +classpath/gnu/java/nio/charset/KOI_8.java \ +classpath/gnu/java/nio/charset/MS874.java \ +classpath/gnu/java/nio/charset/MacCentralEurope.java \ +classpath/gnu/java/nio/charset/MacCroatian.java \ +classpath/gnu/java/nio/charset/MacCyrillic.java \ +classpath/gnu/java/nio/charset/MacDingbat.java \ +classpath/gnu/java/nio/charset/MacGreek.java \ +classpath/gnu/java/nio/charset/MacIceland.java \ +classpath/gnu/java/nio/charset/MacRoman.java \ +classpath/gnu/java/nio/charset/MacRomania.java \ +classpath/gnu/java/nio/charset/MacSymbol.java \ +classpath/gnu/java/nio/charset/MacThai.java \ +classpath/gnu/java/nio/charset/MacTurkish.java \ gnu/java/nio/charset/Provider.java \ -gnu/java/nio/charset/US_ASCII.java \ -gnu/java/nio/charset/UTF_16.java \ -gnu/java/nio/charset/UTF_16BE.java \ -gnu/java/nio/charset/UTF_16Decoder.java \ -gnu/java/nio/charset/UTF_16Encoder.java \ -gnu/java/nio/charset/UTF_16LE.java \ -gnu/java/nio/charset/UTF_8.java \ -gnu/java/security/Engine.java \ -gnu/java/security/OID.java \ -gnu/java/security/PolicyFile.java \ -gnu/java/security/action/GetPropertyAction.java \ -gnu/java/security/action/GetSecurityPropertyAction.java \ -gnu/java/security/action/SetAccessibleAction.java \ -gnu/java/security/ber/BER.java \ -gnu/java/security/ber/BEREncodingException.java \ -gnu/java/security/ber/BERReader.java \ -gnu/java/security/ber/BERValue.java \ -gnu/java/security/der/BitString.java \ -gnu/java/security/der/DER.java \ -gnu/java/security/der/DEREncodingException.java \ -gnu/java/security/der/DERReader.java \ -gnu/java/security/der/DERValue.java \ -gnu/java/security/der/DERWriter.java \ -gnu/java/security/pkcs/PKCS7SignedData.java \ -gnu/java/security/pkcs/SignerInfo.java \ -gnu/java/security/provider/CollectionCertStoreImpl.java \ -gnu/java/security/provider/DSAKeyFactory.java \ -gnu/java/security/provider/DSAKeyPairGenerator.java \ -gnu/java/security/provider/DSAParameterGenerator.java \ -gnu/java/security/provider/DSAParameters.java \ -gnu/java/security/provider/DSASignature.java \ -gnu/java/security/provider/DefaultPolicy.java \ -gnu/java/security/provider/EncodedKeyFactory.java \ -gnu/java/security/provider/Gnu.java \ -gnu/java/security/provider/GnuDHPublicKey.java \ -gnu/java/security/provider/GnuDSAPrivateKey.java \ -gnu/java/security/provider/GnuDSAPublicKey.java \ -gnu/java/security/provider/GnuRSAPrivateKey.java \ -gnu/java/security/provider/GnuRSAPublicKey.java \ -gnu/java/security/provider/MD2withRSA.java \ -gnu/java/security/provider/MD4withRSA.java \ -gnu/java/security/provider/MD5.java \ -gnu/java/security/provider/MD5withRSA.java \ -gnu/java/security/provider/PKIXCertPathValidatorImpl.java \ -gnu/java/security/provider/RSA.java \ -gnu/java/security/provider/RSAKeyFactory.java \ -gnu/java/security/provider/SHA.java \ -gnu/java/security/provider/SHA1PRNG.java \ -gnu/java/security/provider/SHA1withRSA.java \ -gnu/java/security/provider/X509CertificateFactory.java \ -gnu/java/security/util/Prime.java \ -gnu/java/security/x509/GnuPKIExtension.java \ -gnu/java/security/x509/PolicyNodeImpl.java \ -gnu/java/security/x509/Util.java \ -gnu/java/security/x509/X500DistinguishedName.java \ -gnu/java/security/x509/X509CRL.java \ -gnu/java/security/x509/X509CRLEntry.java \ -gnu/java/security/x509/X509CRLSelectorImpl.java \ -gnu/java/security/x509/X509Certificate.java \ -gnu/java/security/x509/X509CertPath.java \ -gnu/java/security/x509/X509CertSelectorImpl.java \ -gnu/java/security/x509/ext/AuthorityKeyIdentifier.java \ -gnu/java/security/x509/ext/BasicConstraints.java \ -gnu/java/security/x509/ext/CRLNumber.java \ -gnu/java/security/x509/ext/CertificatePolicies.java \ -gnu/java/security/x509/ext/ExtendedKeyUsage.java \ -gnu/java/security/x509/ext/Extension.java \ -gnu/java/security/x509/ext/GeneralNames.java \ -gnu/java/security/x509/ext/IssuerAlternativeNames.java \ -gnu/java/security/x509/ext/KeyUsage.java \ -gnu/java/security/x509/ext/PolicyConstraint.java \ -gnu/java/security/x509/ext/PolicyMappings.java \ -gnu/java/security/x509/ext/PrivateKeyUsagePeriod.java \ -gnu/java/security/x509/ext/ReasonCode.java \ -gnu/java/security/x509/ext/SubjectAlternativeNames.java \ -gnu/java/security/x509/ext/SubjectKeyIdentifier.java \ -gnu/java/text/AttributedFormatBuffer.java \ -gnu/java/text/BaseBreakIterator.java \ -gnu/java/text/CharacterBreakIterator.java \ -gnu/java/text/FormatBuffer.java \ -gnu/java/text/FormatCharacterIterator.java \ -gnu/java/text/LineBreakIterator.java \ -gnu/java/text/SentenceBreakIterator.java \ -gnu/java/text/StringFormatBuffer.java \ -gnu/java/text/WordBreakIterator.java \ -gnu/java/util/DoubleEnumeration.java \ -gnu/java/util/EmptyEnumeration.java \ -gnu/java/util/prefs/FileBasedFactory.java \ -gnu/java/util/prefs/MemoryBasedFactory.java \ -gnu/java/util/prefs/MemoryBasedPreferences.java \ -gnu/java/util/prefs/NodeReader.java \ -gnu/java/util/prefs/NodeWriter.java \ -gnu/regexp/CharIndexed.java \ -gnu/regexp/CharIndexedCharArray.java \ -gnu/regexp/CharIndexedInputStream.java \ -gnu/regexp/CharIndexedString.java \ -gnu/regexp/CharIndexedStringBuffer.java \ -gnu/regexp/RE.java \ -gnu/regexp/REException.java \ -gnu/regexp/REFilterInputStream.java \ -gnu/regexp/REMatch.java \ -gnu/regexp/REMatchEnumeration.java \ -gnu/regexp/RESyntax.java \ -gnu/regexp/REToken.java \ -gnu/regexp/RETokenAny.java \ -gnu/regexp/RETokenBackRef.java \ -gnu/regexp/RETokenChar.java \ -gnu/regexp/RETokenEnd.java \ -gnu/regexp/RETokenEndSub.java \ -gnu/regexp/RETokenLookAhead.java \ -gnu/regexp/RETokenOneOf.java \ -gnu/regexp/RETokenPOSIX.java \ -gnu/regexp/RETokenRange.java \ -gnu/regexp/RETokenRepeated.java \ -gnu/regexp/RETokenStart.java \ -gnu/regexp/RETokenWordBoundary.java \ -gnu/regexp/UncheckedRE.java \ -java/lang/ref/PhantomReference.java \ +classpath/gnu/java/nio/charset/US_ASCII.java \ +classpath/gnu/java/nio/charset/UTF_16.java \ +classpath/gnu/java/nio/charset/UTF_16BE.java \ +classpath/gnu/java/nio/charset/UTF_16Decoder.java \ +classpath/gnu/java/nio/charset/UTF_16Encoder.java \ +classpath/gnu/java/nio/charset/UTF_16LE.java \ +classpath/gnu/java/nio/charset/UTF_8.java \ +classpath/gnu/java/nio/charset/UnicodeLittle.java \ +classpath/gnu/java/nio/charset/Windows1250.java \ +classpath/gnu/java/nio/charset/Windows1251.java \ +classpath/gnu/java/nio/charset/Windows1252.java \ +classpath/gnu/java/nio/charset/Windows1253.java \ +classpath/gnu/java/nio/charset/Windows1254.java \ +classpath/gnu/java/nio/charset/Windows1255.java \ +classpath/gnu/java/nio/charset/Windows1256.java \ +classpath/gnu/java/nio/charset/Windows1257.java \ +classpath/gnu/java/nio/charset/Windows1258.java + +gnu_java_nio_charset_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_java_nio_charset_source_files)))) +gnu_java_rmi_source_files = \ +classpath/gnu/java/rmi/RMIMarshalledObjectInputStream.java \ +classpath/gnu/java/rmi/RMIMarshalledObjectOutputStream.java \ +gnu/java/rmi/rmic/Compile_gcj.java \ +gnu/java/rmi/rmic/Compile_jikes.java \ +gnu/java/rmi/rmic/Compile_kjc.java \ +gnu/java/rmi/rmic/Compiler.java \ +gnu/java/rmi/rmic/CompilerProcess.java \ +gnu/java/rmi/rmic/RMIC.java \ +gnu/java/rmi/rmic/RMICException.java \ +gnu/java/rmi/rmic/TabbedWriter.java + +gnu_java_rmi_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(gnu_java_rmi_source_files)))) +gnu_java_rmi_dgc_source_files = \ +classpath/gnu/java/rmi/dgc/DGCImpl.java \ +classpath/gnu/java/rmi/dgc/DGCImpl_Skel.java \ +classpath/gnu/java/rmi/dgc/DGCImpl_Stub.java + +gnu_java_rmi_dgc_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_rmi_dgc_source_files))) +gnu_java_rmi_registry_source_files = \ +classpath/gnu/java/rmi/registry/RegistryImpl.java \ +classpath/gnu/java/rmi/registry/RegistryImpl_Skel.java \ +classpath/gnu/java/rmi/registry/RegistryImpl_Stub.java + +gnu_java_rmi_registry_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_rmi_registry_source_files))) +gnu_java_rmi_server_source_files = \ +classpath/gnu/java/rmi/server/ConnectionRunnerPool.java \ +classpath/gnu/java/rmi/server/ProtocolConstants.java \ +classpath/gnu/java/rmi/server/RMIDefaultSocketFactory.java \ +classpath/gnu/java/rmi/server/RMIHashes.java \ +classpath/gnu/java/rmi/server/RMIIncomingThread.java \ +classpath/gnu/java/rmi/server/RMIObjectInputStream.java \ +classpath/gnu/java/rmi/server/RMIObjectOutputStream.java \ +classpath/gnu/java/rmi/server/RMIVoidValue.java \ +classpath/gnu/java/rmi/server/UnicastConnection.java \ +classpath/gnu/java/rmi/server/UnicastConnectionManager.java \ +classpath/gnu/java/rmi/server/UnicastRef.java \ +classpath/gnu/java/rmi/server/UnicastRemoteCall.java \ +classpath/gnu/java/rmi/server/UnicastRemoteStub.java \ +classpath/gnu/java/rmi/server/UnicastServer.java \ +classpath/gnu/java/rmi/server/UnicastServerRef.java + +gnu_java_rmi_server_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_rmi_server_source_files))) +gnu_java_security_source_files = \ +classpath/gnu/java/security/Engine.java \ +classpath/gnu/java/security/OID.java \ +classpath/gnu/java/security/PolicyFile.java + +gnu_java_security_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_security_source_files))) +gnu_java_security_action_source_files = \ +classpath/gnu/java/security/action/GetPropertyAction.java \ +classpath/gnu/java/security/action/GetSecurityPropertyAction.java \ +classpath/gnu/java/security/action/SetAccessibleAction.java + +gnu_java_security_action_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_security_action_source_files))) +gnu_java_security_ber_source_files = \ +classpath/gnu/java/security/ber/BER.java \ +classpath/gnu/java/security/ber/BEREncodingException.java \ +classpath/gnu/java/security/ber/BERReader.java \ +classpath/gnu/java/security/ber/BERValue.java + +gnu_java_security_ber_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_security_ber_source_files))) +gnu_java_security_der_source_files = \ +classpath/gnu/java/security/der/BitString.java \ +classpath/gnu/java/security/der/DER.java \ +classpath/gnu/java/security/der/DEREncodingException.java \ +classpath/gnu/java/security/der/DERReader.java \ +classpath/gnu/java/security/der/DERValue.java \ +classpath/gnu/java/security/der/DERWriter.java + +gnu_java_security_der_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_security_der_source_files))) +gnu_java_security_pkcs_source_files = \ +classpath/gnu/java/security/pkcs/PKCS7SignedData.java \ +classpath/gnu/java/security/pkcs/SignerInfo.java + +gnu_java_security_pkcs_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_security_pkcs_source_files))) +gnu_java_security_provider_source_files = \ +classpath/gnu/java/security/provider/CollectionCertStoreImpl.java \ +classpath/gnu/java/security/provider/DSAKeyFactory.java \ +classpath/gnu/java/security/provider/DSAKeyPairGenerator.java \ +classpath/gnu/java/security/provider/DSAParameterGenerator.java \ +classpath/gnu/java/security/provider/DSAParameters.java \ +classpath/gnu/java/security/provider/DSASignature.java \ +classpath/gnu/java/security/provider/DefaultPolicy.java \ +classpath/gnu/java/security/provider/EncodedKeyFactory.java \ +classpath/gnu/java/security/provider/Gnu.java \ +classpath/gnu/java/security/provider/GnuDHPublicKey.java \ +classpath/gnu/java/security/provider/GnuDSAPrivateKey.java \ +classpath/gnu/java/security/provider/GnuDSAPublicKey.java \ +classpath/gnu/java/security/provider/GnuRSAPrivateKey.java \ +classpath/gnu/java/security/provider/GnuRSAPublicKey.java \ +classpath/gnu/java/security/provider/MD2withRSA.java \ +classpath/gnu/java/security/provider/MD4withRSA.java \ +classpath/gnu/java/security/provider/MD5.java \ +classpath/gnu/java/security/provider/MD5withRSA.java \ +classpath/gnu/java/security/provider/PKIXCertPathValidatorImpl.java \ +classpath/gnu/java/security/provider/RSA.java \ +classpath/gnu/java/security/provider/RSAKeyFactory.java \ +classpath/gnu/java/security/provider/SHA.java \ +classpath/gnu/java/security/provider/SHA1PRNG.java \ +classpath/gnu/java/security/provider/SHA1withRSA.java \ +classpath/gnu/java/security/provider/X509CertificateFactory.java + +gnu_java_security_provider_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_security_provider_source_files))) +gnu_java_security_util_source_files = \ +classpath/gnu/java/security/util/Prime.java + +gnu_java_security_util_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_security_util_source_files))) +gnu_java_security_x509_source_files = \ +classpath/gnu/java/security/x509/GnuPKIExtension.java \ +classpath/gnu/java/security/x509/PolicyNodeImpl.java \ +classpath/gnu/java/security/x509/Util.java \ +classpath/gnu/java/security/x509/X500DistinguishedName.java \ +classpath/gnu/java/security/x509/X509CRL.java \ +classpath/gnu/java/security/x509/X509CRLEntry.java \ +classpath/gnu/java/security/x509/X509CRLSelectorImpl.java \ +classpath/gnu/java/security/x509/X509CertPath.java \ +classpath/gnu/java/security/x509/X509CertSelectorImpl.java \ +classpath/gnu/java/security/x509/X509Certificate.java + +gnu_java_security_x509_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_security_x509_source_files))) +gnu_java_security_x509_ext_source_files = \ +classpath/gnu/java/security/x509/ext/AuthorityKeyIdentifier.java \ +classpath/gnu/java/security/x509/ext/BasicConstraints.java \ +classpath/gnu/java/security/x509/ext/CRLNumber.java \ +classpath/gnu/java/security/x509/ext/CertificatePolicies.java \ +classpath/gnu/java/security/x509/ext/ExtendedKeyUsage.java \ +classpath/gnu/java/security/x509/ext/Extension.java \ +classpath/gnu/java/security/x509/ext/GeneralNames.java \ +classpath/gnu/java/security/x509/ext/IssuerAlternativeNames.java \ +classpath/gnu/java/security/x509/ext/KeyUsage.java \ +classpath/gnu/java/security/x509/ext/PolicyConstraint.java \ +classpath/gnu/java/security/x509/ext/PolicyMappings.java \ +classpath/gnu/java/security/x509/ext/PrivateKeyUsagePeriod.java \ +classpath/gnu/java/security/x509/ext/ReasonCode.java \ +classpath/gnu/java/security/x509/ext/SubjectAlternativeNames.java \ +classpath/gnu/java/security/x509/ext/SubjectKeyIdentifier.java + +gnu_java_security_x509_ext_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_security_x509_ext_source_files))) +gnu_java_text_source_files = \ +classpath/gnu/java/text/AttributedFormatBuffer.java \ +classpath/gnu/java/text/BaseBreakIterator.java \ +classpath/gnu/java/text/CharacterBreakIterator.java \ +classpath/gnu/java/text/FormatBuffer.java \ +classpath/gnu/java/text/FormatCharacterIterator.java \ +classpath/gnu/java/text/LineBreakIterator.java \ +classpath/gnu/java/text/SentenceBreakIterator.java \ +classpath/gnu/java/text/StringFormatBuffer.java \ +classpath/gnu/java/text/WordBreakIterator.java + +gnu_java_text_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_text_source_files))) +gnu_java_util_source_files = \ +classpath/gnu/java/util/DoubleEnumeration.java \ +classpath/gnu/java/util/EmptyEnumeration.java + +gnu_java_util_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_util_source_files))) +gnu_java_util_prefs_source_files = \ +classpath/gnu/java/util/prefs/FileBasedFactory.java \ +classpath/gnu/java/util/prefs/MemoryBasedFactory.java \ +classpath/gnu/java/util/prefs/MemoryBasedPreferences.java \ +classpath/gnu/java/util/prefs/NodeReader.java \ +classpath/gnu/java/util/prefs/NodeWriter.java + +gnu_java_util_prefs_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_util_prefs_source_files))) +gnu_javax_swing_text_html_parser_source_files = \ +classpath/gnu/javax/swing/text/html/parser/HTML_401F.java \ +classpath/gnu/javax/swing/text/html/parser/gnuDTD.java \ +classpath/gnu/javax/swing/text/html/parser/htmlAttributeSet.java \ +classpath/gnu/javax/swing/text/html/parser/htmlValidator.java + +gnu_javax_swing_text_html_parser_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_javax_swing_text_html_parser_source_files))) +gnu_javax_swing_text_html_parser_models_source_files = \ +classpath/gnu/javax/swing/text/html/parser/models/PCDATAonly_model.java \ +classpath/gnu/javax/swing/text/html/parser/models/TableRowContentModel.java \ +classpath/gnu/javax/swing/text/html/parser/models/list.java \ +classpath/gnu/javax/swing/text/html/parser/models/noTagModel.java \ +classpath/gnu/javax/swing/text/html/parser/models/node.java \ +classpath/gnu/javax/swing/text/html/parser/models/transformer.java + +gnu_javax_swing_text_html_parser_models_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_javax_swing_text_html_parser_models_source_files))) +gnu_javax_swing_text_html_parser_support_source_files = \ +classpath/gnu/javax/swing/text/html/parser/support/Parser.java \ +classpath/gnu/javax/swing/text/html/parser/support/gnuStringIntMapper.java \ +classpath/gnu/javax/swing/text/html/parser/support/parameterDefaulter.java \ +classpath/gnu/javax/swing/text/html/parser/support/textPreProcessor.java + +gnu_javax_swing_text_html_parser_support_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_javax_swing_text_html_parser_support_source_files))) +gnu_javax_swing_text_html_parser_support_low_source_files = \ +classpath/gnu/javax/swing/text/html/parser/support/low/Buffer.java \ +classpath/gnu/javax/swing/text/html/parser/support/low/Constants.java \ +classpath/gnu/javax/swing/text/html/parser/support/low/Location.java \ +classpath/gnu/javax/swing/text/html/parser/support/low/ParseException.java \ +classpath/gnu/javax/swing/text/html/parser/support/low/Queue.java \ +classpath/gnu/javax/swing/text/html/parser/support/low/ReaderTokenizer.java \ +classpath/gnu/javax/swing/text/html/parser/support/low/Token.java \ +classpath/gnu/javax/swing/text/html/parser/support/low/node.java \ +classpath/gnu/javax/swing/text/html/parser/support/low/pattern.java + +gnu_javax_swing_text_html_parser_support_low_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_javax_swing_text_html_parser_support_low_source_files))) +gnu_regexp_source_files = \ +classpath/gnu/regexp/CharIndexed.java \ +classpath/gnu/regexp/CharIndexedCharArray.java \ +classpath/gnu/regexp/CharIndexedInputStream.java \ +classpath/gnu/regexp/CharIndexedString.java \ +classpath/gnu/regexp/CharIndexedStringBuffer.java \ +classpath/gnu/regexp/RE.java \ +classpath/gnu/regexp/REException.java \ +classpath/gnu/regexp/REFilterInputStream.java \ +classpath/gnu/regexp/REMatch.java \ +classpath/gnu/regexp/REMatchEnumeration.java \ +classpath/gnu/regexp/RESyntax.java \ +classpath/gnu/regexp/REToken.java \ +classpath/gnu/regexp/RETokenAny.java \ +classpath/gnu/regexp/RETokenBackRef.java \ +classpath/gnu/regexp/RETokenChar.java \ +classpath/gnu/regexp/RETokenEnd.java \ +classpath/gnu/regexp/RETokenEndSub.java \ +classpath/gnu/regexp/RETokenLookAhead.java \ +classpath/gnu/regexp/RETokenOneOf.java \ +classpath/gnu/regexp/RETokenPOSIX.java \ +classpath/gnu/regexp/RETokenRange.java \ +classpath/gnu/regexp/RETokenRepeated.java \ +classpath/gnu/regexp/RETokenStart.java \ +classpath/gnu/regexp/RETokenWordBoundary.java \ +classpath/gnu/regexp/UncheckedRE.java + +gnu_regexp_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_regexp_source_files))) +gnu_xml_source_files = \ +classpath/gnu/xml/aelfred2/ContentHandler2.java \ +classpath/gnu/xml/aelfred2/JAXPFactory.java \ +classpath/gnu/xml/aelfred2/SAXDriver.java \ +classpath/gnu/xml/aelfred2/XmlParser.java \ +classpath/gnu/xml/aelfred2/XmlReader.java \ +classpath/gnu/xml/dom/Consumer.java \ +classpath/gnu/xml/dom/DTDAttributeTypeInfo.java \ +classpath/gnu/xml/dom/DTDElementTypeInfo.java \ +classpath/gnu/xml/dom/DomAttr.java \ +classpath/gnu/xml/dom/DomCDATASection.java \ +classpath/gnu/xml/dom/DomCharacterData.java \ +classpath/gnu/xml/dom/DomComment.java \ +classpath/gnu/xml/dom/DomDOMException.java \ +classpath/gnu/xml/dom/DomDoctype.java \ +classpath/gnu/xml/dom/DomDocument.java \ +classpath/gnu/xml/dom/DomDocumentBuilder.java \ +classpath/gnu/xml/dom/DomDocumentBuilderFactory.java \ +classpath/gnu/xml/dom/DomDocumentConfiguration.java \ +classpath/gnu/xml/dom/DomDocumentFragment.java \ +classpath/gnu/xml/dom/DomElement.java \ +classpath/gnu/xml/dom/DomEntity.java \ +classpath/gnu/xml/dom/DomEntityReference.java \ +classpath/gnu/xml/dom/DomEvent.java \ +classpath/gnu/xml/dom/DomExtern.java \ +classpath/gnu/xml/dom/DomImpl.java \ +classpath/gnu/xml/dom/DomIterator.java \ +classpath/gnu/xml/dom/DomNSResolverContext.java \ +classpath/gnu/xml/dom/DomNamedNodeMap.java \ +classpath/gnu/xml/dom/DomNode.java \ +classpath/gnu/xml/dom/DomNodeIterator.java \ +classpath/gnu/xml/dom/DomNotation.java \ +classpath/gnu/xml/dom/DomNsNode.java \ +classpath/gnu/xml/dom/DomProcessingInstruction.java \ +classpath/gnu/xml/dom/DomText.java \ +classpath/gnu/xml/dom/DomXPathExpression.java \ +classpath/gnu/xml/dom/DomXPathNSResolver.java \ +classpath/gnu/xml/dom/DomXPathResult.java \ +classpath/gnu/xml/dom/ImplementationList.java \ +classpath/gnu/xml/dom/ImplementationSource.java \ +classpath/gnu/xml/dom/JAXPFactory.java \ +classpath/gnu/xml/dom/html2/DomHTMLAnchorElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLAppletElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLAreaElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLBRElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLBaseElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLBaseFontElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLBodyElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLButtonElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLCollection.java \ +classpath/gnu/xml/dom/html2/DomHTMLDListElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLDirectoryElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLDivElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLDocument.java \ +classpath/gnu/xml/dom/html2/DomHTMLElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLFieldSetElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLFontElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLFormElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLFrameElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLFrameSetElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLHRElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLHeadElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLHeadingElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLHtmlElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLIFrameElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLImageElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLImpl.java \ +classpath/gnu/xml/dom/html2/DomHTMLInputElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLIsIndexElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLLIElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLLabelElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLLegendElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLLinkElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLMapElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLMenuElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLMetaElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLModElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLOListElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLObjectElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLOptGroupElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLOptionElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLParagraphElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLParamElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLParser.java \ +classpath/gnu/xml/dom/html2/DomHTMLPreElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLQuoteElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLScriptElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLSelectElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLStyleElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLTableCaptionElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLTableCellElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLTableColElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLTableElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLTableRowElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLTableSectionElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLTextAreaElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLTitleElement.java \ +classpath/gnu/xml/dom/html2/DomHTMLUListElement.java \ +classpath/gnu/xml/dom/ls/DomLSException.java \ +classpath/gnu/xml/dom/ls/DomLSInput.java \ +classpath/gnu/xml/dom/ls/DomLSOutput.java \ +classpath/gnu/xml/dom/ls/DomLSParser.java \ +classpath/gnu/xml/dom/ls/DomLSSerializer.java \ +classpath/gnu/xml/dom/ls/FilteredSAXEventSink.java \ +classpath/gnu/xml/dom/ls/ReaderInputStream.java \ +classpath/gnu/xml/dom/ls/SAXEventSink.java \ +classpath/gnu/xml/dom/ls/WriterOutputStream.java \ +classpath/gnu/xml/libxmlj/dom/GnomeAttr.java \ +classpath/gnu/xml/libxmlj/dom/GnomeCDATASection.java \ +classpath/gnu/xml/libxmlj/dom/GnomeCharacterData.java \ +classpath/gnu/xml/libxmlj/dom/GnomeComment.java \ +classpath/gnu/xml/libxmlj/dom/GnomeDOMException.java \ +classpath/gnu/xml/libxmlj/dom/GnomeDOMStringList.java \ +classpath/gnu/xml/libxmlj/dom/GnomeDocument.java \ +classpath/gnu/xml/libxmlj/dom/GnomeDocumentBuilder.java \ +classpath/gnu/xml/libxmlj/dom/GnomeDocumentBuilderFactory.java \ +classpath/gnu/xml/libxmlj/dom/GnomeDocumentFragment.java \ +classpath/gnu/xml/libxmlj/dom/GnomeDocumentType.java \ +classpath/gnu/xml/libxmlj/dom/GnomeElement.java \ +classpath/gnu/xml/libxmlj/dom/GnomeEntity.java \ +classpath/gnu/xml/libxmlj/dom/GnomeEntityReference.java \ +classpath/gnu/xml/libxmlj/dom/GnomeNamedNodeMap.java \ +classpath/gnu/xml/libxmlj/dom/GnomeNode.java \ +classpath/gnu/xml/libxmlj/dom/GnomeNodeList.java \ +classpath/gnu/xml/libxmlj/dom/GnomeNotation.java \ +classpath/gnu/xml/libxmlj/dom/GnomeProcessingInstruction.java \ +classpath/gnu/xml/libxmlj/dom/GnomeText.java \ +classpath/gnu/xml/libxmlj/dom/GnomeTypeInfo.java \ +classpath/gnu/xml/libxmlj/dom/GnomeXPathExpression.java \ +classpath/gnu/xml/libxmlj/dom/GnomeXPathNSResolver.java \ +classpath/gnu/xml/libxmlj/dom/GnomeXPathNodeList.java \ +classpath/gnu/xml/libxmlj/dom/GnomeXPathResult.java \ +classpath/gnu/xml/libxmlj/sax/GnomeLocator.java \ +classpath/gnu/xml/libxmlj/sax/GnomeSAXParser.java \ +classpath/gnu/xml/libxmlj/sax/GnomeSAXParserFactory.java \ +classpath/gnu/xml/libxmlj/sax/GnomeXMLReader.java \ +classpath/gnu/xml/libxmlj/sax/Namespaces.java \ +classpath/gnu/xml/libxmlj/sax/StringArrayAttributes.java \ +classpath/gnu/xml/libxmlj/sax/XMLName.java \ +classpath/gnu/xml/libxmlj/transform/ErrorListenerErrorHandler.java \ +classpath/gnu/xml/libxmlj/transform/GnomeTransformer.java \ +classpath/gnu/xml/libxmlj/transform/GnomeTransformerFactory.java \ +classpath/gnu/xml/libxmlj/transform/URIResolverEntityResolver.java \ +classpath/gnu/xml/libxmlj/util/EmptyNodeList.java \ +classpath/gnu/xml/libxmlj/util/NamedInputStream.java \ +classpath/gnu/xml/libxmlj/util/StandaloneDocumentType.java \ +classpath/gnu/xml/libxmlj/util/StandaloneLocator.java \ +classpath/gnu/xml/libxmlj/util/XMLJ.java \ +classpath/gnu/xml/pipeline/CallFilter.java \ +classpath/gnu/xml/pipeline/DomConsumer.java \ +classpath/gnu/xml/pipeline/EventConsumer.java \ +classpath/gnu/xml/pipeline/EventFilter.java \ +classpath/gnu/xml/pipeline/LinkFilter.java \ +classpath/gnu/xml/pipeline/NSFilter.java \ +classpath/gnu/xml/pipeline/PipelineFactory.java \ +classpath/gnu/xml/pipeline/TeeConsumer.java \ +classpath/gnu/xml/pipeline/TextConsumer.java \ +classpath/gnu/xml/pipeline/ValidationConsumer.java \ +classpath/gnu/xml/pipeline/WellFormednessFilter.java \ +classpath/gnu/xml/pipeline/XIncludeFilter.java \ +classpath/gnu/xml/pipeline/XsltFilter.java \ +classpath/gnu/xml/transform/AbstractNumberNode.java \ +classpath/gnu/xml/transform/ApplyImportsNode.java \ +classpath/gnu/xml/transform/ApplyTemplatesNode.java \ +classpath/gnu/xml/transform/AttributeNode.java \ +classpath/gnu/xml/transform/AttributeSet.java \ +classpath/gnu/xml/transform/Bindings.java \ +classpath/gnu/xml/transform/CallTemplateNode.java \ +classpath/gnu/xml/transform/ChooseNode.java \ +classpath/gnu/xml/transform/CommentNode.java \ +classpath/gnu/xml/transform/CopyNode.java \ +classpath/gnu/xml/transform/CopyOfNode.java \ +classpath/gnu/xml/transform/CurrentFunction.java \ +classpath/gnu/xml/transform/DOMSourceLocator.java \ +classpath/gnu/xml/transform/DocumentFunction.java \ +classpath/gnu/xml/transform/ElementAvailableFunction.java \ +classpath/gnu/xml/transform/ElementNode.java \ +classpath/gnu/xml/transform/ErrorListenerErrorHandler.java \ +classpath/gnu/xml/transform/ForEachNode.java \ +classpath/gnu/xml/transform/FormatNumberFunction.java \ +classpath/gnu/xml/transform/FunctionAvailableFunction.java \ +classpath/gnu/xml/transform/GenerateIdFunction.java \ +classpath/gnu/xml/transform/IfNode.java \ +classpath/gnu/xml/transform/Key.java \ +classpath/gnu/xml/transform/KeyFunction.java \ +classpath/gnu/xml/transform/LiteralNode.java \ +classpath/gnu/xml/transform/MessageNode.java \ +classpath/gnu/xml/transform/NodeNumberNode.java \ +classpath/gnu/xml/transform/NumberNode.java \ +classpath/gnu/xml/transform/OtherwiseNode.java \ +classpath/gnu/xml/transform/ParameterNode.java \ +classpath/gnu/xml/transform/ProcessingInstructionNode.java \ +classpath/gnu/xml/transform/SAXSerializer.java \ +classpath/gnu/xml/transform/SortKey.java \ +classpath/gnu/xml/transform/StreamSerializer.java \ +classpath/gnu/xml/transform/Stylesheet.java \ +classpath/gnu/xml/transform/SystemPropertyFunction.java \ +classpath/gnu/xml/transform/Template.java \ +classpath/gnu/xml/transform/TemplateNode.java \ +classpath/gnu/xml/transform/TemplatesImpl.java \ +classpath/gnu/xml/transform/TextNode.java \ +classpath/gnu/xml/transform/TransformerFactoryImpl.java \ +classpath/gnu/xml/transform/TransformerImpl.java \ +classpath/gnu/xml/transform/TransformerOutputProperties.java \ +classpath/gnu/xml/transform/URIResolverEntityResolver.java \ +classpath/gnu/xml/transform/UnparsedEntityUriFunction.java \ +classpath/gnu/xml/transform/ValueOfNode.java \ +classpath/gnu/xml/transform/WhenNode.java \ +classpath/gnu/xml/transform/WithParam.java \ +classpath/gnu/xml/transform/XSLComparator.java \ +classpath/gnu/xml/transform/XSLURIResolver.java \ +classpath/gnu/xml/util/DoParse.java \ +classpath/gnu/xml/util/DomParser.java \ +classpath/gnu/xml/util/Resolver.java \ +classpath/gnu/xml/util/SAXNullTransformerFactory.java \ +classpath/gnu/xml/util/XCat.java \ +classpath/gnu/xml/util/XHTMLWriter.java \ +classpath/gnu/xml/util/XMLWriter.java \ +classpath/gnu/xml/xpath/AndExpr.java \ +classpath/gnu/xml/xpath/ArithmeticExpr.java \ +classpath/gnu/xml/xpath/BooleanFunction.java \ +classpath/gnu/xml/xpath/CeilingFunction.java \ +classpath/gnu/xml/xpath/ConcatFunction.java \ +classpath/gnu/xml/xpath/Constant.java \ +classpath/gnu/xml/xpath/ContainsFunction.java \ +classpath/gnu/xml/xpath/CountFunction.java \ +classpath/gnu/xml/xpath/DocumentOrderComparator.java \ +classpath/gnu/xml/xpath/EqualityExpr.java \ +classpath/gnu/xml/xpath/Expr.java \ +classpath/gnu/xml/xpath/FalseFunction.java \ +classpath/gnu/xml/xpath/FloorFunction.java \ +classpath/gnu/xml/xpath/Function.java \ +classpath/gnu/xml/xpath/FunctionCall.java \ +classpath/gnu/xml/xpath/IdFunction.java \ +classpath/gnu/xml/xpath/LangFunction.java \ +classpath/gnu/xml/xpath/LastFunction.java \ +classpath/gnu/xml/xpath/LocalNameFunction.java \ +classpath/gnu/xml/xpath/NameFunction.java \ +classpath/gnu/xml/xpath/NameTest.java \ +classpath/gnu/xml/xpath/NamespaceTest.java \ +classpath/gnu/xml/xpath/NamespaceUriFunction.java \ +classpath/gnu/xml/xpath/NegativeExpr.java \ +classpath/gnu/xml/xpath/NodeTypeTest.java \ +classpath/gnu/xml/xpath/NormalizeSpaceFunction.java \ +classpath/gnu/xml/xpath/NotFunction.java \ +classpath/gnu/xml/xpath/NumberFunction.java \ +classpath/gnu/xml/xpath/OrExpr.java \ +classpath/gnu/xml/xpath/ParenthesizedExpr.java \ +classpath/gnu/xml/xpath/Path.java \ +classpath/gnu/xml/xpath/Pattern.java \ +classpath/gnu/xml/xpath/PositionFunction.java \ +classpath/gnu/xml/xpath/Predicate.java \ +classpath/gnu/xml/xpath/RelationalExpr.java \ +classpath/gnu/xml/xpath/Root.java \ +classpath/gnu/xml/xpath/RoundFunction.java \ +classpath/gnu/xml/xpath/Selector.java \ +classpath/gnu/xml/xpath/StartsWithFunction.java \ +classpath/gnu/xml/xpath/Steps.java \ +classpath/gnu/xml/xpath/StringFunction.java \ +classpath/gnu/xml/xpath/StringLengthFunction.java \ +classpath/gnu/xml/xpath/SubstringAfterFunction.java \ +classpath/gnu/xml/xpath/SubstringBeforeFunction.java \ +classpath/gnu/xml/xpath/SubstringFunction.java \ +classpath/gnu/xml/xpath/SumFunction.java \ +classpath/gnu/xml/xpath/Test.java \ +classpath/gnu/xml/xpath/TranslateFunction.java \ +classpath/gnu/xml/xpath/TrueFunction.java \ +classpath/gnu/xml/xpath/UnionExpr.java \ +classpath/gnu/xml/xpath/VariableReference.java \ +classpath/gnu/xml/xpath/XPathFactoryImpl.java \ +classpath/gnu/xml/xpath/XPathImpl.java \ +classpath/gnu/xml/xpath/XPathParser.java \ +classpath/gnu/xml/xpath/XPathTokenizer.java + +java_applet_source_files = \ +classpath/java/applet/Applet.java \ +classpath/java/applet/AppletContext.java \ +classpath/java/applet/AppletStub.java \ +classpath/java/applet/AudioClip.java + +java_applet_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_applet_source_files))) +java_awt_source_files = \ +classpath/java/awt/AWTError.java \ +classpath/java/awt/AWTEvent.java \ +classpath/java/awt/AWTEventMulticaster.java \ +classpath/java/awt/AWTException.java \ +classpath/java/awt/AWTKeyStroke.java \ +classpath/java/awt/AWTPermission.java \ +classpath/java/awt/ActiveEvent.java \ +classpath/java/awt/Adjustable.java \ +classpath/java/awt/AlphaComposite.java \ +classpath/java/awt/AttributeValue.java \ +classpath/java/awt/BasicStroke.java \ +classpath/java/awt/BorderLayout.java \ +classpath/java/awt/BufferCapabilities.java \ +classpath/java/awt/Button.java \ +classpath/java/awt/Canvas.java \ +classpath/java/awt/CardLayout.java \ +classpath/java/awt/Checkbox.java \ +classpath/java/awt/CheckboxGroup.java \ +classpath/java/awt/CheckboxMenuItem.java \ +classpath/java/awt/Choice.java \ +classpath/java/awt/Color.java \ +classpath/java/awt/ColorPaintContext.java \ +classpath/java/awt/Component.java \ +classpath/java/awt/ComponentOrientation.java \ +classpath/java/awt/Composite.java \ +classpath/java/awt/CompositeContext.java \ +classpath/java/awt/Container.java \ +classpath/java/awt/ContainerOrderFocusTraversalPolicy.java \ +classpath/java/awt/Cursor.java \ +classpath/java/awt/DefaultFocusTraversalPolicy.java \ +classpath/java/awt/DefaultKeyboardFocusManager.java \ +classpath/java/awt/Dialog.java \ +classpath/java/awt/Dimension.java \ +classpath/java/awt/DisplayMode.java \ +classpath/java/awt/Event.java \ +classpath/java/awt/EventDispatchThread.java \ +classpath/java/awt/EventQueue.java \ +classpath/java/awt/FileDialog.java \ +classpath/java/awt/FlowLayout.java \ +classpath/java/awt/FocusTraversalPolicy.java \ +classpath/java/awt/Font.java \ +classpath/java/awt/FontFormatException.java \ +classpath/java/awt/FontMetrics.java \ +classpath/java/awt/Frame.java \ +classpath/java/awt/GradientPaint.java \ +classpath/java/awt/Graphics.java \ +classpath/java/awt/Graphics2D.java \ +classpath/java/awt/GraphicsConfigTemplate.java \ +classpath/java/awt/GraphicsConfiguration.java \ +classpath/java/awt/GraphicsDevice.java \ +classpath/java/awt/GraphicsEnvironment.java \ +classpath/java/awt/GridBagConstraints.java \ +classpath/java/awt/GridBagLayout.java \ +classpath/java/awt/GridBagLayoutInfo.java \ +classpath/java/awt/GridLayout.java \ +classpath/java/awt/HeadlessException.java \ +classpath/java/awt/IllegalComponentStateException.java \ +classpath/java/awt/Image.java \ +classpath/java/awt/ImageCapabilities.java \ +classpath/java/awt/Insets.java \ +classpath/java/awt/ItemSelectable.java \ +classpath/java/awt/JobAttributes.java \ +classpath/java/awt/KeyEventDispatcher.java \ +classpath/java/awt/KeyEventPostProcessor.java \ +classpath/java/awt/KeyboardFocusManager.java \ +classpath/java/awt/Label.java \ +classpath/java/awt/LayoutManager.java \ +classpath/java/awt/LayoutManager2.java \ +classpath/java/awt/List.java \ +classpath/java/awt/MediaTracker.java \ +classpath/java/awt/Menu.java \ +classpath/java/awt/MenuBar.java \ +classpath/java/awt/MenuComponent.java \ +classpath/java/awt/MenuContainer.java \ +classpath/java/awt/MenuItem.java \ +classpath/java/awt/MenuShortcut.java \ +classpath/java/awt/PageAttributes.java \ +classpath/java/awt/Paint.java \ +classpath/java/awt/PaintContext.java \ +classpath/java/awt/Panel.java \ +classpath/java/awt/Point.java \ +classpath/java/awt/Polygon.java \ +classpath/java/awt/PopupMenu.java \ +classpath/java/awt/PrintGraphics.java \ +classpath/java/awt/PrintJob.java \ +classpath/java/awt/Rectangle.java \ +classpath/java/awt/RenderingHints.java \ +classpath/java/awt/Robot.java \ +classpath/java/awt/ScrollPane.java \ +classpath/java/awt/ScrollPaneAdjustable.java \ +classpath/java/awt/Scrollbar.java \ +classpath/java/awt/Shape.java \ +classpath/java/awt/Stroke.java \ +classpath/java/awt/SystemColor.java \ +classpath/java/awt/TextArea.java \ +classpath/java/awt/TextComponent.java \ +classpath/java/awt/TextField.java \ +classpath/java/awt/TexturePaint.java \ +classpath/java/awt/Toolkit.java \ +classpath/java/awt/Transparency.java \ +classpath/java/awt/Window.java + +java_awt_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_source_files))) +java_awt_color_source_files = \ +classpath/java/awt/color/CMMException.java \ +classpath/java/awt/color/ColorSpace.java \ +classpath/java/awt/color/ICC_ColorSpace.java \ +classpath/java/awt/color/ICC_Profile.java \ +classpath/java/awt/color/ICC_ProfileGray.java \ +classpath/java/awt/color/ICC_ProfileRGB.java \ +classpath/java/awt/color/ProfileDataException.java + +java_awt_color_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_color_source_files))) +java_awt_datatransfer_source_files = \ +classpath/java/awt/datatransfer/Clipboard.java \ +classpath/java/awt/datatransfer/ClipboardOwner.java \ +classpath/java/awt/datatransfer/DataFlavor.java \ +classpath/java/awt/datatransfer/FlavorMap.java \ +classpath/java/awt/datatransfer/FlavorTable.java \ +classpath/java/awt/datatransfer/MimeTypeParseException.java \ +classpath/java/awt/datatransfer/StringSelection.java \ +classpath/java/awt/datatransfer/SystemFlavorMap.java \ +classpath/java/awt/datatransfer/Transferable.java \ +classpath/java/awt/datatransfer/UnsupportedFlavorException.java + +java_awt_datatransfer_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_datatransfer_source_files))) +java_awt_dnd_source_files = \ +classpath/java/awt/dnd/Autoscroll.java \ +classpath/java/awt/dnd/DnDConstants.java \ +classpath/java/awt/dnd/DnDEventMulticaster.java \ +classpath/java/awt/dnd/DragGestureEvent.java \ +classpath/java/awt/dnd/DragGestureListener.java \ +classpath/java/awt/dnd/DragGestureRecognizer.java \ +classpath/java/awt/dnd/DragSource.java \ +classpath/java/awt/dnd/DragSourceAdapter.java \ +classpath/java/awt/dnd/DragSourceContext.java \ +classpath/java/awt/dnd/DragSourceDragEvent.java \ +classpath/java/awt/dnd/DragSourceDropEvent.java \ +classpath/java/awt/dnd/DragSourceEvent.java \ +classpath/java/awt/dnd/DragSourceListener.java \ +classpath/java/awt/dnd/DragSourceMotionListener.java \ +classpath/java/awt/dnd/DropTarget.java \ +classpath/java/awt/dnd/DropTargetAdapter.java \ +classpath/java/awt/dnd/DropTargetContext.java \ +classpath/java/awt/dnd/DropTargetDragEvent.java \ +classpath/java/awt/dnd/DropTargetDropEvent.java \ +classpath/java/awt/dnd/DropTargetEvent.java \ +classpath/java/awt/dnd/DropTargetListener.java \ +classpath/java/awt/dnd/InvalidDnDOperationException.java \ +classpath/java/awt/dnd/MouseDragGestureRecognizer.java + +java_awt_dnd_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_dnd_source_files))) +java_awt_dnd_peer_source_files = \ +classpath/java/awt/dnd/peer/DragSourceContextPeer.java \ +classpath/java/awt/dnd/peer/DropTargetContextPeer.java \ +classpath/java/awt/dnd/peer/DropTargetPeer.java + +java_awt_dnd_peer_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_dnd_peer_source_files))) +java_awt_event_source_files = \ +classpath/java/awt/event/AWTEventListener.java \ +classpath/java/awt/event/AWTEventListenerProxy.java \ +classpath/java/awt/event/ActionEvent.java \ +classpath/java/awt/event/ActionListener.java \ +classpath/java/awt/event/AdjustmentEvent.java \ +classpath/java/awt/event/AdjustmentListener.java \ +classpath/java/awt/event/ComponentAdapter.java \ +classpath/java/awt/event/ComponentEvent.java \ +classpath/java/awt/event/ComponentListener.java \ +classpath/java/awt/event/ContainerAdapter.java \ +classpath/java/awt/event/ContainerEvent.java \ +classpath/java/awt/event/ContainerListener.java \ +classpath/java/awt/event/FocusAdapter.java \ +classpath/java/awt/event/FocusEvent.java \ +classpath/java/awt/event/FocusListener.java \ +classpath/java/awt/event/HierarchyBoundsAdapter.java \ +classpath/java/awt/event/HierarchyBoundsListener.java \ +classpath/java/awt/event/HierarchyEvent.java \ +classpath/java/awt/event/HierarchyListener.java \ +classpath/java/awt/event/InputEvent.java \ +classpath/java/awt/event/InputMethodEvent.java \ +classpath/java/awt/event/InputMethodListener.java \ +classpath/java/awt/event/InvocationEvent.java \ +classpath/java/awt/event/ItemEvent.java \ +classpath/java/awt/event/ItemListener.java \ +classpath/java/awt/event/KeyAdapter.java \ +classpath/java/awt/event/KeyEvent.java \ +classpath/java/awt/event/KeyListener.java \ +classpath/java/awt/event/MouseAdapter.java \ +classpath/java/awt/event/MouseEvent.java \ +classpath/java/awt/event/MouseListener.java \ +classpath/java/awt/event/MouseMotionAdapter.java \ +classpath/java/awt/event/MouseMotionListener.java \ +classpath/java/awt/event/MouseWheelEvent.java \ +classpath/java/awt/event/MouseWheelListener.java \ +classpath/java/awt/event/PaintEvent.java \ +classpath/java/awt/event/TextEvent.java \ +classpath/java/awt/event/TextListener.java \ +classpath/java/awt/event/WindowAdapter.java \ +classpath/java/awt/event/WindowEvent.java \ +classpath/java/awt/event/WindowFocusListener.java \ +classpath/java/awt/event/WindowListener.java \ +classpath/java/awt/event/WindowStateListener.java + +java_awt_event_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_event_source_files))) +java_awt_font_source_files = \ +classpath/java/awt/font/FontRenderContext.java \ +classpath/java/awt/font/GlyphJustificationInfo.java \ +classpath/java/awt/font/GlyphMetrics.java \ +classpath/java/awt/font/GlyphVector.java \ +classpath/java/awt/font/GraphicAttribute.java \ +classpath/java/awt/font/ImageGraphicAttribute.java \ +classpath/java/awt/font/LineBreakMeasurer.java \ +classpath/java/awt/font/LineMetrics.java \ +classpath/java/awt/font/MultipleMaster.java \ +classpath/java/awt/font/NumericShaper.java \ +classpath/java/awt/font/OpenType.java \ +classpath/java/awt/font/ShapeGraphicAttribute.java \ +classpath/java/awt/font/TextAttribute.java \ +classpath/java/awt/font/TextHitInfo.java \ +classpath/java/awt/font/TextLayout.java \ +classpath/java/awt/font/TextMeasurer.java \ +classpath/java/awt/font/TransformAttribute.java + +java_awt_font_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_font_source_files))) +java_awt_geom_source_files = \ +classpath/java/awt/geom/AffineTransform.java \ +classpath/java/awt/geom/Arc2D.java \ +classpath/java/awt/geom/Area.java \ +classpath/java/awt/geom/CubicCurve2D.java \ +classpath/java/awt/geom/Dimension2D.java \ +classpath/java/awt/geom/Ellipse2D.java \ +classpath/java/awt/geom/FlatteningPathIterator.java \ +classpath/java/awt/geom/GeneralPath.java \ +classpath/java/awt/geom/IllegalPathStateException.java \ +classpath/java/awt/geom/Line2D.java \ +classpath/java/awt/geom/NoninvertibleTransformException.java \ +classpath/java/awt/geom/PathIterator.java \ +classpath/java/awt/geom/Point2D.java \ +classpath/java/awt/geom/QuadCurve2D.java \ +classpath/java/awt/geom/Rectangle2D.java \ +classpath/java/awt/geom/RectangularShape.java \ +classpath/java/awt/geom/RoundRectangle2D.java + +java_awt_geom_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_geom_source_files))) +java_awt_im_source_files = \ +classpath/java/awt/im/InputContext.java \ +classpath/java/awt/im/InputMethodHighlight.java \ +classpath/java/awt/im/InputMethodRequests.java \ +classpath/java/awt/im/InputSubset.java + +java_awt_im_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_im_source_files))) +java_awt_im_spi_source_files = \ +classpath/java/awt/im/spi/InputMethod.java \ +classpath/java/awt/im/spi/InputMethodContext.java \ +classpath/java/awt/im/spi/InputMethodDescriptor.java + +java_awt_im_spi_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_im_spi_source_files))) +java_awt_image_source_files = \ +classpath/java/awt/image/AffineTransformOp.java \ +classpath/java/awt/image/AreaAveragingScaleFilter.java \ +classpath/java/awt/image/BandCombineOp.java \ +classpath/java/awt/image/BandedSampleModel.java \ +classpath/java/awt/image/BufferStrategy.java \ +classpath/java/awt/image/BufferedImage.java \ +classpath/java/awt/image/BufferedImageFilter.java \ +classpath/java/awt/image/BufferedImageOp.java \ +classpath/java/awt/image/ByteLookupTable.java \ +classpath/java/awt/image/ColorConvertOp.java \ +classpath/java/awt/image/ColorModel.java \ +classpath/java/awt/image/ComponentColorModel.java \ +classpath/java/awt/image/ComponentSampleModel.java \ +classpath/java/awt/image/ConvolveOp.java \ +classpath/java/awt/image/CropImageFilter.java \ +classpath/java/awt/image/DataBuffer.java \ +classpath/java/awt/image/DataBufferByte.java \ +classpath/java/awt/image/DataBufferDouble.java \ +classpath/java/awt/image/DataBufferFloat.java \ +classpath/java/awt/image/DataBufferInt.java \ +classpath/java/awt/image/DataBufferShort.java \ +classpath/java/awt/image/DataBufferUShort.java \ +classpath/java/awt/image/DirectColorModel.java \ +classpath/java/awt/image/FilteredImageSource.java \ +classpath/java/awt/image/ImageConsumer.java \ +classpath/java/awt/image/ImageFilter.java \ +classpath/java/awt/image/ImageObserver.java \ +classpath/java/awt/image/ImageProducer.java \ +classpath/java/awt/image/ImagingOpException.java \ +classpath/java/awt/image/IndexColorModel.java \ +classpath/java/awt/image/Kernel.java \ +classpath/java/awt/image/LookupOp.java \ +classpath/java/awt/image/LookupTable.java \ +classpath/java/awt/image/MemoryImageSource.java \ +classpath/java/awt/image/MultiPixelPackedSampleModel.java \ +classpath/java/awt/image/PackedColorModel.java \ +classpath/java/awt/image/PixelGrabber.java \ +classpath/java/awt/image/PixelInterleavedSampleModel.java \ +classpath/java/awt/image/RGBImageFilter.java \ +classpath/java/awt/image/Raster.java \ +classpath/java/awt/image/RasterFormatException.java \ +classpath/java/awt/image/RasterOp.java \ +classpath/java/awt/image/RenderedImage.java \ +classpath/java/awt/image/ReplicateScaleFilter.java \ +classpath/java/awt/image/RescaleOp.java \ +classpath/java/awt/image/SampleModel.java \ +classpath/java/awt/image/ShortLookupTable.java \ +classpath/java/awt/image/SinglePixelPackedSampleModel.java \ +classpath/java/awt/image/TileObserver.java \ +classpath/java/awt/image/VolatileImage.java \ +classpath/java/awt/image/WritableRaster.java \ +classpath/java/awt/image/WritableRenderedImage.java + +java_awt_image_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_image_source_files))) +java_awt_image_renderable_source_files = \ +classpath/java/awt/image/renderable/ContextualRenderedImageFactory.java \ +classpath/java/awt/image/renderable/ParameterBlock.java \ +classpath/java/awt/image/renderable/RenderContext.java \ +classpath/java/awt/image/renderable/RenderableImage.java \ +classpath/java/awt/image/renderable/RenderableImageOp.java \ +classpath/java/awt/image/renderable/RenderableImageProducer.java \ +classpath/java/awt/image/renderable/RenderedImageFactory.java + +java_awt_image_renderable_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_image_renderable_source_files))) +java_awt_peer_source_files = \ +classpath/java/awt/peer/ButtonPeer.java \ +classpath/java/awt/peer/CanvasPeer.java \ +classpath/java/awt/peer/CheckboxMenuItemPeer.java \ +classpath/java/awt/peer/CheckboxPeer.java \ +classpath/java/awt/peer/ChoicePeer.java \ +classpath/java/awt/peer/ComponentPeer.java \ +classpath/java/awt/peer/ContainerPeer.java \ +classpath/java/awt/peer/DialogPeer.java \ +classpath/java/awt/peer/FileDialogPeer.java \ +classpath/java/awt/peer/FontPeer.java \ +classpath/java/awt/peer/FramePeer.java \ +classpath/java/awt/peer/LabelPeer.java \ +classpath/java/awt/peer/LightweightPeer.java \ +classpath/java/awt/peer/ListPeer.java \ +classpath/java/awt/peer/MenuBarPeer.java \ +classpath/java/awt/peer/MenuComponentPeer.java \ +classpath/java/awt/peer/MenuItemPeer.java \ +classpath/java/awt/peer/MenuPeer.java \ +classpath/java/awt/peer/PanelPeer.java \ +classpath/java/awt/peer/PopupMenuPeer.java \ +classpath/java/awt/peer/RobotPeer.java \ +classpath/java/awt/peer/ScrollPanePeer.java \ +classpath/java/awt/peer/ScrollbarPeer.java \ +classpath/java/awt/peer/TextAreaPeer.java \ +classpath/java/awt/peer/TextComponentPeer.java \ +classpath/java/awt/peer/TextFieldPeer.java \ +classpath/java/awt/peer/WindowPeer.java + +java_awt_peer_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_peer_source_files))) +java_awt_print_source_files = \ +classpath/java/awt/print/Book.java \ +classpath/java/awt/print/PageFormat.java \ +classpath/java/awt/print/Pageable.java \ +classpath/java/awt/print/Paper.java \ +classpath/java/awt/print/Printable.java \ +classpath/java/awt/print/PrinterAbortException.java \ +classpath/java/awt/print/PrinterException.java \ +classpath/java/awt/print/PrinterGraphics.java \ +classpath/java/awt/print/PrinterIOException.java \ +classpath/java/awt/print/PrinterJob.java + +java_awt_print_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_awt_print_source_files))) +java_beans_source_files = \ +classpath/java/beans/AppletInitializer.java \ +classpath/java/beans/BeanDescriptor.java \ +classpath/java/beans/BeanInfo.java \ +classpath/java/beans/Beans.java \ +classpath/java/beans/Customizer.java \ +classpath/java/beans/DesignMode.java \ +classpath/java/beans/EventHandler.java \ +classpath/java/beans/EventSetDescriptor.java \ +classpath/java/beans/ExceptionListener.java \ +classpath/java/beans/Expression.java \ +classpath/java/beans/FeatureDescriptor.java \ +classpath/java/beans/IndexedPropertyDescriptor.java \ +classpath/java/beans/IntrospectionException.java \ +classpath/java/beans/Introspector.java \ +classpath/java/beans/MethodDescriptor.java \ +classpath/java/beans/ParameterDescriptor.java \ +classpath/java/beans/PropertyChangeEvent.java \ +classpath/java/beans/PropertyChangeListener.java \ +classpath/java/beans/PropertyChangeListenerProxy.java \ +classpath/java/beans/PropertyChangeSupport.java \ +classpath/java/beans/PropertyDescriptor.java \ +classpath/java/beans/PropertyEditor.java \ +classpath/java/beans/PropertyEditorManager.java \ +classpath/java/beans/PropertyEditorSupport.java \ +classpath/java/beans/PropertyVetoException.java \ +classpath/java/beans/SimpleBeanInfo.java \ +classpath/java/beans/Statement.java \ +classpath/java/beans/VetoableChangeListener.java \ +classpath/java/beans/VetoableChangeListenerProxy.java \ +classpath/java/beans/VetoableChangeSupport.java \ +classpath/java/beans/Visibility.java \ +classpath/java/beans/XMLDecoder.java + +java_beans_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_beans_source_files))) +java_beans_beancontext_source_files = \ +classpath/java/beans/beancontext/BeanContext.java \ +classpath/java/beans/beancontext/BeanContextChild.java \ +classpath/java/beans/beancontext/BeanContextChildComponentProxy.java \ +classpath/java/beans/beancontext/BeanContextChildSupport.java \ +classpath/java/beans/beancontext/BeanContextContainerProxy.java \ +classpath/java/beans/beancontext/BeanContextEvent.java \ +classpath/java/beans/beancontext/BeanContextMembershipEvent.java \ +classpath/java/beans/beancontext/BeanContextMembershipListener.java \ +classpath/java/beans/beancontext/BeanContextProxy.java \ +classpath/java/beans/beancontext/BeanContextServiceAvailableEvent.java \ +classpath/java/beans/beancontext/BeanContextServiceProvider.java \ +classpath/java/beans/beancontext/BeanContextServiceProviderBeanInfo.java \ +classpath/java/beans/beancontext/BeanContextServiceRevokedEvent.java \ +classpath/java/beans/beancontext/BeanContextServiceRevokedListener.java \ +classpath/java/beans/beancontext/BeanContextServices.java \ +classpath/java/beans/beancontext/BeanContextServicesListener.java \ +classpath/java/beans/beancontext/BeanContextServicesSupport.java \ +classpath/java/beans/beancontext/BeanContextSupport.java + +java_beans_beancontext_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_beans_beancontext_source_files))) +java_io_source_files = \ +java/io/BufferedInputStream.java \ +classpath/java/io/BufferedOutputStream.java \ +classpath/java/io/BufferedReader.java \ +classpath/java/io/BufferedWriter.java \ +classpath/java/io/ByteArrayInputStream.java \ +classpath/java/io/ByteArrayOutputStream.java \ +classpath/java/io/CharArrayReader.java \ +classpath/java/io/CharArrayWriter.java \ +classpath/java/io/CharConversionException.java \ +classpath/java/io/Closeable.java \ +classpath/java/io/DataInput.java \ +classpath/java/io/DataInputStream.java \ +classpath/java/io/DataOutput.java \ +classpath/java/io/DataOutputStream.java \ +classpath/java/io/DeleteFileHelper.java \ +classpath/java/io/EOFException.java \ +classpath/java/io/Externalizable.java \ +java/io/File.java \ +classpath/java/io/FileDescriptor.java \ +classpath/java/io/FileFilter.java \ +java/io/FileInputStream.java \ +classpath/java/io/FileNotFoundException.java \ +java/io/FileOutputStream.java \ +classpath/java/io/FilePermission.java \ +classpath/java/io/FileReader.java \ +classpath/java/io/FileWriter.java \ +classpath/java/io/FilenameFilter.java \ +classpath/java/io/FilterInputStream.java \ +classpath/java/io/FilterOutputStream.java \ +classpath/java/io/FilterReader.java \ +classpath/java/io/FilterWriter.java \ +classpath/java/io/Flushable.java \ +classpath/java/io/IOException.java \ +classpath/java/io/InputStream.java \ +java/io/InputStreamReader.java \ +classpath/java/io/InterruptedIOException.java \ +classpath/java/io/InvalidClassException.java \ +classpath/java/io/InvalidObjectException.java \ +classpath/java/io/LineNumberInputStream.java \ +classpath/java/io/LineNumberReader.java \ +classpath/java/io/NotActiveException.java \ +classpath/java/io/NotSerializableException.java \ +classpath/java/io/ObjectInput.java \ +java/io/ObjectInputStream.java \ +classpath/java/io/ObjectInputValidation.java \ +classpath/java/io/ObjectOutput.java \ +classpath/java/io/ObjectOutputStream.java \ +java/io/ObjectStreamClass.java \ +classpath/java/io/ObjectStreamConstants.java \ +classpath/java/io/ObjectStreamException.java \ +classpath/java/io/ObjectStreamField.java \ +classpath/java/io/OptionalDataException.java \ +classpath/java/io/OutputStream.java \ +java/io/OutputStreamWriter.java \ +classpath/java/io/PipedInputStream.java \ +classpath/java/io/PipedOutputStream.java \ +classpath/java/io/PipedReader.java \ +classpath/java/io/PipedWriter.java \ +java/io/PrintStream.java \ +classpath/java/io/PrintWriter.java \ +classpath/java/io/PushbackInputStream.java \ +classpath/java/io/PushbackReader.java \ +java/io/RandomAccessFile.java \ +classpath/java/io/Reader.java \ +classpath/java/io/SequenceInputStream.java \ +classpath/java/io/Serializable.java \ +classpath/java/io/SerializablePermission.java \ +classpath/java/io/StreamCorruptedException.java \ +classpath/java/io/StreamTokenizer.java \ +classpath/java/io/StringBufferInputStream.java \ +classpath/java/io/StringReader.java \ +classpath/java/io/StringWriter.java \ +classpath/java/io/SyncFailedException.java \ +classpath/java/io/UTFDataFormatException.java \ +classpath/java/io/UnsupportedEncodingException.java \ +java/io/VMObjectStreamClass.java \ +classpath/java/io/WriteAbortedException.java \ +classpath/java/io/Writer.java + +java_io_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(java_io_source_files)))) +java_lang_source_files = \ +classpath/java/lang/AbstractMethodError.java \ +classpath/java/lang/Appendable.java \ +classpath/java/lang/ArithmeticException.java \ +classpath/java/lang/ArrayIndexOutOfBoundsException.java \ +classpath/java/lang/ArrayStoreException.java \ +classpath/java/lang/AssertionError.java \ +classpath/java/lang/Boolean.java \ +classpath/java/lang/Byte.java \ +classpath/java/lang/CharSequence.java \ +java/lang/Character.java \ +classpath/java/lang/ClassCastException.java \ +classpath/java/lang/ClassCircularityError.java \ +classpath/java/lang/ClassFormatError.java \ +java/lang/ClassLoader.java \ +classpath/java/lang/ClassNotFoundException.java \ +classpath/java/lang/CloneNotSupportedException.java \ +classpath/java/lang/Cloneable.java \ +classpath/java/lang/Comparable.java \ +classpath/java/lang/Compiler.java \ +java/lang/ConcreteProcess.java \ +java/lang/Double.java \ +classpath/java/lang/Error.java \ +classpath/java/lang/Exception.java \ +classpath/java/lang/ExceptionInInitializerError.java \ +java/lang/Float.java \ +classpath/java/lang/IllegalAccessError.java \ +classpath/java/lang/IllegalAccessException.java \ +classpath/java/lang/IllegalArgumentException.java \ +classpath/java/lang/IllegalMonitorStateException.java \ +classpath/java/lang/IllegalStateException.java \ +classpath/java/lang/IllegalThreadStateException.java \ +classpath/java/lang/IncompatibleClassChangeError.java \ +classpath/java/lang/IndexOutOfBoundsException.java \ +java/lang/InheritableThreadLocal.java \ +classpath/java/lang/InstantiationError.java \ +classpath/java/lang/InstantiationException.java \ +classpath/java/lang/Integer.java \ +classpath/java/lang/InternalError.java \ +classpath/java/lang/InterruptedException.java \ +classpath/java/lang/LinkageError.java \ +classpath/java/lang/Long.java \ +classpath/java/lang/Math.java \ +classpath/java/lang/NegativeArraySizeException.java \ +classpath/java/lang/NoClassDefFoundError.java \ +classpath/java/lang/NoSuchFieldError.java \ +classpath/java/lang/NoSuchFieldException.java \ +classpath/java/lang/NoSuchMethodError.java \ +classpath/java/lang/NoSuchMethodException.java \ +classpath/java/lang/NullPointerException.java \ +classpath/java/lang/Number.java \ +classpath/java/lang/NumberFormatException.java \ +classpath/java/lang/OutOfMemoryError.java \ +java/lang/Package.java \ +classpath/java/lang/Process.java \ +classpath/java/lang/Readable.java \ +classpath/java/lang/Runnable.java \ +java/lang/Runtime.java \ +classpath/java/lang/RuntimeException.java \ +classpath/java/lang/RuntimePermission.java \ +classpath/java/lang/SecurityException.java \ +java/lang/SecurityManager.java \ +classpath/java/lang/Short.java \ +classpath/java/lang/StackOverflowError.java \ +classpath/java/lang/StackTraceElement.java \ +classpath/java/lang/StrictMath.java \ +java/lang/String.java \ +java/lang/StringBuffer.java \ +java/lang/StringBuilder.java \ +classpath/java/lang/StringIndexOutOfBoundsException.java \ +java/lang/System.java \ +java/lang/Thread.java \ +classpath/java/lang/ThreadDeath.java \ +classpath/java/lang/ThreadGroup.java \ +java/lang/ThreadLocal.java \ +classpath/java/lang/Throwable.java \ +classpath/java/lang/TypeNotPresentException.java \ +classpath/java/lang/UnknownError.java \ +classpath/java/lang/UnsatisfiedLinkError.java \ +classpath/java/lang/UnsupportedClassVersionError.java \ +classpath/java/lang/UnsupportedOperationException.java \ +java/lang/VMClassLoader.java \ +java/lang/VMCompiler.java \ +java/lang/VMSecurityManager.java \ +java/lang/VMThrowable.java \ +classpath/java/lang/VerifyError.java \ +classpath/java/lang/VirtualMachineError.java \ +classpath/java/lang/Void.java + +java_lang_header_files = $(filter-out java/lang/Object.h java/lang/Class.h,$(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(java_lang_source_files))))) +java_lang_annotation_source_files = \ +classpath/java/lang/annotation/AnnotationFormatError.java \ +classpath/java/lang/annotation/AnnotationTypeMismatchException.java + +java_lang_annotation_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_lang_annotation_source_files))) +java_lang_ref_source_files = \ +classpath/java/lang/ref/PhantomReference.java \ java/lang/ref/Reference.java \ -java/lang/ref/ReferenceQueue.java \ -java/lang/ref/SoftReference.java \ -java/lang/ref/WeakReference.java \ -java/lang/reflect/AccessibleObject.java \ +classpath/java/lang/ref/ReferenceQueue.java \ +classpath/java/lang/ref/SoftReference.java \ +classpath/java/lang/ref/WeakReference.java + +java_lang_ref_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(java_lang_ref_source_files)))) +java_lang_reflect_source_files = \ +classpath/java/lang/reflect/AccessibleObject.java \ java/lang/reflect/Array.java \ java/lang/reflect/Constructor.java \ java/lang/reflect/Field.java \ -java/lang/reflect/InvocationHandler.java \ -java/lang/reflect/InvocationTargetException.java \ -java/lang/reflect/Member.java \ +classpath/java/lang/reflect/GenericArrayType.java \ +classpath/java/lang/reflect/GenericSignatureFormatError.java \ +classpath/java/lang/reflect/InvocationHandler.java \ +classpath/java/lang/reflect/InvocationTargetException.java \ +classpath/java/lang/reflect/Member.java \ java/lang/reflect/Method.java \ -java/lang/reflect/Modifier.java \ -java/lang/reflect/Proxy.java \ -java/lang/reflect/ReflectPermission.java \ -java/lang/reflect/UndeclaredThrowableException.java \ -java/math/BigDecimal.java \ -java/math/BigInteger.java \ -java/net/Authenticator.java \ -java/net/BindException.java \ -java/net/ConnectException.java \ -java/net/ContentHandler.java \ -java/net/ContentHandlerFactory.java \ -java/net/DatagramPacket.java \ -java/net/DatagramSocket.java \ -java/net/DatagramSocketImpl.java \ -java/net/DatagramSocketImplFactory.java \ -java/net/FileNameMap.java \ -java/net/HttpURLConnection.java \ -java/net/Inet4Address.java \ -java/net/Inet6Address.java \ +java/lang/reflect/Modifier.java \ +classpath/java/lang/reflect/ParameterizedType.java \ +classpath/java/lang/reflect/Proxy.java \ +classpath/java/lang/reflect/ReflectPermission.java \ +classpath/java/lang/reflect/Type.java \ +classpath/java/lang/reflect/UndeclaredThrowableException.java \ +classpath/java/lang/reflect/WildcardType.java + +java_lang_reflect_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(java_lang_reflect_source_files)))) +java_math_source_files = \ +classpath/java/math/BigDecimal.java \ +classpath/java/math/BigInteger.java + +java_math_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_math_source_files))) +java_net_source_files = \ +classpath/java/net/Authenticator.java \ +classpath/java/net/BindException.java \ +classpath/java/net/ConnectException.java \ +classpath/java/net/ContentHandler.java \ +classpath/java/net/ContentHandlerFactory.java \ +classpath/java/net/DatagramPacket.java \ +classpath/java/net/DatagramSocket.java \ +classpath/java/net/DatagramSocketImpl.java \ +classpath/java/net/DatagramSocketImplFactory.java \ +classpath/java/net/FileNameMap.java \ +classpath/java/net/HttpURLConnection.java \ +classpath/java/net/Inet4Address.java \ +classpath/java/net/Inet6Address.java \ java/net/InetAddress.java \ -java/net/InetSocketAddress.java \ +classpath/java/net/InetSocketAddress.java \ java/net/JarURLConnection.java \ -java/net/MalformedURLException.java \ -java/net/MulticastSocket.java \ -java/net/NetPermission.java \ -java/net/NetworkInterface.java \ -java/net/NoRouteToHostException.java \ -java/net/PasswordAuthentication.java \ -java/net/PortUnreachableException.java \ -java/net/ProtocolException.java \ +classpath/java/net/MalformedURLException.java \ +classpath/java/net/MimeTypeMapper.java \ +classpath/java/net/MulticastSocket.java \ +classpath/java/net/NetPermission.java \ +classpath/java/net/NetworkInterface.java \ +classpath/java/net/NoRouteToHostException.java \ +classpath/java/net/PasswordAuthentication.java \ +classpath/java/net/PortUnreachableException.java \ +classpath/java/net/ProtocolException.java \ java/net/ServerSocket.java \ -java/net/Socket.java \ -java/net/SocketAddress.java \ -java/net/SocketException.java \ -java/net/SocketImpl.java \ -java/net/SocketImplFactory.java \ -java/net/SocketOptions.java \ -java/net/SocketPermission.java \ -java/net/SocketTimeoutException.java \ -java/net/URI.java \ -java/net/URISyntaxException.java \ +classpath/java/net/Socket.java \ +classpath/java/net/SocketAddress.java \ +classpath/java/net/SocketException.java \ +classpath/java/net/SocketImpl.java \ +classpath/java/net/SocketImplFactory.java \ +classpath/java/net/SocketOptions.java \ +classpath/java/net/SocketPermission.java \ +classpath/java/net/SocketTimeoutException.java \ +classpath/java/net/URI.java \ +classpath/java/net/URISyntaxException.java \ java/net/URL.java \ java/net/URLClassLoader.java \ java/net/URLConnection.java \ -java/net/URLDecoder.java \ -java/net/URLEncoder.java \ -java/net/URLStreamHandler.java \ -java/net/URLStreamHandlerFactory.java \ -java/net/UnknownHostException.java \ -java/net/UnknownServiceException.java \ -java/net/VMNetworkInterface.java \ +classpath/java/net/URLDecoder.java \ +classpath/java/net/URLEncoder.java \ +classpath/java/net/URLStreamHandler.java \ +classpath/java/net/URLStreamHandlerFactory.java \ +classpath/java/net/UnknownHostException.java \ +classpath/java/net/UnknownServiceException.java \ +java/net/VMNetworkInterface.java + +java_net_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(java_net_source_files)))) +java_nio_source_files = \ java/nio/Buffer.java \ -java/nio/BufferOverflowException.java \ -java/nio/BufferUnderflowException.java \ -java/nio/ByteBuffer.java \ -java/nio/ByteBufferHelper.java \ -java/nio/ByteBufferImpl.java \ -java/nio/ByteOrder.java \ -java/nio/CharBuffer.java \ -java/nio/CharBufferImpl.java \ -java/nio/CharViewBufferImpl.java \ +classpath/java/nio/BufferOverflowException.java \ +classpath/java/nio/BufferUnderflowException.java \ +classpath/java/nio/ByteBuffer.java \ +classpath/java/nio/ByteBufferHelper.java \ +classpath/java/nio/ByteBufferImpl.java \ +classpath/java/nio/ByteOrder.java \ +classpath/java/nio/CharBuffer.java \ +classpath/java/nio/CharBufferImpl.java \ +classpath/java/nio/CharViewBufferImpl.java \ java/nio/DirectByteBufferImpl.java \ -java/nio/DoubleBuffer.java \ -java/nio/DoubleBufferImpl.java \ -java/nio/DoubleViewBufferImpl.java \ -java/nio/FloatBuffer.java \ -java/nio/FloatBufferImpl.java \ -java/nio/FloatViewBufferImpl.java \ -java/nio/IntBuffer.java \ -java/nio/IntBufferImpl.java \ -java/nio/IntViewBufferImpl.java \ -java/nio/InvalidMarkException.java \ -java/nio/LongBuffer.java \ -java/nio/LongBufferImpl.java \ -java/nio/LongViewBufferImpl.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/InvalidMarkException.java \ +classpath/java/nio/LongBuffer.java \ +classpath/java/nio/LongBufferImpl.java \ +classpath/java/nio/LongViewBufferImpl.java \ java/nio/MappedByteBuffer.java \ java/nio/MappedByteBufferImpl.java \ -java/nio/ReadOnlyBufferException.java \ -java/nio/ShortBuffer.java \ -java/nio/ShortBufferImpl.java \ -java/nio/ShortViewBufferImpl.java \ -java/nio/VMDirectByteBuffer.java \ -java/nio/channels/AlreadyConnectedException.java \ -java/nio/channels/AsynchronousCloseException.java \ -java/nio/channels/ByteChannel.java \ -java/nio/channels/CancelledKeyException.java \ -java/nio/channels/Channel.java \ +classpath/java/nio/ReadOnlyBufferException.java \ +classpath/java/nio/ShortBuffer.java \ +classpath/java/nio/ShortBufferImpl.java \ +classpath/java/nio/ShortViewBufferImpl.java \ +java/nio/VMDirectByteBuffer.java + +java_nio_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(java_nio_source_files)))) +java_nio_channels_source_files = \ +classpath/java/nio/channels/AlreadyConnectedException.java \ +classpath/java/nio/channels/AsynchronousCloseException.java \ +classpath/java/nio/channels/ByteChannel.java \ +classpath/java/nio/channels/CancelledKeyException.java \ +classpath/java/nio/channels/Channel.java \ java/nio/channels/Channels.java \ -java/nio/channels/ClosedByInterruptException.java \ -java/nio/channels/ClosedChannelException.java \ -java/nio/channels/ClosedSelectorException.java \ -java/nio/channels/ConnectionPendingException.java \ -java/nio/channels/DatagramChannel.java \ -java/nio/channels/FileChannel.java \ -java/nio/channels/FileLock.java \ -java/nio/channels/FileLockInterruptionException.java \ -java/nio/channels/GatheringByteChannel.java \ -java/nio/channels/IllegalBlockingModeException.java \ -java/nio/channels/IllegalSelectorException.java \ -java/nio/channels/InterruptibleChannel.java \ -java/nio/channels/NoConnectionPendingException.java \ -java/nio/channels/NonReadableChannelException.java \ -java/nio/channels/NonWritableChannelException.java \ -java/nio/channels/NotYetBoundException.java \ -java/nio/channels/NotYetConnectedException.java \ -java/nio/channels/OverlappingFileLockException.java \ -java/nio/channels/Pipe.java \ -java/nio/channels/ReadableByteChannel.java \ -java/nio/channels/ScatteringByteChannel.java \ -java/nio/channels/SelectableChannel.java \ -java/nio/channels/SelectionKey.java \ -java/nio/channels/Selector.java \ -java/nio/channels/ServerSocketChannel.java \ -java/nio/channels/SocketChannel.java \ -java/nio/channels/UnresolvedAddressException.java \ -java/nio/channels/UnsupportedAddressTypeException.java \ -java/nio/channels/WritableByteChannel.java \ -java/nio/channels/spi/AbstractInterruptibleChannel.java \ -java/nio/channels/spi/AbstractSelectableChannel.java \ -java/nio/channels/spi/AbstractSelectionKey.java \ -java/nio/channels/spi/AbstractSelector.java \ -java/nio/channels/spi/SelectorProvider.java \ -java/nio/charset/CharacterCodingException.java \ +classpath/java/nio/channels/ClosedByInterruptException.java \ +classpath/java/nio/channels/ClosedChannelException.java \ +classpath/java/nio/channels/ClosedSelectorException.java \ +classpath/java/nio/channels/ConnectionPendingException.java \ +classpath/java/nio/channels/DatagramChannel.java \ +classpath/java/nio/channels/FileChannel.java \ +classpath/java/nio/channels/FileLock.java \ +classpath/java/nio/channels/FileLockInterruptionException.java \ +classpath/java/nio/channels/GatheringByteChannel.java \ +classpath/java/nio/channels/IllegalBlockingModeException.java \ +classpath/java/nio/channels/IllegalSelectorException.java \ +classpath/java/nio/channels/InterruptibleChannel.java \ +classpath/java/nio/channels/NoConnectionPendingException.java \ +classpath/java/nio/channels/NonReadableChannelException.java \ +classpath/java/nio/channels/NonWritableChannelException.java \ +classpath/java/nio/channels/NotYetBoundException.java \ +classpath/java/nio/channels/NotYetConnectedException.java \ +classpath/java/nio/channels/OverlappingFileLockException.java \ +classpath/java/nio/channels/Pipe.java \ +classpath/java/nio/channels/ReadableByteChannel.java \ +classpath/java/nio/channels/ScatteringByteChannel.java \ +classpath/java/nio/channels/SelectableChannel.java \ +classpath/java/nio/channels/SelectionKey.java \ +classpath/java/nio/channels/Selector.java \ +classpath/java/nio/channels/ServerSocketChannel.java \ +classpath/java/nio/channels/SocketChannel.java \ +classpath/java/nio/channels/UnresolvedAddressException.java \ +classpath/java/nio/channels/UnsupportedAddressTypeException.java \ +classpath/java/nio/channels/WritableByteChannel.java + +java_nio_channels_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(java_nio_channels_source_files)))) +java_nio_channels_spi_source_files = \ +classpath/java/nio/channels/spi/AbstractInterruptibleChannel.java \ +classpath/java/nio/channels/spi/AbstractSelectableChannel.java \ +classpath/java/nio/channels/spi/AbstractSelectionKey.java \ +classpath/java/nio/channels/spi/AbstractSelector.java \ +classpath/java/nio/channels/spi/SelectorProvider.java + +java_nio_channels_spi_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_nio_channels_spi_source_files))) +java_nio_charset_source_files = \ +classpath/java/nio/charset/CharacterCodingException.java \ java/nio/charset/Charset.java \ -java/nio/charset/CharsetDecoder.java \ -java/nio/charset/CharsetEncoder.java \ -java/nio/charset/CoderMalfunctionError.java \ -java/nio/charset/CoderResult.java \ -java/nio/charset/CodingErrorAction.java \ -java/nio/charset/IllegalCharsetNameException.java \ -java/nio/charset/MalformedInputException.java \ -java/nio/charset/UnmappableCharacterException.java \ -java/nio/charset/UnsupportedCharsetException.java \ -java/nio/charset/spi/CharsetProvider.java \ +classpath/java/nio/charset/CharsetDecoder.java \ +classpath/java/nio/charset/CharsetEncoder.java \ +classpath/java/nio/charset/CoderMalfunctionError.java \ +classpath/java/nio/charset/CoderResult.java \ +classpath/java/nio/charset/CodingErrorAction.java \ +classpath/java/nio/charset/IllegalCharsetNameException.java \ +classpath/java/nio/charset/MalformedInputException.java \ +classpath/java/nio/charset/UnmappableCharacterException.java \ +classpath/java/nio/charset/UnsupportedCharsetException.java + +java_nio_charset_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(java_nio_charset_source_files)))) +java_nio_charset_spi_source_files = \ +classpath/java/nio/charset/spi/CharsetProvider.java + +java_nio_charset_spi_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_nio_charset_spi_source_files))) +java_rmi_source_files = \ +classpath/java/rmi/AccessException.java \ +classpath/java/rmi/AlreadyBoundException.java \ +classpath/java/rmi/ConnectException.java \ +classpath/java/rmi/ConnectIOException.java \ +classpath/java/rmi/MarshalException.java \ +classpath/java/rmi/MarshalledObject.java \ +classpath/java/rmi/Naming.java \ +classpath/java/rmi/NoSuchObjectException.java \ +classpath/java/rmi/NotBoundException.java \ +classpath/java/rmi/RMISecurityException.java \ +classpath/java/rmi/RMISecurityManager.java \ +classpath/java/rmi/Remote.java \ +classpath/java/rmi/RemoteException.java \ +classpath/java/rmi/ServerError.java \ +classpath/java/rmi/ServerException.java \ +classpath/java/rmi/ServerRuntimeException.java \ +classpath/java/rmi/StubNotFoundException.java \ +classpath/java/rmi/UnexpectedException.java \ +classpath/java/rmi/UnknownHostException.java \ +classpath/java/rmi/UnmarshalException.java + +java_rmi_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_rmi_source_files))) +java_rmi_activation_source_files = \ +classpath/java/rmi/activation/Activatable.java \ +classpath/java/rmi/activation/ActivateFailedException.java \ +classpath/java/rmi/activation/ActivationDesc.java \ +classpath/java/rmi/activation/ActivationException.java \ +classpath/java/rmi/activation/ActivationGroup.java \ +classpath/java/rmi/activation/ActivationGroupDesc.java \ +classpath/java/rmi/activation/ActivationGroupID.java \ +classpath/java/rmi/activation/ActivationID.java \ +classpath/java/rmi/activation/ActivationInstantiator.java \ +classpath/java/rmi/activation/ActivationMonitor.java \ +classpath/java/rmi/activation/ActivationSystem.java \ +classpath/java/rmi/activation/Activator.java \ +classpath/java/rmi/activation/UnknownGroupException.java \ +classpath/java/rmi/activation/UnknownObjectException.java + +java_rmi_activation_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_rmi_activation_source_files))) +java_rmi_dgc_source_files = \ +classpath/java/rmi/dgc/DGC.java \ +classpath/java/rmi/dgc/Lease.java \ +classpath/java/rmi/dgc/VMID.java + +java_rmi_dgc_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_rmi_dgc_source_files))) +java_rmi_registry_source_files = \ +classpath/java/rmi/registry/LocateRegistry.java \ +classpath/java/rmi/registry/Registry.java \ +classpath/java/rmi/registry/RegistryHandler.java + +java_rmi_registry_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_rmi_registry_source_files))) +java_rmi_server_source_files = \ +classpath/java/rmi/server/ExportException.java \ +classpath/java/rmi/server/LoaderHandler.java \ +classpath/java/rmi/server/LogStream.java \ +classpath/java/rmi/server/ObjID.java \ +classpath/java/rmi/server/Operation.java \ +classpath/java/rmi/server/RMIClassLoader.java \ +classpath/java/rmi/server/RMIClassLoaderSpi.java \ +classpath/java/rmi/server/RMIClientSocketFactory.java \ +classpath/java/rmi/server/RMIFailureHandler.java \ +classpath/java/rmi/server/RMIServerSocketFactory.java \ +classpath/java/rmi/server/RMISocketFactory.java \ +classpath/java/rmi/server/RemoteCall.java \ +classpath/java/rmi/server/RemoteObject.java \ +classpath/java/rmi/server/RemoteRef.java \ +classpath/java/rmi/server/RemoteServer.java \ +classpath/java/rmi/server/RemoteStub.java \ +classpath/java/rmi/server/ServerCloneException.java \ +classpath/java/rmi/server/ServerNotActiveException.java \ +classpath/java/rmi/server/ServerRef.java \ +classpath/java/rmi/server/Skeleton.java \ +classpath/java/rmi/server/SkeletonMismatchException.java \ +classpath/java/rmi/server/SkeletonNotFoundException.java \ +classpath/java/rmi/server/SocketSecurityException.java \ +classpath/java/rmi/server/UID.java \ +classpath/java/rmi/server/UnicastRemoteObject.java \ +classpath/java/rmi/server/Unreferenced.java + +java_rmi_server_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_rmi_server_source_files))) +java_security_source_files = \ java/security/AccessControlContext.java \ -java/security/AccessControlException.java \ +classpath/java/security/AccessControlException.java \ java/security/AccessController.java \ -java/security/AlgorithmParameterGenerator.java \ -java/security/AlgorithmParameterGeneratorSpi.java \ -java/security/AlgorithmParameters.java \ -java/security/AlgorithmParametersSpi.java \ -java/security/AllPermission.java \ -java/security/BasicPermission.java \ -java/security/Certificate.java \ -java/security/CodeSource.java \ -java/security/DigestException.java \ -java/security/DigestInputStream.java \ -java/security/DigestOutputStream.java \ -java/security/DomainCombiner.java \ -java/security/DummyKeyPairGenerator.java \ -java/security/DummyMessageDigest.java \ -java/security/DummySignature.java \ -java/security/GeneralSecurityException.java \ -java/security/Guard.java \ -java/security/GuardedObject.java \ -java/security/Identity.java \ -java/security/IdentityScope.java \ -java/security/InvalidAlgorithmParameterException.java \ -java/security/InvalidKeyException.java \ -java/security/InvalidParameterException.java \ -java/security/Key.java \ -java/security/KeyException.java \ -java/security/KeyFactory.java \ -java/security/KeyFactorySpi.java \ -java/security/KeyManagementException.java \ -java/security/KeyPair.java \ -java/security/KeyPairGenerator.java \ -java/security/KeyPairGeneratorSpi.java \ -java/security/KeyStore.java \ -java/security/KeyStoreException.java \ -java/security/KeyStoreSpi.java \ -java/security/MessageDigest.java \ -java/security/MessageDigestSpi.java \ -java/security/NoSuchAlgorithmException.java \ -java/security/NoSuchProviderException.java \ -java/security/Permission.java \ -java/security/PermissionCollection.java \ -java/security/Permissions.java \ -java/security/Policy.java \ -java/security/Principal.java \ -java/security/PrivateKey.java \ -java/security/PrivilegedAction.java \ -java/security/PrivilegedActionException.java \ -java/security/PrivilegedExceptionAction.java \ -java/security/ProtectionDomain.java \ -java/security/Provider.java \ -java/security/ProviderException.java \ -java/security/PublicKey.java \ -java/security/SecureClassLoader.java \ -java/security/SecureRandom.java \ -java/security/SecureRandomSpi.java \ -java/security/Security.java \ -java/security/SecurityPermission.java \ -java/security/Signature.java \ -java/security/SignatureException.java \ -java/security/SignatureSpi.java \ -java/security/SignedObject.java \ -java/security/Signer.java \ -java/security/UnrecoverableKeyException.java \ -java/security/UnresolvedPermission.java \ -java/security/acl/Acl.java \ -java/security/acl/AclEntry.java \ -java/security/acl/AclNotFoundException.java \ -java/security/acl/Group.java \ -java/security/acl/LastOwnerException.java \ -java/security/acl/NotOwnerException.java \ -java/security/acl/Owner.java \ -java/security/acl/Permission.java \ -java/security/cert/CRL.java \ -java/security/cert/CRLException.java \ -java/security/cert/CRLSelector.java \ -java/security/cert/CertPath.java \ -java/security/cert/CertPathBuilder.java \ -java/security/cert/CertPathBuilderException.java \ -java/security/cert/CertPathBuilderResult.java \ -java/security/cert/CertPathBuilderSpi.java \ -java/security/cert/CertPathParameters.java \ -java/security/cert/CertPathValidator.java \ -java/security/cert/CertPathValidatorException.java \ -java/security/cert/CertPathValidatorResult.java \ -java/security/cert/CertPathValidatorSpi.java \ -java/security/cert/CertSelector.java \ -java/security/cert/CertStore.java \ -java/security/cert/CertStoreException.java \ -java/security/cert/CertStoreParameters.java \ -java/security/cert/CertStoreSpi.java \ -java/security/cert/Certificate.java \ -java/security/cert/CertificateEncodingException.java \ -java/security/cert/CertificateException.java \ -java/security/cert/CertificateExpiredException.java \ -java/security/cert/CertificateFactory.java \ -java/security/cert/CertificateFactorySpi.java \ -java/security/cert/CertificateNotYetValidException.java \ -java/security/cert/CertificateParsingException.java \ -java/security/cert/CollectionCertStoreParameters.java \ -java/security/cert/LDAPCertStoreParameters.java \ -java/security/cert/PKIXBuilderParameters.java \ -java/security/cert/PKIXCertPathBuilderResult.java \ -java/security/cert/PKIXCertPathChecker.java \ -java/security/cert/PKIXCertPathValidatorResult.java \ -java/security/cert/PKIXParameters.java \ -java/security/cert/PolicyNode.java \ -java/security/cert/PolicyQualifierInfo.java \ -java/security/cert/TrustAnchor.java \ -java/security/cert/X509CRL.java \ -java/security/cert/X509CRLEntry.java \ -java/security/cert/X509CRLSelector.java \ -java/security/cert/X509CertSelector.java \ -java/security/cert/X509Certificate.java \ -java/security/cert/X509Extension.java \ -java/security/interfaces/DSAKey.java \ -java/security/interfaces/DSAKeyPairGenerator.java \ -java/security/interfaces/DSAParams.java \ -java/security/interfaces/DSAPrivateKey.java \ -java/security/interfaces/DSAPublicKey.java \ -java/security/interfaces/RSAKey.java \ -java/security/interfaces/RSAMultiPrimePrivateCrtKey.java \ -java/security/interfaces/RSAPrivateCrtKey.java \ -java/security/interfaces/RSAPrivateKey.java \ -java/security/interfaces/RSAPublicKey.java \ -java/security/spec/AlgorithmParameterSpec.java \ -java/security/spec/DSAParameterSpec.java \ -java/security/spec/DSAPrivateKeySpec.java \ -java/security/spec/DSAPublicKeySpec.java \ -java/security/spec/EncodedKeySpec.java \ -java/security/spec/InvalidKeySpecException.java \ -java/security/spec/InvalidParameterSpecException.java \ -java/security/spec/KeySpec.java \ -java/security/spec/PKCS8EncodedKeySpec.java \ -java/security/spec/PSSParameterSpec.java \ -java/security/spec/RSAKeyGenParameterSpec.java \ -java/security/spec/RSAMultiPrimePrivateCrtKeySpec.java\ -java/security/spec/RSAOtherPrimeInfo.java \ -java/security/spec/RSAPrivateCrtKeySpec.java \ -java/security/spec/RSAPrivateKeySpec.java \ -java/security/spec/RSAPublicKeySpec.java \ -java/security/spec/X509EncodedKeySpec.java \ -java/sql/Array.java \ -java/sql/BatchUpdateException.java \ -java/sql/Blob.java \ -java/sql/CallableStatement.java \ -java/sql/Clob.java \ -java/sql/Connection.java \ -java/sql/DataTruncation.java \ -java/sql/DatabaseMetaData.java \ -java/sql/Date.java \ -java/sql/Driver.java \ -java/sql/DriverManager.java \ -java/sql/DriverPropertyInfo.java \ -java/sql/ParameterMetaData.java \ -java/sql/PreparedStatement.java \ -java/sql/Ref.java \ -java/sql/ResultSet.java \ -java/sql/ResultSetMetaData.java \ -java/sql/SQLData.java \ -java/sql/SQLException.java \ -java/sql/SQLInput.java \ -java/sql/SQLOutput.java \ -java/sql/SQLPermission.java \ -java/sql/SQLWarning.java \ -java/sql/Savepoint.java \ -java/sql/Statement.java \ -java/sql/Struct.java \ -java/sql/Time.java \ -java/sql/Timestamp.java \ -java/sql/Types.java \ -java/text/Annotation.java \ -java/text/AttributedCharacterIterator.java \ -java/text/AttributedString.java \ -java/text/AttributedStringIterator.java \ -java/text/BreakIterator.java \ -java/text/CharacterIterator.java \ -java/text/ChoiceFormat.java \ -java/text/CollationElementIterator.java \ -java/text/CollationKey.java \ -java/text/Collator.java \ +classpath/java/security/AlgorithmParameterGenerator.java \ +classpath/java/security/AlgorithmParameterGeneratorSpi.java \ +classpath/java/security/AlgorithmParameters.java \ +classpath/java/security/AlgorithmParametersSpi.java \ +classpath/java/security/AllPermission.java \ +classpath/java/security/BasicPermission.java \ +classpath/java/security/Certificate.java \ +classpath/java/security/CodeSource.java \ +classpath/java/security/DigestException.java \ +classpath/java/security/DigestInputStream.java \ +classpath/java/security/DigestOutputStream.java \ +classpath/java/security/DomainCombiner.java \ +classpath/java/security/DummyKeyPairGenerator.java \ +classpath/java/security/DummyMessageDigest.java \ +classpath/java/security/DummySignature.java \ +classpath/java/security/GeneralSecurityException.java \ +classpath/java/security/Guard.java \ +classpath/java/security/GuardedObject.java \ +classpath/java/security/Identity.java \ +classpath/java/security/IdentityScope.java \ +classpath/java/security/IntersectingDomainCombiner.java \ +classpath/java/security/InvalidAlgorithmParameterException.java \ +classpath/java/security/InvalidKeyException.java \ +classpath/java/security/InvalidParameterException.java \ +classpath/java/security/Key.java \ +classpath/java/security/KeyException.java \ +classpath/java/security/KeyFactory.java \ +classpath/java/security/KeyFactorySpi.java \ +classpath/java/security/KeyManagementException.java \ +classpath/java/security/KeyPair.java \ +classpath/java/security/KeyPairGenerator.java \ +classpath/java/security/KeyPairGeneratorSpi.java \ +classpath/java/security/KeyStore.java \ +classpath/java/security/KeyStoreException.java \ +classpath/java/security/KeyStoreSpi.java \ +classpath/java/security/MessageDigest.java \ +classpath/java/security/MessageDigestSpi.java \ +classpath/java/security/NoSuchAlgorithmException.java \ +classpath/java/security/NoSuchProviderException.java \ +classpath/java/security/Permission.java \ +classpath/java/security/PermissionCollection.java \ +classpath/java/security/Permissions.java \ +classpath/java/security/Policy.java \ +classpath/java/security/Principal.java \ +classpath/java/security/PrivateKey.java \ +classpath/java/security/PrivilegedAction.java \ +classpath/java/security/PrivilegedActionException.java \ +classpath/java/security/PrivilegedExceptionAction.java \ +classpath/java/security/ProtectionDomain.java \ +classpath/java/security/Provider.java \ +classpath/java/security/ProviderException.java \ +classpath/java/security/PublicKey.java \ +classpath/java/security/SecureClassLoader.java \ +classpath/java/security/SecureRandom.java \ +classpath/java/security/SecureRandomSpi.java \ +classpath/java/security/Security.java \ +classpath/java/security/SecurityPermission.java \ +classpath/java/security/Signature.java \ +classpath/java/security/SignatureException.java \ +classpath/java/security/SignatureSpi.java \ +classpath/java/security/SignedObject.java \ +classpath/java/security/Signer.java \ +classpath/java/security/UnrecoverableKeyException.java \ +classpath/java/security/UnresolvedPermission.java + +java_security_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(java_security_source_files)))) +java_security_acl_source_files = \ +classpath/java/security/acl/Acl.java \ +classpath/java/security/acl/AclEntry.java \ +classpath/java/security/acl/AclNotFoundException.java \ +classpath/java/security/acl/Group.java \ +classpath/java/security/acl/LastOwnerException.java \ +classpath/java/security/acl/NotOwnerException.java \ +classpath/java/security/acl/Owner.java \ +classpath/java/security/acl/Permission.java + +java_security_acl_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_security_acl_source_files))) +java_security_cert_source_files = \ +classpath/java/security/cert/CRL.java \ +classpath/java/security/cert/CRLException.java \ +classpath/java/security/cert/CRLSelector.java \ +classpath/java/security/cert/CertPath.java \ +classpath/java/security/cert/CertPathBuilder.java \ +classpath/java/security/cert/CertPathBuilderException.java \ +classpath/java/security/cert/CertPathBuilderResult.java \ +classpath/java/security/cert/CertPathBuilderSpi.java \ +classpath/java/security/cert/CertPathParameters.java \ +classpath/java/security/cert/CertPathValidator.java \ +classpath/java/security/cert/CertPathValidatorException.java \ +classpath/java/security/cert/CertPathValidatorResult.java \ +classpath/java/security/cert/CertPathValidatorSpi.java \ +classpath/java/security/cert/CertSelector.java \ +classpath/java/security/cert/CertStore.java \ +classpath/java/security/cert/CertStoreException.java \ +classpath/java/security/cert/CertStoreParameters.java \ +classpath/java/security/cert/CertStoreSpi.java \ +classpath/java/security/cert/Certificate.java \ +classpath/java/security/cert/CertificateEncodingException.java \ +classpath/java/security/cert/CertificateException.java \ +classpath/java/security/cert/CertificateExpiredException.java \ +classpath/java/security/cert/CertificateFactory.java \ +classpath/java/security/cert/CertificateFactorySpi.java \ +classpath/java/security/cert/CertificateNotYetValidException.java \ +classpath/java/security/cert/CertificateParsingException.java \ +classpath/java/security/cert/CollectionCertStoreParameters.java \ +classpath/java/security/cert/LDAPCertStoreParameters.java \ +classpath/java/security/cert/PKIXBuilderParameters.java \ +classpath/java/security/cert/PKIXCertPathBuilderResult.java \ +classpath/java/security/cert/PKIXCertPathChecker.java \ +classpath/java/security/cert/PKIXCertPathValidatorResult.java \ +classpath/java/security/cert/PKIXParameters.java \ +classpath/java/security/cert/PolicyNode.java \ +classpath/java/security/cert/PolicyQualifierInfo.java \ +classpath/java/security/cert/TrustAnchor.java \ +classpath/java/security/cert/X509CRL.java \ +classpath/java/security/cert/X509CRLEntry.java \ +classpath/java/security/cert/X509CRLSelector.java \ +classpath/java/security/cert/X509CertSelector.java \ +classpath/java/security/cert/X509Certificate.java \ +classpath/java/security/cert/X509Extension.java + +java_security_cert_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_security_cert_source_files))) +java_security_interfaces_source_files = \ +classpath/java/security/interfaces/DSAKey.java \ +classpath/java/security/interfaces/DSAKeyPairGenerator.java \ +classpath/java/security/interfaces/DSAParams.java \ +classpath/java/security/interfaces/DSAPrivateKey.java \ +classpath/java/security/interfaces/DSAPublicKey.java \ +classpath/java/security/interfaces/RSAKey.java \ +classpath/java/security/interfaces/RSAMultiPrimePrivateCrtKey.java \ +classpath/java/security/interfaces/RSAPrivateCrtKey.java \ +classpath/java/security/interfaces/RSAPrivateKey.java \ +classpath/java/security/interfaces/RSAPublicKey.java + +java_security_interfaces_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_security_interfaces_source_files))) +java_security_spec_source_files = \ +classpath/java/security/spec/AlgorithmParameterSpec.java \ +classpath/java/security/spec/DSAParameterSpec.java \ +classpath/java/security/spec/DSAPrivateKeySpec.java \ +classpath/java/security/spec/DSAPublicKeySpec.java \ +classpath/java/security/spec/EncodedKeySpec.java \ +classpath/java/security/spec/InvalidKeySpecException.java \ +classpath/java/security/spec/InvalidParameterSpecException.java \ +classpath/java/security/spec/KeySpec.java \ +classpath/java/security/spec/PKCS8EncodedKeySpec.java \ +classpath/java/security/spec/PSSParameterSpec.java \ +classpath/java/security/spec/RSAKeyGenParameterSpec.java \ +classpath/java/security/spec/RSAMultiPrimePrivateCrtKeySpec.java \ +classpath/java/security/spec/RSAOtherPrimeInfo.java \ +classpath/java/security/spec/RSAPrivateCrtKeySpec.java \ +classpath/java/security/spec/RSAPrivateKeySpec.java \ +classpath/java/security/spec/RSAPublicKeySpec.java \ +classpath/java/security/spec/X509EncodedKeySpec.java + +java_security_spec_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_security_spec_source_files))) +java_sql_source_files = \ +classpath/java/sql/Array.java \ +classpath/java/sql/BatchUpdateException.java \ +classpath/java/sql/Blob.java \ +classpath/java/sql/CallableStatement.java \ +classpath/java/sql/Clob.java \ +classpath/java/sql/Connection.java \ +classpath/java/sql/DataTruncation.java \ +classpath/java/sql/DatabaseMetaData.java \ +classpath/java/sql/Date.java \ +classpath/java/sql/Driver.java \ +classpath/java/sql/DriverManager.java \ +classpath/java/sql/DriverPropertyInfo.java \ +classpath/java/sql/ParameterMetaData.java \ +classpath/java/sql/PreparedStatement.java \ +classpath/java/sql/Ref.java \ +classpath/java/sql/ResultSet.java \ +classpath/java/sql/ResultSetMetaData.java \ +classpath/java/sql/SQLData.java \ +classpath/java/sql/SQLException.java \ +classpath/java/sql/SQLInput.java \ +classpath/java/sql/SQLOutput.java \ +classpath/java/sql/SQLPermission.java \ +classpath/java/sql/SQLWarning.java \ +classpath/java/sql/Savepoint.java \ +classpath/java/sql/Statement.java \ +classpath/java/sql/Struct.java \ +classpath/java/sql/Time.java \ +classpath/java/sql/Timestamp.java \ +classpath/java/sql/Types.java + +java_sql_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_sql_source_files))) +java_text_source_files = \ +classpath/java/text/Annotation.java \ +classpath/java/text/AttributedCharacterIterator.java \ +classpath/java/text/AttributedString.java \ +classpath/java/text/AttributedStringIterator.java \ +classpath/java/text/BreakIterator.java \ +classpath/java/text/CharacterIterator.java \ +classpath/java/text/ChoiceFormat.java \ +classpath/java/text/CollationElementIterator.java \ +classpath/java/text/CollationKey.java \ +java/text/Collator.java \ java/text/DateFormat.java \ java/text/DateFormatSymbols.java \ -java/text/DecimalFormat.java \ +classpath/java/text/DecimalFormat.java \ java/text/DecimalFormatSymbols.java \ -java/text/FieldPosition.java \ -java/text/Format.java \ -java/text/MessageFormat.java \ -java/text/NumberFormat.java \ -java/text/ParseException.java \ -java/text/ParsePosition.java \ -java/text/RuleBasedCollator.java \ -java/text/SimpleDateFormat.java \ -java/text/StringCharacterIterator.java \ -java/util/jar/Attributes.java \ -java/util/jar/JarEntry.java \ -java/util/jar/JarException.java \ -java/util/jar/JarFile.java \ -java/util/jar/JarInputStream.java \ -java/util/jar/JarOutputStream.java \ -java/util/jar/Manifest.java \ -java/util/zip/Adler32.java \ -java/util/zip/CRC32.java \ -java/util/zip/CheckedInputStream.java \ -java/util/zip/CheckedOutputStream.java \ -java/util/zip/Checksum.java \ -java/util/zip/DataFormatException.java \ +classpath/java/text/FieldPosition.java \ +classpath/java/text/Format.java \ +classpath/java/text/MessageFormat.java \ +classpath/java/text/NumberFormat.java \ +classpath/java/text/ParseException.java \ +classpath/java/text/ParsePosition.java \ +classpath/java/text/RuleBasedCollator.java \ +java/text/SimpleDateFormat.java \ +classpath/java/text/StringCharacterIterator.java + +java_text_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(java_text_source_files)))) +java_util_source_files = \ +classpath/java/util/AbstractCollection.java \ +classpath/java/util/AbstractList.java \ +classpath/java/util/AbstractMap.java \ +classpath/java/util/AbstractSequentialList.java \ +classpath/java/util/AbstractSet.java \ +classpath/java/util/ArrayList.java \ +classpath/java/util/Arrays.java \ +classpath/java/util/BitSet.java \ +java/util/Calendar.java \ +classpath/java/util/Collection.java \ +classpath/java/util/Collections.java \ +classpath/java/util/Comparator.java \ +classpath/java/util/ConcurrentModificationException.java \ +java/util/Currency.java \ +java/util/Date.java \ +classpath/java/util/Dictionary.java \ +classpath/java/util/EmptyStackException.java \ +classpath/java/util/Enumeration.java \ +classpath/java/util/EventListener.java \ +classpath/java/util/EventListenerProxy.java \ +classpath/java/util/EventObject.java \ +java/util/GregorianCalendar.java \ +classpath/java/util/HashMap.java \ +classpath/java/util/HashSet.java \ +classpath/java/util/Hashtable.java \ +classpath/java/util/IdentityHashMap.java \ +classpath/java/util/Iterator.java \ +classpath/java/util/LinkedHashMap.java \ +classpath/java/util/LinkedHashSet.java \ +classpath/java/util/LinkedList.java \ +classpath/java/util/List.java \ +classpath/java/util/ListIterator.java \ +classpath/java/util/ListResourceBundle.java \ +java/util/Locale.java \ +classpath/java/util/LocaleData.java \ +classpath/java/util/Map.java \ +classpath/java/util/MissingResourceException.java \ +classpath/java/util/NoSuchElementException.java \ +classpath/java/util/Observable.java \ +classpath/java/util/Observer.java \ +classpath/java/util/Properties.java \ +classpath/java/util/PropertyPermission.java \ +classpath/java/util/PropertyPermissionCollection.java \ +classpath/java/util/PropertyResourceBundle.java \ +classpath/java/util/Random.java \ +classpath/java/util/RandomAccess.java \ +java/util/ResourceBundle.java \ +classpath/java/util/Set.java \ +java/util/SimpleTimeZone.java \ +classpath/java/util/SortedMap.java \ +classpath/java/util/SortedSet.java \ +classpath/java/util/Stack.java \ +classpath/java/util/StringTokenizer.java \ +classpath/java/util/TimeZone.java \ +classpath/java/util/Timer.java \ +classpath/java/util/TimerTask.java \ +classpath/java/util/TooManyListenersException.java \ +classpath/java/util/TreeMap.java \ +classpath/java/util/TreeSet.java \ +java/util/VMTimeZone.java \ +classpath/java/util/Vector.java \ +classpath/java/util/WeakHashMap.java + +java_util_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(java_util_source_files)))) +java_util_jar_source_files = \ +classpath/java/util/jar/Attributes.java \ +classpath/java/util/jar/JarEntry.java \ +classpath/java/util/jar/JarException.java \ +classpath/java/util/jar/JarFile.java \ +classpath/java/util/jar/JarInputStream.java \ +classpath/java/util/jar/JarOutputStream.java \ +classpath/java/util/jar/Manifest.java + +java_util_jar_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_util_jar_source_files))) +java_util_logging_source_files = \ +classpath/java/util/logging/ConsoleHandler.java \ +classpath/java/util/logging/ErrorManager.java \ +classpath/java/util/logging/FileHandler.java \ +classpath/java/util/logging/Filter.java \ +classpath/java/util/logging/Formatter.java \ +classpath/java/util/logging/Handler.java \ +classpath/java/util/logging/Level.java \ +java/util/logging/LogManager.java \ +classpath/java/util/logging/LogRecord.java \ +java/util/logging/Logger.java \ +classpath/java/util/logging/LoggingPermission.java \ +classpath/java/util/logging/MemoryHandler.java \ +classpath/java/util/logging/SimpleFormatter.java \ +classpath/java/util/logging/SocketHandler.java \ +classpath/java/util/logging/StreamHandler.java \ +classpath/java/util/logging/XMLFormatter.java + +java_util_logging_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(java_util_logging_source_files)))) +java_util_prefs_source_files = \ +classpath/java/util/prefs/AbstractPreferences.java \ +classpath/java/util/prefs/BackingStoreException.java \ +classpath/java/util/prefs/InvalidPreferencesFormatException.java \ +classpath/java/util/prefs/NodeChangeEvent.java \ +classpath/java/util/prefs/NodeChangeListener.java \ +classpath/java/util/prefs/PreferenceChangeEvent.java \ +classpath/java/util/prefs/PreferenceChangeListener.java \ +classpath/java/util/prefs/Preferences.java \ +classpath/java/util/prefs/PreferencesFactory.java + +java_util_prefs_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_util_prefs_source_files))) +java_util_regex_source_files = \ +classpath/java/util/regex/Matcher.java \ +classpath/java/util/regex/Pattern.java \ +classpath/java/util/regex/PatternSyntaxException.java + +java_util_regex_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(java_util_regex_source_files))) +java_util_zip_source_files = \ +classpath/java/util/zip/Adler32.java \ +classpath/java/util/zip/CRC32.java \ +classpath/java/util/zip/CheckedInputStream.java \ +classpath/java/util/zip/CheckedOutputStream.java \ +classpath/java/util/zip/Checksum.java \ +classpath/java/util/zip/DataFormatException.java \ java/util/zip/Deflater.java \ -java/util/zip/DeflaterOutputStream.java \ +java/util/zip/DeflaterOutputStream.java \ java/util/zip/GZIPInputStream.java \ java/util/zip/GZIPOutputStream.java \ java/util/zip/Inflater.java \ java/util/zip/InflaterInputStream.java \ -java/util/zip/ZipConstants.java \ +classpath/java/util/zip/ZipConstants.java \ java/util/zip/ZipEntry.java \ -java/util/zip/ZipException.java \ +classpath/java/util/zip/ZipException.java \ java/util/zip/ZipFile.java \ -java/util/zip/ZipInputStream.java \ -java/util/zip/ZipOutputStream.java \ -$(rmi_java_source_files) \ -$(awt_java_source_files) \ -$(convert_source_files) \ -$(javax_source_files) \ -$(org_source_files) +classpath/java/util/zip/ZipInputStream.java \ +classpath/java/util/zip/ZipOutputStream.java -java_source_files = $(special_java_source_files) $(ordinary_java_source_files) -math_c_source_files = \ - java/lang/dtoa.c java/lang/k_rem_pio2.c java/lang/s_tan.c \ - java/lang/e_acos.c java/lang/k_sin.c java/lang/strtod.c \ - java/lang/e_asin.c java/lang/k_tan.c java/lang/w_acos.c \ - java/lang/e_atan2.c java/lang/mprec.c java/lang/w_asin.c \ - java/lang/e_exp.c java/lang/s_atan.c java/lang/w_atan2.c \ - java/lang/e_fmod.c java/lang/s_ceil.c java/lang/w_exp.c \ - java/lang/e_log.c java/lang/s_copysign.c java/lang/w_fmod.c \ - java/lang/e_pow.c java/lang/s_cos.c java/lang/w_log.c \ - java/lang/e_rem_pio2.c java/lang/s_fabs.c java/lang/w_pow.c \ - java/lang/e_remainder.c java/lang/s_floor.c java/lang/w_remainder.c \ - java/lang/e_scalb.c java/lang/s_rint.c java/lang/w_sqrt.c \ - java/lang/e_sqrt.c java/lang/s_scalbn.c java/lang/sf_rint.c \ - java/lang/k_cos.c java/lang/s_sin.c java/lang/sf_fabs.c +java_util_zip_header_files = $(patsubst classpath/%,%,$(patsubst ./%,%,$(patsubst %.java,%.h,$(java_util_zip_source_files)))) +javax_accessibility_source_files = \ +classpath/javax/accessibility/Accessible.java \ +classpath/javax/accessibility/AccessibleAction.java \ +classpath/javax/accessibility/AccessibleBundle.java \ +classpath/javax/accessibility/AccessibleComponent.java \ +classpath/javax/accessibility/AccessibleContext.java \ +classpath/javax/accessibility/AccessibleEditableText.java \ +classpath/javax/accessibility/AccessibleExtendedComponent.java \ +classpath/javax/accessibility/AccessibleExtendedTable.java \ +classpath/javax/accessibility/AccessibleHyperlink.java \ +classpath/javax/accessibility/AccessibleHypertext.java \ +classpath/javax/accessibility/AccessibleIcon.java \ +classpath/javax/accessibility/AccessibleKeyBinding.java \ +classpath/javax/accessibility/AccessibleRelation.java \ +classpath/javax/accessibility/AccessibleRelationSet.java \ +classpath/javax/accessibility/AccessibleResourceBundle.java \ +classpath/javax/accessibility/AccessibleRole.java \ +classpath/javax/accessibility/AccessibleSelection.java \ +classpath/javax/accessibility/AccessibleState.java \ +classpath/javax/accessibility/AccessibleStateSet.java \ +classpath/javax/accessibility/AccessibleTable.java \ +classpath/javax/accessibility/AccessibleTableModelChange.java \ +classpath/javax/accessibility/AccessibleText.java \ +classpath/javax/accessibility/AccessibleValue.java +javax_accessibility_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_accessibility_source_files))) +javax_crypto_source_files = \ +classpath/javax/crypto/BadPaddingException.java \ +classpath/javax/crypto/Cipher.java \ +classpath/javax/crypto/CipherInputStream.java \ +classpath/javax/crypto/CipherOutputStream.java \ +classpath/javax/crypto/CipherSpi.java \ +classpath/javax/crypto/EncryptedPrivateKeyInfo.java \ +classpath/javax/crypto/ExemptionMechanism.java \ +classpath/javax/crypto/ExemptionMechanismException.java \ +classpath/javax/crypto/ExemptionMechanismSpi.java \ +classpath/javax/crypto/IllegalBlockSizeException.java \ +classpath/javax/crypto/KeyAgreement.java \ +classpath/javax/crypto/KeyAgreementSpi.java \ +classpath/javax/crypto/KeyGenerator.java \ +classpath/javax/crypto/KeyGeneratorSpi.java \ +classpath/javax/crypto/Mac.java \ +classpath/javax/crypto/MacSpi.java \ +classpath/javax/crypto/NoSuchPaddingException.java \ +classpath/javax/crypto/NullCipher.java \ +classpath/javax/crypto/NullCipherImpl.java \ +classpath/javax/crypto/SealedObject.java \ +classpath/javax/crypto/SecretKey.java \ +classpath/javax/crypto/SecretKeyFactory.java \ +classpath/javax/crypto/SecretKeyFactorySpi.java \ +classpath/javax/crypto/ShortBufferException.java + +javax_crypto_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_crypto_source_files))) +javax_crypto_interfaces_source_files = \ +classpath/javax/crypto/interfaces/DHKey.java \ +classpath/javax/crypto/interfaces/DHPrivateKey.java \ +classpath/javax/crypto/interfaces/DHPublicKey.java \ +classpath/javax/crypto/interfaces/PBEKey.java + +javax_crypto_interfaces_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_crypto_interfaces_source_files))) +javax_crypto_spec_source_files = \ +classpath/javax/crypto/spec/DESKeySpec.java \ +classpath/javax/crypto/spec/DESedeKeySpec.java \ +classpath/javax/crypto/spec/DHGenParameterSpec.java \ +classpath/javax/crypto/spec/DHParameterSpec.java \ +classpath/javax/crypto/spec/DHPrivateKeySpec.java \ +classpath/javax/crypto/spec/DHPublicKeySpec.java \ +classpath/javax/crypto/spec/IvParameterSpec.java \ +classpath/javax/crypto/spec/PBEKeySpec.java \ +classpath/javax/crypto/spec/PBEParameterSpec.java \ +classpath/javax/crypto/spec/RC2ParameterSpec.java \ +classpath/javax/crypto/spec/RC5ParameterSpec.java \ +classpath/javax/crypto/spec/SecretKeySpec.java + +javax_crypto_spec_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_crypto_spec_source_files))) +javax_imageio_source_files = \ +classpath/javax/imageio/IIOException.java \ +classpath/javax/imageio/IIOImage.java \ +classpath/javax/imageio/IIOParam.java \ +classpath/javax/imageio/IIOParamController.java \ +classpath/javax/imageio/ImageIO.java \ +classpath/javax/imageio/ImageReadParam.java \ +classpath/javax/imageio/ImageReader.java \ +classpath/javax/imageio/ImageTranscoder.java \ +classpath/javax/imageio/ImageTypeSpecifier.java \ +classpath/javax/imageio/ImageWriteParam.java \ +classpath/javax/imageio/ImageWriter.java \ +classpath/javax/imageio/event/IIOReadProgressListener.java \ +classpath/javax/imageio/event/IIOReadUpdateListener.java \ +classpath/javax/imageio/event/IIOReadWarningListener.java \ +classpath/javax/imageio/event/IIOWriteProgressListener.java \ +classpath/javax/imageio/event/IIOWriteWarningListener.java \ +classpath/javax/imageio/metadata/IIOAttr.java \ +classpath/javax/imageio/metadata/IIOInvalidTreeException.java \ +classpath/javax/imageio/metadata/IIOMetadata.java \ +classpath/javax/imageio/metadata/IIOMetadataController.java \ +classpath/javax/imageio/metadata/IIOMetadataFormat.java \ +classpath/javax/imageio/metadata/IIOMetadataFormatImpl.java \ +classpath/javax/imageio/metadata/IIOMetadataNode.java \ +classpath/javax/imageio/metadata/IIONamedNodeMap.java \ +classpath/javax/imageio/metadata/IIONodeList.java \ +classpath/javax/imageio/spi/IIORegistry.java \ +classpath/javax/imageio/spi/IIOServiceProvider.java \ +classpath/javax/imageio/spi/ImageInputStreamSpi.java \ +classpath/javax/imageio/spi/ImageOutputStreamSpi.java \ +classpath/javax/imageio/spi/ImageReaderSpi.java \ +classpath/javax/imageio/spi/ImageReaderWriterSpi.java \ +classpath/javax/imageio/spi/ImageTranscoderSpi.java \ +classpath/javax/imageio/spi/ImageWriterSpi.java \ +classpath/javax/imageio/spi/RegisterableService.java \ +classpath/javax/imageio/spi/ServiceRegistry.java \ +classpath/javax/imageio/stream/FileCacheImageInputStream.java \ +classpath/javax/imageio/stream/FileCacheImageOutputStream.java \ +classpath/javax/imageio/stream/FileImageInputStream.java \ +classpath/javax/imageio/stream/FileImageOutputStream.java \ +classpath/javax/imageio/stream/IIOByteBuffer.java \ +classpath/javax/imageio/stream/ImageInputStream.java \ +classpath/javax/imageio/stream/ImageInputStreamImpl.java \ +classpath/javax/imageio/stream/ImageOutputStream.java \ +classpath/javax/imageio/stream/ImageOutputStreamImpl.java \ +classpath/javax/imageio/stream/MemoryCacheImageInputStream.java \ +classpath/javax/imageio/stream/MemoryCacheImageOutputStream.java + +javax_naming_source_files = \ +classpath/javax/naming/AuthenticationException.java \ +classpath/javax/naming/AuthenticationNotSupportedException.java \ +classpath/javax/naming/BinaryRefAddr.java \ +classpath/javax/naming/Binding.java \ +classpath/javax/naming/CannotProceedException.java \ +classpath/javax/naming/CommunicationException.java \ +classpath/javax/naming/CompositeName.java \ +classpath/javax/naming/CompoundName.java \ +classpath/javax/naming/ConfigurationException.java \ +classpath/javax/naming/Context.java \ +classpath/javax/naming/ContextNotEmptyException.java \ +classpath/javax/naming/InitialContext.java \ +classpath/javax/naming/InsufficientResourcesException.java \ +classpath/javax/naming/InterruptedNamingException.java \ +classpath/javax/naming/InvalidNameException.java \ +classpath/javax/naming/LimitExceededException.java \ +classpath/javax/naming/LinkException.java \ +classpath/javax/naming/LinkLoopException.java \ +classpath/javax/naming/LinkRef.java \ +classpath/javax/naming/MalformedLinkException.java \ +classpath/javax/naming/Name.java \ +classpath/javax/naming/NameAlreadyBoundException.java \ +classpath/javax/naming/NameClassPair.java \ +classpath/javax/naming/NameNotFoundException.java \ +classpath/javax/naming/NameParser.java \ +classpath/javax/naming/NamingEnumeration.java \ +classpath/javax/naming/NamingException.java \ +classpath/javax/naming/NamingSecurityException.java \ +classpath/javax/naming/NoInitialContextException.java \ +classpath/javax/naming/NoPermissionException.java \ +classpath/javax/naming/NotContextException.java \ +classpath/javax/naming/OperationNotSupportedException.java \ +classpath/javax/naming/PartialResultException.java \ +classpath/javax/naming/RefAddr.java \ +classpath/javax/naming/Reference.java \ +classpath/javax/naming/Referenceable.java \ +classpath/javax/naming/ReferralException.java \ +classpath/javax/naming/ServiceUnavailableException.java \ +classpath/javax/naming/SizeLimitExceededException.java \ +classpath/javax/naming/StringRefAddr.java \ +classpath/javax/naming/TimeLimitExceededException.java + +javax_naming_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_naming_source_files))) +javax_naming_directory_source_files = \ +classpath/javax/naming/directory/Attribute.java \ +classpath/javax/naming/directory/AttributeInUseException.java \ +classpath/javax/naming/directory/AttributeModificationException.java \ +classpath/javax/naming/directory/Attributes.java \ +classpath/javax/naming/directory/BasicAttribute.java \ +classpath/javax/naming/directory/BasicAttributes.java \ +classpath/javax/naming/directory/DirContext.java \ +classpath/javax/naming/directory/InitialDirContext.java \ +classpath/javax/naming/directory/InvalidAttributeIdentifierException.java \ +classpath/javax/naming/directory/InvalidAttributeValueException.java \ +classpath/javax/naming/directory/InvalidAttributesException.java \ +classpath/javax/naming/directory/InvalidSearchControlsException.java \ +classpath/javax/naming/directory/InvalidSearchFilterException.java \ +classpath/javax/naming/directory/ModificationItem.java \ +classpath/javax/naming/directory/NoSuchAttributeException.java \ +classpath/javax/naming/directory/SchemaViolationException.java \ +classpath/javax/naming/directory/SearchControls.java \ +classpath/javax/naming/directory/SearchResult.java + +javax_naming_directory_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_naming_directory_source_files))) +javax_naming_event_source_files = \ +classpath/javax/naming/event/EventContext.java \ +classpath/javax/naming/event/EventDirContext.java \ +classpath/javax/naming/event/NamespaceChangeListener.java \ +classpath/javax/naming/event/NamingEvent.java \ +classpath/javax/naming/event/NamingExceptionEvent.java \ +classpath/javax/naming/event/NamingListener.java \ +classpath/javax/naming/event/ObjectChangeListener.java + +javax_naming_event_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_naming_event_source_files))) +javax_naming_ldap_source_files = \ +classpath/javax/naming/ldap/Control.java \ +classpath/javax/naming/ldap/ControlFactory.java \ +classpath/javax/naming/ldap/ExtendedRequest.java \ +classpath/javax/naming/ldap/ExtendedResponse.java \ +classpath/javax/naming/ldap/HasControls.java \ +classpath/javax/naming/ldap/InitialLdapContext.java \ +classpath/javax/naming/ldap/LdapContext.java \ +classpath/javax/naming/ldap/LdapReferralException.java \ +classpath/javax/naming/ldap/UnsolicitedNotification.java \ +classpath/javax/naming/ldap/UnsolicitedNotificationEvent.java \ +classpath/javax/naming/ldap/UnsolicitedNotificationListener.java + +javax_naming_ldap_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_naming_ldap_source_files))) +javax_naming_spi_source_files = \ +classpath/javax/naming/spi/DirObjectFactory.java \ +classpath/javax/naming/spi/DirStateFactory.java \ +classpath/javax/naming/spi/DirectoryManager.java \ +classpath/javax/naming/spi/InitialContextFactory.java \ +classpath/javax/naming/spi/InitialContextFactoryBuilder.java \ +classpath/javax/naming/spi/NamingManager.java \ +classpath/javax/naming/spi/ObjectFactory.java \ +classpath/javax/naming/spi/ObjectFactoryBuilder.java \ +classpath/javax/naming/spi/ResolveResult.java \ +classpath/javax/naming/spi/Resolver.java \ +classpath/javax/naming/spi/StateFactory.java + +javax_naming_spi_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_naming_spi_source_files))) +javax_net_source_files = \ +classpath/javax/net/ServerSocketFactory.java \ +classpath/javax/net/SocketFactory.java \ +classpath/javax/net/VanillaServerSocketFactory.java \ +classpath/javax/net/VanillaSocketFactory.java + +javax_net_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_net_source_files))) +javax_net_ssl_source_files = \ +classpath/javax/net/ssl/HandshakeCompletedEvent.java \ +classpath/javax/net/ssl/HandshakeCompletedListener.java \ +classpath/javax/net/ssl/HostnameVerifier.java \ +classpath/javax/net/ssl/HttpsURLConnection.java \ +classpath/javax/net/ssl/KeyManager.java \ +classpath/javax/net/ssl/KeyManagerFactory.java \ +classpath/javax/net/ssl/KeyManagerFactorySpi.java \ +classpath/javax/net/ssl/ManagerFactoryParameters.java \ +classpath/javax/net/ssl/SSLContext.java \ +classpath/javax/net/ssl/SSLContextSpi.java \ +classpath/javax/net/ssl/SSLException.java \ +classpath/javax/net/ssl/SSLHandshakeException.java \ +classpath/javax/net/ssl/SSLKeyException.java \ +classpath/javax/net/ssl/SSLPeerUnverifiedException.java \ +classpath/javax/net/ssl/SSLPermission.java \ +classpath/javax/net/ssl/SSLProtocolException.java \ +classpath/javax/net/ssl/SSLServerSocket.java \ +classpath/javax/net/ssl/SSLServerSocketFactory.java \ +classpath/javax/net/ssl/SSLSession.java \ +classpath/javax/net/ssl/SSLSessionBindingEvent.java \ +classpath/javax/net/ssl/SSLSessionBindingListener.java \ +classpath/javax/net/ssl/SSLSessionContext.java \ +classpath/javax/net/ssl/SSLSocket.java \ +classpath/javax/net/ssl/SSLSocketFactory.java \ +classpath/javax/net/ssl/TrivialHostnameVerifier.java \ +classpath/javax/net/ssl/TrustManager.java \ +classpath/javax/net/ssl/TrustManagerFactory.java \ +classpath/javax/net/ssl/TrustManagerFactorySpi.java \ +classpath/javax/net/ssl/X509KeyManager.java \ +classpath/javax/net/ssl/X509TrustManager.java + +javax_net_ssl_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_net_ssl_source_files))) +javax_print_source_files = \ +classpath/javax/print/AttributeException.java \ +classpath/javax/print/CancelablePrintJob.java \ +classpath/javax/print/Doc.java \ +classpath/javax/print/DocFlavor.java \ +classpath/javax/print/DocPrintJob.java \ +classpath/javax/print/FlavorException.java \ +classpath/javax/print/MultiDoc.java \ +classpath/javax/print/MultiDocPrintJob.java \ +classpath/javax/print/MultiDocPrintService.java \ +classpath/javax/print/PrintException.java \ +classpath/javax/print/PrintService.java \ +classpath/javax/print/PrintServiceLookup.java \ +classpath/javax/print/ServiceUIFactory.java \ +classpath/javax/print/StreamPrintService.java \ +classpath/javax/print/URIException.java + +javax_print_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_print_source_files))) +javax_print_attribute_source_files = \ +classpath/javax/print/attribute/Attribute.java \ +classpath/javax/print/attribute/AttributeSet.java \ +classpath/javax/print/attribute/AttributeSetUtilities.java \ +classpath/javax/print/attribute/DateTimeSyntax.java \ +classpath/javax/print/attribute/DocAttribute.java \ +classpath/javax/print/attribute/DocAttributeSet.java \ +classpath/javax/print/attribute/EnumSyntax.java \ +classpath/javax/print/attribute/HashAttributeSet.java \ +classpath/javax/print/attribute/HashDocAttributeSet.java \ +classpath/javax/print/attribute/HashPrintJobAttributeSet.java \ +classpath/javax/print/attribute/HashPrintRequestAttributeSet.java \ +classpath/javax/print/attribute/HashPrintServiceAttributeSet.java \ +classpath/javax/print/attribute/IntegerSyntax.java \ +classpath/javax/print/attribute/PrintJobAttribute.java \ +classpath/javax/print/attribute/PrintJobAttributeSet.java \ +classpath/javax/print/attribute/PrintRequestAttribute.java \ +classpath/javax/print/attribute/PrintRequestAttributeSet.java \ +classpath/javax/print/attribute/PrintServiceAttribute.java \ +classpath/javax/print/attribute/PrintServiceAttributeSet.java \ +classpath/javax/print/attribute/ResolutionSyntax.java \ +classpath/javax/print/attribute/SetOfIntegerSyntax.java \ +classpath/javax/print/attribute/Size2DSyntax.java \ +classpath/javax/print/attribute/SupportedValuesAttribute.java \ +classpath/javax/print/attribute/TextSyntax.java \ +classpath/javax/print/attribute/URISyntax.java \ +classpath/javax/print/attribute/UnmodifiableSetException.java + +javax_print_attribute_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_print_attribute_source_files))) +javax_print_attribute_standard_source_files = \ +classpath/javax/print/attribute/standard/Chromaticity.java \ +classpath/javax/print/attribute/standard/ColorSupported.java \ +classpath/javax/print/attribute/standard/Compression.java \ +classpath/javax/print/attribute/standard/Copies.java \ +classpath/javax/print/attribute/standard/CopiesSupported.java \ +classpath/javax/print/attribute/standard/DateTimeAtCompleted.java \ +classpath/javax/print/attribute/standard/DateTimeAtCreation.java \ +classpath/javax/print/attribute/standard/DateTimeAtProcessing.java \ +classpath/javax/print/attribute/standard/Destination.java \ +classpath/javax/print/attribute/standard/DocumentName.java \ +classpath/javax/print/attribute/standard/Fidelity.java \ +classpath/javax/print/attribute/standard/Finishings.java \ +classpath/javax/print/attribute/standard/JobHoldUntil.java \ +classpath/javax/print/attribute/standard/JobImpressions.java \ +classpath/javax/print/attribute/standard/JobImpressionsCompleted.java \ +classpath/javax/print/attribute/standard/JobImpressionsSupported.java \ +classpath/javax/print/attribute/standard/JobKOctets.java \ +classpath/javax/print/attribute/standard/JobKOctetsProcessed.java \ +classpath/javax/print/attribute/standard/JobKOctetsSupported.java \ +classpath/javax/print/attribute/standard/JobMediaSheets.java \ +classpath/javax/print/attribute/standard/JobMediaSheetsCompleted.java \ +classpath/javax/print/attribute/standard/JobMediaSheetsSupported.java \ +classpath/javax/print/attribute/standard/JobMessageFromOperator.java \ +classpath/javax/print/attribute/standard/JobName.java \ +classpath/javax/print/attribute/standard/JobOriginatingUserName.java \ +classpath/javax/print/attribute/standard/JobPriority.java \ +classpath/javax/print/attribute/standard/JobPrioritySupported.java \ +classpath/javax/print/attribute/standard/JobSheets.java \ +classpath/javax/print/attribute/standard/JobState.java \ +classpath/javax/print/attribute/standard/JobStateReason.java \ +classpath/javax/print/attribute/standard/JobStateReasons.java \ +classpath/javax/print/attribute/standard/Media.java \ +classpath/javax/print/attribute/standard/MediaPrintableArea.java \ +classpath/javax/print/attribute/standard/MediaSize.java \ +classpath/javax/print/attribute/standard/MediaSizeName.java \ +classpath/javax/print/attribute/standard/MultipleDocumentHandling.java \ +classpath/javax/print/attribute/standard/NumberOfDocuments.java \ +classpath/javax/print/attribute/standard/NumberOfInterveningJobs.java \ +classpath/javax/print/attribute/standard/NumberUp.java \ +classpath/javax/print/attribute/standard/NumberUpSupported.java \ +classpath/javax/print/attribute/standard/OrientationRequested.java \ +classpath/javax/print/attribute/standard/OutputDeviceAssigned.java \ +classpath/javax/print/attribute/standard/PDLOverrideSupported.java \ +classpath/javax/print/attribute/standard/PageRanges.java \ +classpath/javax/print/attribute/standard/PagesPerMinute.java \ +classpath/javax/print/attribute/standard/PagesPerMinuteColor.java \ +classpath/javax/print/attribute/standard/PresentationDirection.java \ +classpath/javax/print/attribute/standard/PrintQuality.java \ +classpath/javax/print/attribute/standard/PrinterInfo.java \ +classpath/javax/print/attribute/standard/PrinterIsAcceptingJobs.java \ +classpath/javax/print/attribute/standard/PrinterLocation.java \ +classpath/javax/print/attribute/standard/PrinterMakeAndModel.java \ +classpath/javax/print/attribute/standard/PrinterMessageFromOperator.java \ +classpath/javax/print/attribute/standard/PrinterMoreInfo.java \ +classpath/javax/print/attribute/standard/PrinterMoreInfoManufacturer.java \ +classpath/javax/print/attribute/standard/PrinterName.java \ +classpath/javax/print/attribute/standard/PrinterResolution.java \ +classpath/javax/print/attribute/standard/PrinterState.java \ +classpath/javax/print/attribute/standard/PrinterStateReason.java \ +classpath/javax/print/attribute/standard/PrinterStateReasons.java \ +classpath/javax/print/attribute/standard/PrinterURI.java \ +classpath/javax/print/attribute/standard/QueuedJobCount.java \ +classpath/javax/print/attribute/standard/ReferenceUriSchemesSupported.java \ +classpath/javax/print/attribute/standard/RequestingUserName.java \ +classpath/javax/print/attribute/standard/Severity.java \ +classpath/javax/print/attribute/standard/SheetCollate.java \ +classpath/javax/print/attribute/standard/Sides.java + +javax_print_attribute_standard_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_print_attribute_standard_source_files))) +javax_print_event_source_files = \ +classpath/javax/print/event/PrintEvent.java \ +classpath/javax/print/event/PrintJobAdapter.java \ +classpath/javax/print/event/PrintJobAttributeEvent.java \ +classpath/javax/print/event/PrintJobAttributeListener.java \ +classpath/javax/print/event/PrintJobEvent.java \ +classpath/javax/print/event/PrintJobListener.java \ +classpath/javax/print/event/PrintServiceAttributeEvent.java \ +classpath/javax/print/event/PrintServiceAttributeListener.java + +javax_print_event_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_print_event_source_files))) +javax_security_auth_source_files = \ +classpath/javax/security/auth/AuthPermission.java \ +classpath/javax/security/auth/DestroyFailedException.java \ +classpath/javax/security/auth/Destroyable.java \ +classpath/javax/security/auth/Policy.java \ +classpath/javax/security/auth/PrivateCredentialPermission.java \ +classpath/javax/security/auth/RefreshFailedException.java \ +classpath/javax/security/auth/Refreshable.java \ +classpath/javax/security/auth/Subject.java \ +classpath/javax/security/auth/SubjectDomainCombiner.java + +javax_security_auth_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_security_auth_source_files))) +javax_security_auth_callback_source_files = \ +classpath/javax/security/auth/callback/Callback.java \ +classpath/javax/security/auth/callback/CallbackHandler.java \ +classpath/javax/security/auth/callback/ChoiceCallback.java \ +classpath/javax/security/auth/callback/ConfirmationCallback.java \ +classpath/javax/security/auth/callback/LanguageCallback.java \ +classpath/javax/security/auth/callback/NameCallback.java \ +classpath/javax/security/auth/callback/PasswordCallback.java \ +classpath/javax/security/auth/callback/TextInputCallback.java \ +classpath/javax/security/auth/callback/TextOutputCallback.java \ +classpath/javax/security/auth/callback/UnsupportedCallbackException.java + +javax_security_auth_callback_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_security_auth_callback_source_files))) +javax_security_auth_login_source_files = \ +classpath/javax/security/auth/login/AccountExpiredException.java \ +classpath/javax/security/auth/login/AppConfigurationEntry.java \ +classpath/javax/security/auth/login/Configuration.java \ +classpath/javax/security/auth/login/CredentialExpiredException.java \ +classpath/javax/security/auth/login/FailedLoginException.java \ +classpath/javax/security/auth/login/LoginContext.java \ +classpath/javax/security/auth/login/LoginException.java \ +classpath/javax/security/auth/login/NullConfiguration.java + +javax_security_auth_login_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_security_auth_login_source_files))) +javax_security_auth_spi_source_files = \ +classpath/javax/security/auth/spi/LoginModule.java + +javax_security_auth_spi_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_security_auth_spi_source_files))) +javax_security_auth_x500_source_files = \ +classpath/javax/security/auth/x500/X500Principal.java \ +classpath/javax/security/auth/x500/X500PrivateCredential.java + +javax_security_auth_x500_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_security_auth_x500_source_files))) +javax_security_cert_source_files = \ +classpath/javax/security/cert/Certificate.java \ +classpath/javax/security/cert/CertificateEncodingException.java \ +classpath/javax/security/cert/CertificateException.java \ +classpath/javax/security/cert/CertificateExpiredException.java \ +classpath/javax/security/cert/CertificateNotYetValidException.java \ +classpath/javax/security/cert/CertificateParsingException.java \ +classpath/javax/security/cert/X509CertBridge.java \ +classpath/javax/security/cert/X509Certificate.java + +javax_security_cert_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_security_cert_source_files))) +javax_security_sasl_source_files = \ +classpath/javax/security/sasl/AuthenticationException.java \ +classpath/javax/security/sasl/AuthorizeCallback.java \ +classpath/javax/security/sasl/RealmCallback.java \ +classpath/javax/security/sasl/RealmChoiceCallback.java \ +classpath/javax/security/sasl/Sasl.java \ +classpath/javax/security/sasl/SaslClient.java \ +classpath/javax/security/sasl/SaslClientFactory.java \ +classpath/javax/security/sasl/SaslException.java \ +classpath/javax/security/sasl/SaslServer.java \ +classpath/javax/security/sasl/SaslServerFactory.java + +javax_security_sasl_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_security_sasl_source_files))) +javax_sql_source_files = \ +classpath/javax/sql/ConnectionEvent.java \ +classpath/javax/sql/ConnectionEventListener.java \ +classpath/javax/sql/ConnectionPoolDataSource.java \ +classpath/javax/sql/DataSource.java \ +classpath/javax/sql/PooledConnection.java \ +classpath/javax/sql/RowSet.java \ +classpath/javax/sql/RowSetEvent.java \ +classpath/javax/sql/RowSetInternal.java \ +classpath/javax/sql/RowSetListener.java \ +classpath/javax/sql/RowSetMetaData.java \ +classpath/javax/sql/RowSetReader.java \ +classpath/javax/sql/RowSetWriter.java \ +classpath/javax/sql/XAConnection.java \ +classpath/javax/sql/XADataSource.java + +javax_sql_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_sql_source_files))) +javax_swing_source_files = \ +classpath/javax/swing/AbstractAction.java \ +classpath/javax/swing/AbstractButton.java \ +classpath/javax/swing/AbstractCellEditor.java \ +classpath/javax/swing/AbstractListModel.java \ +classpath/javax/swing/AbstractSpinnerModel.java \ +classpath/javax/swing/Action.java \ +classpath/javax/swing/ActionMap.java \ +classpath/javax/swing/BorderFactory.java \ +classpath/javax/swing/BoundedRangeModel.java \ +classpath/javax/swing/Box.java \ +classpath/javax/swing/BoxLayout.java \ +classpath/javax/swing/ButtonGroup.java \ +classpath/javax/swing/ButtonModel.java \ +classpath/javax/swing/CellEditor.java \ +classpath/javax/swing/CellRendererPane.java \ +classpath/javax/swing/ComboBoxEditor.java \ +classpath/javax/swing/ComboBoxModel.java \ +classpath/javax/swing/ComponentInputMap.java \ +classpath/javax/swing/DebugGraphics.java \ +classpath/javax/swing/DefaultBoundedRangeModel.java \ +classpath/javax/swing/DefaultButtonModel.java \ +classpath/javax/swing/DefaultCellEditor.java \ +classpath/javax/swing/DefaultComboBoxModel.java \ +classpath/javax/swing/DefaultDesktopManager.java \ +classpath/javax/swing/DefaultFocusManager.java \ +classpath/javax/swing/DefaultListCellRenderer.java \ +classpath/javax/swing/DefaultListModel.java \ +classpath/javax/swing/DefaultListSelectionModel.java \ +classpath/javax/swing/DefaultSingleSelectionModel.java \ +classpath/javax/swing/DesktopManager.java \ +classpath/javax/swing/FocusManager.java \ +classpath/javax/swing/GrayFilter.java \ +classpath/javax/swing/Icon.java \ +classpath/javax/swing/ImageIcon.java \ +classpath/javax/swing/InputMap.java \ +classpath/javax/swing/InputVerifier.java \ +classpath/javax/swing/InternalFrameFocusTraversalPolicy.java \ +classpath/javax/swing/JApplet.java \ +classpath/javax/swing/JButton.java \ +classpath/javax/swing/JCheckBox.java \ +classpath/javax/swing/JCheckBoxMenuItem.java \ +classpath/javax/swing/JColorChooser.java \ +classpath/javax/swing/JComboBox.java \ +classpath/javax/swing/JComponent.java \ +classpath/javax/swing/JDesktopPane.java \ +classpath/javax/swing/JDialog.java \ +classpath/javax/swing/JEditorPane.java \ +classpath/javax/swing/JFileChooser.java \ +classpath/javax/swing/JFormattedTextField.java \ +classpath/javax/swing/JFrame.java \ +classpath/javax/swing/JInternalFrame.java \ +classpath/javax/swing/JLabel.java \ +classpath/javax/swing/JLayeredPane.java \ +classpath/javax/swing/JList.java \ +classpath/javax/swing/JMenu.java \ +classpath/javax/swing/JMenuBar.java \ +classpath/javax/swing/JMenuItem.java \ +classpath/javax/swing/JOptionPane.java \ +classpath/javax/swing/JPanel.java \ +classpath/javax/swing/JPasswordField.java \ +classpath/javax/swing/JPopupMenu.java \ +classpath/javax/swing/JProgressBar.java \ +classpath/javax/swing/JRadioButton.java \ +classpath/javax/swing/JRadioButtonMenuItem.java \ +classpath/javax/swing/JRootPane.java \ +classpath/javax/swing/JScrollBar.java \ +classpath/javax/swing/JScrollPane.java \ +classpath/javax/swing/JSeparator.java \ +classpath/javax/swing/JSlider.java \ +classpath/javax/swing/JSpinner.java \ +classpath/javax/swing/JSplitPane.java \ +classpath/javax/swing/JTabbedPane.java \ +classpath/javax/swing/JTable.java \ +classpath/javax/swing/JTextArea.java \ +classpath/javax/swing/JTextField.java \ +classpath/javax/swing/JTextPane.java \ +classpath/javax/swing/JToggleButton.java \ +classpath/javax/swing/JToolBar.java \ +classpath/javax/swing/JToolTip.java \ +classpath/javax/swing/JTree.java \ +classpath/javax/swing/JViewport.java \ +classpath/javax/swing/JWindow.java \ +classpath/javax/swing/KeyStroke.java \ +classpath/javax/swing/LayoutFocusTraversalPolicy.java \ +classpath/javax/swing/ListCellRenderer.java \ +classpath/javax/swing/ListModel.java \ +classpath/javax/swing/ListSelectionModel.java \ +classpath/javax/swing/LookAndFeel.java \ +classpath/javax/swing/MenuElement.java \ +classpath/javax/swing/MenuSelectionManager.java \ +classpath/javax/swing/MutableComboBoxModel.java \ +classpath/javax/swing/OverlayLayout.java \ +classpath/javax/swing/Popup.java \ +classpath/javax/swing/PopupFactory.java \ +classpath/javax/swing/ProgressMonitor.java \ +classpath/javax/swing/ProgressMonitorInputStream.java \ +classpath/javax/swing/Renderer.java \ +classpath/javax/swing/RepaintManager.java \ +classpath/javax/swing/RootPaneContainer.java \ +classpath/javax/swing/ScrollPaneConstants.java \ +classpath/javax/swing/ScrollPaneLayout.java \ +classpath/javax/swing/Scrollable.java \ +classpath/javax/swing/SingleSelectionModel.java \ +classpath/javax/swing/SizeRequirements.java \ +classpath/javax/swing/SizeSequence.java \ +classpath/javax/swing/SortingFocusTraversalPolicy.java \ +classpath/javax/swing/SpinnerDateModel.java \ +classpath/javax/swing/SpinnerListModel.java \ +classpath/javax/swing/SpinnerModel.java \ +classpath/javax/swing/SpinnerNumberModel.java \ +classpath/javax/swing/Spring.java \ +classpath/javax/swing/SpringLayout.java \ +classpath/javax/swing/SwingConstants.java \ +classpath/javax/swing/SwingUtilities.java \ +classpath/javax/swing/Timer.java \ +classpath/javax/swing/ToolTipManager.java \ +classpath/javax/swing/TransferHandler.java \ +classpath/javax/swing/UIDefaults.java \ +classpath/javax/swing/UIManager.java \ +classpath/javax/swing/UnsupportedLookAndFeelException.java \ +classpath/javax/swing/ViewportLayout.java \ +classpath/javax/swing/WindowConstants.java + +javax_swing_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_source_files))) +javax_swing_border_source_files = \ +classpath/javax/swing/border/AbstractBorder.java \ +classpath/javax/swing/border/BevelBorder.java \ +classpath/javax/swing/border/Border.java \ +classpath/javax/swing/border/CompoundBorder.java \ +classpath/javax/swing/border/EmptyBorder.java \ +classpath/javax/swing/border/EtchedBorder.java \ +classpath/javax/swing/border/LineBorder.java \ +classpath/javax/swing/border/MatteBorder.java \ +classpath/javax/swing/border/SoftBevelBorder.java \ +classpath/javax/swing/border/TitledBorder.java + +javax_swing_border_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_border_source_files))) +javax_swing_colorchooser_source_files = \ +classpath/javax/swing/colorchooser/AbstractColorChooserPanel.java \ +classpath/javax/swing/colorchooser/ColorChooserComponentFactory.java \ +classpath/javax/swing/colorchooser/ColorSelectionModel.java \ +classpath/javax/swing/colorchooser/DefaultColorSelectionModel.java \ +classpath/javax/swing/colorchooser/DefaultHSBChooserPanel.java \ +classpath/javax/swing/colorchooser/DefaultPreviewPanel.java \ +classpath/javax/swing/colorchooser/DefaultRGBChooserPanel.java \ +classpath/javax/swing/colorchooser/DefaultSwatchChooserPanel.java + +javax_swing_colorchooser_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_colorchooser_source_files))) +javax_swing_event_source_files = \ +classpath/javax/swing/event/AncestorEvent.java \ +classpath/javax/swing/event/AncestorListener.java \ +classpath/javax/swing/event/CaretEvent.java \ +classpath/javax/swing/event/CaretListener.java \ +classpath/javax/swing/event/CellEditorListener.java \ +classpath/javax/swing/event/ChangeEvent.java \ +classpath/javax/swing/event/ChangeListener.java \ +classpath/javax/swing/event/DocumentEvent.java \ +classpath/javax/swing/event/DocumentListener.java \ +classpath/javax/swing/event/EventListenerList.java \ +classpath/javax/swing/event/HyperlinkEvent.java \ +classpath/javax/swing/event/HyperlinkListener.java \ +classpath/javax/swing/event/InternalFrameAdapter.java \ +classpath/javax/swing/event/InternalFrameEvent.java \ +classpath/javax/swing/event/InternalFrameListener.java \ +classpath/javax/swing/event/ListDataEvent.java \ +classpath/javax/swing/event/ListDataListener.java \ +classpath/javax/swing/event/ListSelectionEvent.java \ +classpath/javax/swing/event/ListSelectionListener.java \ +classpath/javax/swing/event/MenuDragMouseEvent.java \ +classpath/javax/swing/event/MenuDragMouseListener.java \ +classpath/javax/swing/event/MenuEvent.java \ +classpath/javax/swing/event/MenuKeyEvent.java \ +classpath/javax/swing/event/MenuKeyListener.java \ +classpath/javax/swing/event/MenuListener.java \ +classpath/javax/swing/event/MouseInputAdapter.java \ +classpath/javax/swing/event/MouseInputListener.java \ +classpath/javax/swing/event/PopupMenuEvent.java \ +classpath/javax/swing/event/PopupMenuListener.java \ +classpath/javax/swing/event/SwingPropertyChangeSupport.java \ +classpath/javax/swing/event/TableColumnModelEvent.java \ +classpath/javax/swing/event/TableColumnModelListener.java \ +classpath/javax/swing/event/TableModelEvent.java \ +classpath/javax/swing/event/TableModelListener.java \ +classpath/javax/swing/event/TreeExpansionEvent.java \ +classpath/javax/swing/event/TreeExpansionListener.java \ +classpath/javax/swing/event/TreeModelEvent.java \ +classpath/javax/swing/event/TreeModelListener.java \ +classpath/javax/swing/event/TreeSelectionEvent.java \ +classpath/javax/swing/event/TreeSelectionListener.java \ +classpath/javax/swing/event/TreeWillExpandListener.java \ +classpath/javax/swing/event/UndoableEditEvent.java \ +classpath/javax/swing/event/UndoableEditListener.java + +javax_swing_event_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_event_source_files))) +javax_swing_filechooser_source_files = \ +classpath/javax/swing/filechooser/FileFilter.java \ +classpath/javax/swing/filechooser/FileSystemView.java \ +classpath/javax/swing/filechooser/FileView.java \ +classpath/javax/swing/filechooser/UnixFileSystemView.java + +javax_swing_filechooser_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_filechooser_source_files))) +javax_swing_plaf_source_files = \ +classpath/javax/swing/plaf/ActionMapUIResource.java \ +classpath/javax/swing/plaf/BorderUIResource.java \ +classpath/javax/swing/plaf/ButtonUI.java \ +classpath/javax/swing/plaf/ColorChooserUI.java \ +classpath/javax/swing/plaf/ColorUIResource.java \ +classpath/javax/swing/plaf/ComboBoxUI.java \ +classpath/javax/swing/plaf/ComponentInputMapUIResource.java \ +classpath/javax/swing/plaf/ComponentUI.java \ +classpath/javax/swing/plaf/DesktopIconUI.java \ +classpath/javax/swing/plaf/DesktopPaneUI.java \ +classpath/javax/swing/plaf/DimensionUIResource.java \ +classpath/javax/swing/plaf/FileChooserUI.java \ +classpath/javax/swing/plaf/FontUIResource.java \ +classpath/javax/swing/plaf/IconUIResource.java \ +classpath/javax/swing/plaf/InputMapUIResource.java \ +classpath/javax/swing/plaf/InsetsUIResource.java \ +classpath/javax/swing/plaf/InternalFrameUI.java \ +classpath/javax/swing/plaf/LabelUI.java \ +classpath/javax/swing/plaf/ListUI.java \ +classpath/javax/swing/plaf/MenuBarUI.java \ +classpath/javax/swing/plaf/MenuItemUI.java \ +classpath/javax/swing/plaf/OptionPaneUI.java \ +classpath/javax/swing/plaf/PanelUI.java \ +classpath/javax/swing/plaf/PopupMenuUI.java \ +classpath/javax/swing/plaf/ProgressBarUI.java \ +classpath/javax/swing/plaf/RootPaneUI.java \ +classpath/javax/swing/plaf/ScrollBarUI.java \ +classpath/javax/swing/plaf/ScrollPaneUI.java \ +classpath/javax/swing/plaf/SeparatorUI.java \ +classpath/javax/swing/plaf/SliderUI.java \ +classpath/javax/swing/plaf/SpinnerUI.java \ +classpath/javax/swing/plaf/SplitPaneUI.java \ +classpath/javax/swing/plaf/TabbedPaneUI.java \ +classpath/javax/swing/plaf/TableHeaderUI.java \ +classpath/javax/swing/plaf/TableUI.java \ +classpath/javax/swing/plaf/TextUI.java \ +classpath/javax/swing/plaf/ToolBarUI.java \ +classpath/javax/swing/plaf/ToolTipUI.java \ +classpath/javax/swing/plaf/TreeUI.java \ +classpath/javax/swing/plaf/UIResource.java \ +classpath/javax/swing/plaf/ViewportUI.java + +javax_swing_plaf_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_plaf_source_files))) +javax_swing_plaf_basic_source_files = \ +classpath/javax/swing/plaf/basic/BasicArrowButton.java \ +classpath/javax/swing/plaf/basic/BasicBorders.java \ +classpath/javax/swing/plaf/basic/BasicButtonListener.java \ +classpath/javax/swing/plaf/basic/BasicButtonUI.java \ +classpath/javax/swing/plaf/basic/BasicCheckBoxMenuItemUI.java \ +classpath/javax/swing/plaf/basic/BasicCheckBoxUI.java \ +classpath/javax/swing/plaf/basic/BasicColorChooserUI.java \ +classpath/javax/swing/plaf/basic/BasicComboBoxEditor.java \ +classpath/javax/swing/plaf/basic/BasicComboBoxRenderer.java \ +classpath/javax/swing/plaf/basic/BasicComboBoxUI.java \ +classpath/javax/swing/plaf/basic/BasicComboPopup.java \ +classpath/javax/swing/plaf/basic/BasicDesktopIconUI.java \ +classpath/javax/swing/plaf/basic/BasicDesktopPaneUI.java \ +classpath/javax/swing/plaf/basic/BasicDirectoryModel.java \ +classpath/javax/swing/plaf/basic/BasicEditorPaneUI.java \ +classpath/javax/swing/plaf/basic/BasicFileChooserUI.java \ +classpath/javax/swing/plaf/basic/BasicFormattedTextFieldUI.java \ +classpath/javax/swing/plaf/basic/BasicGraphicsUtils.java \ +classpath/javax/swing/plaf/basic/BasicIconFactory.java \ +classpath/javax/swing/plaf/basic/BasicInternalFrameTitlePane.java \ +classpath/javax/swing/plaf/basic/BasicInternalFrameUI.java \ +classpath/javax/swing/plaf/basic/BasicLabelUI.java \ +classpath/javax/swing/plaf/basic/BasicListUI.java \ +classpath/javax/swing/plaf/basic/BasicLookAndFeel.java \ +classpath/javax/swing/plaf/basic/BasicMenuBarUI.java \ +classpath/javax/swing/plaf/basic/BasicMenuItemUI.java \ +classpath/javax/swing/plaf/basic/BasicMenuUI.java \ +classpath/javax/swing/plaf/basic/BasicOptionPaneUI.java \ +classpath/javax/swing/plaf/basic/BasicPanelUI.java \ +classpath/javax/swing/plaf/basic/BasicPasswordFieldUI.java \ +classpath/javax/swing/plaf/basic/BasicPopupMenuSeparatorUI.java \ +classpath/javax/swing/plaf/basic/BasicPopupMenuUI.java \ +classpath/javax/swing/plaf/basic/BasicProgressBarUI.java \ +classpath/javax/swing/plaf/basic/BasicRadioButtonMenuItemUI.java \ +classpath/javax/swing/plaf/basic/BasicRadioButtonUI.java \ +classpath/javax/swing/plaf/basic/BasicRootPaneUI.java \ +classpath/javax/swing/plaf/basic/BasicScrollBarUI.java \ +classpath/javax/swing/plaf/basic/BasicScrollPaneUI.java \ +classpath/javax/swing/plaf/basic/BasicSeparatorUI.java \ +classpath/javax/swing/plaf/basic/BasicSliderUI.java \ +classpath/javax/swing/plaf/basic/BasicSpinnerUI.java \ +classpath/javax/swing/plaf/basic/BasicSplitPaneDivider.java \ +classpath/javax/swing/plaf/basic/BasicSplitPaneUI.java \ +classpath/javax/swing/plaf/basic/BasicTabbedPaneUI.java \ +classpath/javax/swing/plaf/basic/BasicTableHeaderUI.java \ +classpath/javax/swing/plaf/basic/BasicTableUI.java \ +classpath/javax/swing/plaf/basic/BasicTextAreaUI.java \ +classpath/javax/swing/plaf/basic/BasicTextFieldUI.java \ +classpath/javax/swing/plaf/basic/BasicTextPaneUI.java \ +classpath/javax/swing/plaf/basic/BasicTextUI.java \ +classpath/javax/swing/plaf/basic/BasicToggleButtonUI.java \ +classpath/javax/swing/plaf/basic/BasicToolBarSeparatorUI.java \ +classpath/javax/swing/plaf/basic/BasicToolBarUI.java \ +classpath/javax/swing/plaf/basic/BasicToolTipUI.java \ +classpath/javax/swing/plaf/basic/BasicTreeUI.java \ +classpath/javax/swing/plaf/basic/BasicViewportUI.java \ +classpath/javax/swing/plaf/basic/ComboPopup.java \ +classpath/javax/swing/plaf/basic/DefaultMenuLayout.java + +javax_swing_plaf_basic_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_plaf_basic_source_files))) +javax_swing_plaf_metal_source_files = \ +classpath/javax/swing/plaf/metal/DefaultMetalTheme.java \ +classpath/javax/swing/plaf/metal/MetalBorders.java \ +classpath/javax/swing/plaf/metal/MetalButtonUI.java \ +classpath/javax/swing/plaf/metal/MetalCheckBoxIcon.java \ +classpath/javax/swing/plaf/metal/MetalCheckBoxUI.java \ +classpath/javax/swing/plaf/metal/MetalComboBoxIcon.java \ +classpath/javax/swing/plaf/metal/MetalComboBoxUI.java \ +classpath/javax/swing/plaf/metal/MetalDesktopIconUI.java \ +classpath/javax/swing/plaf/metal/MetalIconFactory.java \ +classpath/javax/swing/plaf/metal/MetalInternalFrameUI.java \ +classpath/javax/swing/plaf/metal/MetalLabelUI.java \ +classpath/javax/swing/plaf/metal/MetalLookAndFeel.java \ +classpath/javax/swing/plaf/metal/MetalPopupMenuSeparatorUI.java \ +classpath/javax/swing/plaf/metal/MetalProgressBarUI.java \ +classpath/javax/swing/plaf/metal/MetalRadioButtonUI.java \ +classpath/javax/swing/plaf/metal/MetalRootPaneUI.java \ +classpath/javax/swing/plaf/metal/MetalScrollBarUI.java \ +classpath/javax/swing/plaf/metal/MetalScrollPaneUI.java \ +classpath/javax/swing/plaf/metal/MetalSeparatorUI.java \ +classpath/javax/swing/plaf/metal/MetalSliderUI.java \ +classpath/javax/swing/plaf/metal/MetalSplitPaneDivider.java \ +classpath/javax/swing/plaf/metal/MetalSplitPaneUI.java \ +classpath/javax/swing/plaf/metal/MetalTabbedPaneUI.java \ +classpath/javax/swing/plaf/metal/MetalTextFieldUI.java \ +classpath/javax/swing/plaf/metal/MetalTheme.java \ +classpath/javax/swing/plaf/metal/MetalToggleButtonUI.java \ +classpath/javax/swing/plaf/metal/MetalToolBarUI.java \ +classpath/javax/swing/plaf/metal/MetalToolTipUI.java \ +classpath/javax/swing/plaf/metal/MetalTreeUI.java \ +classpath/javax/swing/plaf/metal/MetalUtils.java + +javax_swing_plaf_metal_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_plaf_metal_source_files))) +javax_swing_table_source_files = \ +classpath/javax/swing/table/AbstractTableModel.java \ +classpath/javax/swing/table/DefaultTableCellRenderer.java \ +classpath/javax/swing/table/DefaultTableColumnModel.java \ +classpath/javax/swing/table/DefaultTableModel.java \ +classpath/javax/swing/table/JTableHeader.java \ +classpath/javax/swing/table/TableCellEditor.java \ +classpath/javax/swing/table/TableCellRenderer.java \ +classpath/javax/swing/table/TableColumn.java \ +classpath/javax/swing/table/TableColumnModel.java \ +classpath/javax/swing/table/TableModel.java + +javax_swing_table_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_table_source_files))) +javax_swing_text_source_files = \ +classpath/javax/swing/text/AbstractDocument.java \ +classpath/javax/swing/text/AttributeSet.java \ +classpath/javax/swing/text/BadLocationException.java \ +classpath/javax/swing/text/Caret.java \ +classpath/javax/swing/text/ChangedCharSetException.java \ +classpath/javax/swing/text/ComponentView.java \ +classpath/javax/swing/text/DateFormatter.java \ +classpath/javax/swing/text/DefaultCaret.java \ +classpath/javax/swing/text/DefaultEditorKit.java \ +classpath/javax/swing/text/DefaultFormatter.java \ +classpath/javax/swing/text/DefaultHighlighter.java \ +classpath/javax/swing/text/DefaultStyledDocument.java \ +classpath/javax/swing/text/Document.java \ +classpath/javax/swing/text/DocumentFilter.java \ +classpath/javax/swing/text/EditorKit.java \ +classpath/javax/swing/text/Element.java \ +classpath/javax/swing/text/FieldView.java \ +classpath/javax/swing/text/GapContent.java \ +classpath/javax/swing/text/Highlighter.java \ +classpath/javax/swing/text/InternationalFormatter.java \ +classpath/javax/swing/text/JTextComponent.java \ +classpath/javax/swing/text/Keymap.java \ +classpath/javax/swing/text/LayeredHighlighter.java \ +classpath/javax/swing/text/MutableAttributeSet.java \ +classpath/javax/swing/text/NavigationFilter.java \ +classpath/javax/swing/text/PasswordView.java \ +classpath/javax/swing/text/PlainDocument.java \ +classpath/javax/swing/text/PlainView.java \ +classpath/javax/swing/text/Position.java \ +classpath/javax/swing/text/Segment.java \ +classpath/javax/swing/text/SimpleAttributeSet.java \ +classpath/javax/swing/text/StringContent.java \ +classpath/javax/swing/text/Style.java \ +classpath/javax/swing/text/StyleConstants.java \ +classpath/javax/swing/text/StyleContext.java \ +classpath/javax/swing/text/StyledDocument.java \ +classpath/javax/swing/text/StyledEditorKit.java \ +classpath/javax/swing/text/TabExpander.java \ +classpath/javax/swing/text/TabSet.java \ +classpath/javax/swing/text/TabStop.java \ +classpath/javax/swing/text/TabableView.java \ +classpath/javax/swing/text/TextAction.java \ +classpath/javax/swing/text/Utilities.java \ +classpath/javax/swing/text/View.java \ +classpath/javax/swing/text/ViewFactory.java + +javax_swing_text_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_text_source_files))) +javax_swing_text_html_source_files = \ +classpath/javax/swing/text/html/HTML.java \ +classpath/javax/swing/text/html/HTMLDocument.java \ +classpath/javax/swing/text/html/HTMLEditorKit.java \ +classpath/javax/swing/text/html/HTMLFrameHyperlinkEvent.java + +javax_swing_text_html_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_text_html_source_files))) +javax_swing_text_html_parser_source_files = \ +classpath/javax/swing/text/html/parser/AttributeList.java \ +classpath/javax/swing/text/html/parser/ContentModel.java \ +classpath/javax/swing/text/html/parser/DTD.java \ +classpath/javax/swing/text/html/parser/DTDConstants.java \ +classpath/javax/swing/text/html/parser/DocumentParser.java \ +classpath/javax/swing/text/html/parser/Element.java \ +classpath/javax/swing/text/html/parser/Entity.java \ +classpath/javax/swing/text/html/parser/Parser.java \ +classpath/javax/swing/text/html/parser/ParserDelegator.java \ +classpath/javax/swing/text/html/parser/TagElement.java + +javax_swing_text_html_parser_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_text_html_parser_source_files))) +javax_swing_text_rtf_source_files = \ +classpath/javax/swing/text/rtf/ControlWordToken.java \ +classpath/javax/swing/text/rtf/RTFEditorKit.java \ +classpath/javax/swing/text/rtf/RTFParseException.java \ +classpath/javax/swing/text/rtf/RTFParser.java \ +classpath/javax/swing/text/rtf/RTFScanner.java \ +classpath/javax/swing/text/rtf/TextToken.java \ +classpath/javax/swing/text/rtf/Token.java + +javax_swing_text_rtf_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_text_rtf_source_files))) +javax_swing_tree_source_files = \ +classpath/javax/swing/tree/AbstractLayoutCache.java \ +classpath/javax/swing/tree/DefaultMutableTreeNode.java \ +classpath/javax/swing/tree/DefaultTreeCellEditor.java \ +classpath/javax/swing/tree/DefaultTreeCellRenderer.java \ +classpath/javax/swing/tree/DefaultTreeModel.java \ +classpath/javax/swing/tree/DefaultTreeSelectionModel.java \ +classpath/javax/swing/tree/ExpandVetoException.java \ +classpath/javax/swing/tree/FixedHeightLayoutCache.java \ +classpath/javax/swing/tree/MutableTreeNode.java \ +classpath/javax/swing/tree/RowMapper.java \ +classpath/javax/swing/tree/TreeCellEditor.java \ +classpath/javax/swing/tree/TreeCellRenderer.java \ +classpath/javax/swing/tree/TreeModel.java \ +classpath/javax/swing/tree/TreeNode.java \ +classpath/javax/swing/tree/TreePath.java \ +classpath/javax/swing/tree/TreeSelectionModel.java \ +classpath/javax/swing/tree/VariableHeightLayoutCache.java + +javax_swing_tree_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_tree_source_files))) +javax_swing_undo_source_files = \ +classpath/javax/swing/undo/AbstractUndoableEdit.java \ +classpath/javax/swing/undo/CannotRedoException.java \ +classpath/javax/swing/undo/CannotUndoException.java \ +classpath/javax/swing/undo/CompoundEdit.java \ +classpath/javax/swing/undo/StateEdit.java \ +classpath/javax/swing/undo/StateEditable.java \ +classpath/javax/swing/undo/UndoManager.java \ +classpath/javax/swing/undo/UndoableEdit.java \ +classpath/javax/swing/undo/UndoableEditSupport.java + +javax_swing_undo_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_swing_undo_source_files))) +javax_transaction_source_files = \ +classpath/javax/transaction/HeuristicCommitException.java \ +classpath/javax/transaction/HeuristicMixedException.java \ +classpath/javax/transaction/HeuristicRollbackException.java \ +classpath/javax/transaction/InvalidTransactionException.java \ +classpath/javax/transaction/NotSupportedException.java \ +classpath/javax/transaction/RollbackException.java \ +classpath/javax/transaction/Status.java \ +classpath/javax/transaction/Synchronization.java \ +classpath/javax/transaction/SystemException.java \ +classpath/javax/transaction/Transaction.java \ +classpath/javax/transaction/TransactionManager.java \ +classpath/javax/transaction/TransactionRequiredException.java \ +classpath/javax/transaction/TransactionRolledbackException.java \ +classpath/javax/transaction/UserTransaction.java + +javax_transaction_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_transaction_source_files))) +javax_transaction_xa_source_files = \ +classpath/javax/transaction/xa/XAException.java \ +classpath/javax/transaction/xa/XAResource.java \ +classpath/javax/transaction/xa/Xid.java + +javax_transaction_xa_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(javax_transaction_xa_source_files))) +javax_xml_source_files = \ +classpath/javax/xml/XMLConstants.java \ +classpath/javax/xml/datatype/DatatypeConfigurationException.java \ +classpath/javax/xml/datatype/DatatypeConstants.java \ +classpath/javax/xml/datatype/DatatypeFactory.java \ +classpath/javax/xml/datatype/Duration.java \ +classpath/javax/xml/datatype/XMLGregorianCalendar.java \ +classpath/javax/xml/namespace/NamespaceContext.java \ +classpath/javax/xml/namespace/QName.java \ +classpath/javax/xml/parsers/DocumentBuilder.java \ +classpath/javax/xml/parsers/DocumentBuilderFactory.java \ +classpath/javax/xml/parsers/FactoryConfigurationError.java \ +classpath/javax/xml/parsers/ParserConfigurationException.java \ +classpath/javax/xml/parsers/SAXParser.java \ +classpath/javax/xml/parsers/SAXParserFactory.java \ +classpath/javax/xml/transform/ErrorListener.java \ +classpath/javax/xml/transform/OutputKeys.java \ +classpath/javax/xml/transform/Result.java \ +classpath/javax/xml/transform/Source.java \ +classpath/javax/xml/transform/SourceLocator.java \ +classpath/javax/xml/transform/Templates.java \ +classpath/javax/xml/transform/Transformer.java \ +classpath/javax/xml/transform/TransformerConfigurationException.java \ +classpath/javax/xml/transform/TransformerException.java \ +classpath/javax/xml/transform/TransformerFactory.java \ +classpath/javax/xml/transform/TransformerFactoryConfigurationError.java \ +classpath/javax/xml/transform/URIResolver.java \ +classpath/javax/xml/transform/dom/DOMLocator.java \ +classpath/javax/xml/transform/dom/DOMResult.java \ +classpath/javax/xml/transform/dom/DOMSource.java \ +classpath/javax/xml/transform/sax/SAXResult.java \ +classpath/javax/xml/transform/sax/SAXSource.java \ +classpath/javax/xml/transform/sax/SAXTransformerFactory.java \ +classpath/javax/xml/transform/sax/TemplatesHandler.java \ +classpath/javax/xml/transform/sax/TransformerHandler.java \ +classpath/javax/xml/transform/stream/StreamResult.java \ +classpath/javax/xml/transform/stream/StreamSource.java \ +classpath/javax/xml/validation/Schema.java \ +classpath/javax/xml/validation/SchemaFactory.java \ +classpath/javax/xml/validation/TypeInfoProvider.java \ +classpath/javax/xml/validation/Validator.java \ +classpath/javax/xml/validation/ValidatorHandler.java \ +classpath/javax/xml/xpath/XPath.java \ +classpath/javax/xml/xpath/XPathConstants.java \ +classpath/javax/xml/xpath/XPathException.java \ +classpath/javax/xml/xpath/XPathExpression.java \ +classpath/javax/xml/xpath/XPathExpressionException.java \ +classpath/javax/xml/xpath/XPathFactory.java \ +classpath/javax/xml/xpath/XPathFactoryConfigurationException.java \ +classpath/javax/xml/xpath/XPathFunction.java \ +classpath/javax/xml/xpath/XPathFunctionException.java \ +classpath/javax/xml/xpath/XPathFunctionResolver.java \ +classpath/javax/xml/xpath/XPathVariableResolver.java + +org_ietf_jgss_source_files = \ +classpath/org/ietf/jgss/ChannelBinding.java \ +classpath/org/ietf/jgss/GSSContext.java \ +classpath/org/ietf/jgss/GSSCredential.java \ +classpath/org/ietf/jgss/GSSException.java \ +classpath/org/ietf/jgss/GSSManager.java \ +classpath/org/ietf/jgss/GSSName.java \ +classpath/org/ietf/jgss/MessageProp.java \ +classpath/org/ietf/jgss/Oid.java + +org_ietf_jgss_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(org_ietf_jgss_source_files))) +org_w3c_source_files = \ +classpath/external/w3c_dom/org/w3c/dom/Attr.java \ +classpath/external/w3c_dom/org/w3c/dom/CDATASection.java \ +classpath/external/w3c_dom/org/w3c/dom/CharacterData.java \ +classpath/external/w3c_dom/org/w3c/dom/Comment.java \ +classpath/external/w3c_dom/org/w3c/dom/DOMConfiguration.java \ +classpath/external/w3c_dom/org/w3c/dom/DOMError.java \ +classpath/external/w3c_dom/org/w3c/dom/DOMErrorHandler.java \ +classpath/external/w3c_dom/org/w3c/dom/DOMException.java \ +classpath/external/w3c_dom/org/w3c/dom/DOMImplementation.java \ +classpath/external/w3c_dom/org/w3c/dom/DOMImplementationList.java \ +classpath/external/w3c_dom/org/w3c/dom/DOMImplementationSource.java \ +classpath/external/w3c_dom/org/w3c/dom/DOMLocator.java \ +classpath/external/w3c_dom/org/w3c/dom/DOMStringList.java \ +classpath/external/w3c_dom/org/w3c/dom/Document.java \ +classpath/external/w3c_dom/org/w3c/dom/DocumentFragment.java \ +classpath/external/w3c_dom/org/w3c/dom/DocumentType.java \ +classpath/external/w3c_dom/org/w3c/dom/Element.java \ +classpath/external/w3c_dom/org/w3c/dom/Entity.java \ +classpath/external/w3c_dom/org/w3c/dom/EntityReference.java \ +classpath/external/w3c_dom/org/w3c/dom/NameList.java \ +classpath/external/w3c_dom/org/w3c/dom/NamedNodeMap.java \ +classpath/external/w3c_dom/org/w3c/dom/Node.java \ +classpath/external/w3c_dom/org/w3c/dom/NodeList.java \ +classpath/external/w3c_dom/org/w3c/dom/Notation.java \ +classpath/external/w3c_dom/org/w3c/dom/ProcessingInstruction.java \ +classpath/external/w3c_dom/org/w3c/dom/Text.java \ +classpath/external/w3c_dom/org/w3c/dom/TypeInfo.java \ +classpath/external/w3c_dom/org/w3c/dom/UserDataHandler.java \ +classpath/external/w3c_dom/org/w3c/dom/bootstrap/DOMImplementationRegistry.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSS2Properties.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSCharsetRule.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSFontFaceRule.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSImportRule.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSMediaRule.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSPageRule.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSPrimitiveValue.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSRule.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSRuleList.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSStyleDeclaration.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSStyleRule.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSStyleSheet.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSUnknownRule.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSValue.java \ +classpath/external/w3c_dom/org/w3c/dom/css/CSSValueList.java \ +classpath/external/w3c_dom/org/w3c/dom/css/Counter.java \ +classpath/external/w3c_dom/org/w3c/dom/css/DOMImplementationCSS.java \ +classpath/external/w3c_dom/org/w3c/dom/css/DocumentCSS.java \ +classpath/external/w3c_dom/org/w3c/dom/css/ElementCSSInlineStyle.java \ +classpath/external/w3c_dom/org/w3c/dom/css/RGBColor.java \ +classpath/external/w3c_dom/org/w3c/dom/css/Rect.java \ +classpath/external/w3c_dom/org/w3c/dom/css/ViewCSS.java \ +classpath/external/w3c_dom/org/w3c/dom/events/DocumentEvent.java \ +classpath/external/w3c_dom/org/w3c/dom/events/Event.java \ +classpath/external/w3c_dom/org/w3c/dom/events/EventException.java \ +classpath/external/w3c_dom/org/w3c/dom/events/EventListener.java \ +classpath/external/w3c_dom/org/w3c/dom/events/EventTarget.java \ +classpath/external/w3c_dom/org/w3c/dom/events/MouseEvent.java \ +classpath/external/w3c_dom/org/w3c/dom/events/MutationEvent.java \ +classpath/external/w3c_dom/org/w3c/dom/events/UIEvent.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLAnchorElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLAppletElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLAreaElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLBRElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLBaseElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLBaseFontElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLBodyElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLButtonElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLCollection.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLDListElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLDirectoryElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLDivElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLDocument.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLFieldSetElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLFontElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLFormElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLFrameElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLFrameSetElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLHRElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLHeadElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLHeadingElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLHtmlElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLIFrameElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLImageElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLInputElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLIsIndexElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLLIElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLLabelElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLLegendElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLLinkElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLMapElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLMenuElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLMetaElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLModElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLOListElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLObjectElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLOptGroupElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLOptionElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLOptionsCollection.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLParagraphElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLParamElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLPreElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLQuoteElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLScriptElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLSelectElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLStyleElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLTableCaptionElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLTableCellElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLTableColElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLTableElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLTableRowElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLTableSectionElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLTextAreaElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLTitleElement.java \ +classpath/external/w3c_dom/org/w3c/dom/html2/HTMLUListElement.java \ +classpath/external/w3c_dom/org/w3c/dom/ls/DOMImplementationLS.java \ +classpath/external/w3c_dom/org/w3c/dom/ls/LSException.java \ +classpath/external/w3c_dom/org/w3c/dom/ls/LSInput.java \ +classpath/external/w3c_dom/org/w3c/dom/ls/LSLoadEvent.java \ +classpath/external/w3c_dom/org/w3c/dom/ls/LSOutput.java \ +classpath/external/w3c_dom/org/w3c/dom/ls/LSParser.java \ +classpath/external/w3c_dom/org/w3c/dom/ls/LSParserFilter.java \ +classpath/external/w3c_dom/org/w3c/dom/ls/LSProgressEvent.java \ +classpath/external/w3c_dom/org/w3c/dom/ls/LSResourceResolver.java \ +classpath/external/w3c_dom/org/w3c/dom/ls/LSSerializer.java \ +classpath/external/w3c_dom/org/w3c/dom/ls/LSSerializerFilter.java \ +classpath/external/w3c_dom/org/w3c/dom/ranges/DocumentRange.java \ +classpath/external/w3c_dom/org/w3c/dom/ranges/Range.java \ +classpath/external/w3c_dom/org/w3c/dom/ranges/RangeException.java \ +classpath/external/w3c_dom/org/w3c/dom/stylesheets/DocumentStyle.java \ +classpath/external/w3c_dom/org/w3c/dom/stylesheets/LinkStyle.java \ +classpath/external/w3c_dom/org/w3c/dom/stylesheets/MediaList.java \ +classpath/external/w3c_dom/org/w3c/dom/stylesheets/StyleSheet.java \ +classpath/external/w3c_dom/org/w3c/dom/stylesheets/StyleSheetList.java \ +classpath/external/w3c_dom/org/w3c/dom/traversal/DocumentTraversal.java \ +classpath/external/w3c_dom/org/w3c/dom/traversal/NodeFilter.java \ +classpath/external/w3c_dom/org/w3c/dom/traversal/NodeIterator.java \ +classpath/external/w3c_dom/org/w3c/dom/traversal/TreeWalker.java \ +classpath/external/w3c_dom/org/w3c/dom/views/AbstractView.java \ +classpath/external/w3c_dom/org/w3c/dom/views/DocumentView.java \ +classpath/external/w3c_dom/org/w3c/dom/xpath/XPathEvaluator.java \ +classpath/external/w3c_dom/org/w3c/dom/xpath/XPathException.java \ +classpath/external/w3c_dom/org/w3c/dom/xpath/XPathExpression.java \ +classpath/external/w3c_dom/org/w3c/dom/xpath/XPathNSResolver.java \ +classpath/external/w3c_dom/org/w3c/dom/xpath/XPathNamespace.java \ +classpath/external/w3c_dom/org/w3c/dom/xpath/XPathResult.java + +org_xml_source_files = \ +classpath/external/sax/org/xml/sax/AttributeList.java \ +classpath/external/sax/org/xml/sax/Attributes.java \ +classpath/external/sax/org/xml/sax/ContentHandler.java \ +classpath/external/sax/org/xml/sax/DTDHandler.java \ +classpath/external/sax/org/xml/sax/DocumentHandler.java \ +classpath/external/sax/org/xml/sax/EntityResolver.java \ +classpath/external/sax/org/xml/sax/ErrorHandler.java \ +classpath/external/sax/org/xml/sax/HandlerBase.java \ +classpath/external/sax/org/xml/sax/InputSource.java \ +classpath/external/sax/org/xml/sax/Locator.java \ +classpath/external/sax/org/xml/sax/Parser.java \ +classpath/external/sax/org/xml/sax/SAXException.java \ +classpath/external/sax/org/xml/sax/SAXNotRecognizedException.java \ +classpath/external/sax/org/xml/sax/SAXNotSupportedException.java \ +classpath/external/sax/org/xml/sax/SAXParseException.java \ +classpath/external/sax/org/xml/sax/XMLFilter.java \ +classpath/external/sax/org/xml/sax/XMLReader.java \ +classpath/external/sax/org/xml/sax/ext/Attributes2.java \ +classpath/external/sax/org/xml/sax/ext/Attributes2Impl.java \ +classpath/external/sax/org/xml/sax/ext/DeclHandler.java \ +classpath/external/sax/org/xml/sax/ext/DefaultHandler2.java \ +classpath/external/sax/org/xml/sax/ext/EntityResolver2.java \ +classpath/external/sax/org/xml/sax/ext/LexicalHandler.java \ +classpath/external/sax/org/xml/sax/ext/Locator2.java \ +classpath/external/sax/org/xml/sax/ext/Locator2Impl.java \ +classpath/external/sax/org/xml/sax/helpers/AttributeListImpl.java \ +classpath/external/sax/org/xml/sax/helpers/AttributesImpl.java \ +classpath/external/sax/org/xml/sax/helpers/DefaultHandler.java \ +classpath/external/sax/org/xml/sax/helpers/LocatorImpl.java \ +classpath/external/sax/org/xml/sax/helpers/NamespaceSupport.java \ +classpath/external/sax/org/xml/sax/helpers/NewInstance.java \ +classpath/external/sax/org/xml/sax/helpers/ParserAdapter.java \ +classpath/external/sax/org/xml/sax/helpers/ParserFactory.java \ +classpath/external/sax/org/xml/sax/helpers/XMLFilterImpl.java \ +classpath/external/sax/org/xml/sax/helpers/XMLReaderAdapter.java \ +classpath/external/sax/org/xml/sax/helpers/XMLReaderFactory.java + +all_packages_source_files = \ + gnu/awt.list \ + gnu/awt/j2d.list \ + gnu/classpath.list \ + gnu/classpath/debug.list \ + gnu/gcj.list \ + gnu/gcj/convert.list \ + gnu/gcj/io.list \ + gnu/gcj/runtime.list \ + gnu/gcj/util.list \ + gnu/java/awt.list \ + gnu/java/awt/color.list \ + gnu/java/awt/image.list \ + gnu/java/awt/peer.list \ + gnu/java/io.list \ + gnu/java/lang.list \ + gnu/java/lang/reflect.list \ + gnu/java/locale.list \ + gnu/java/math.list \ + gnu/java/net.list \ + gnu/java/net/protocol/file.list \ + gnu/java/net/protocol/ftp.list \ + gnu/java/net/protocol/http.list \ + gnu/java/net/protocol/http/event.list \ + gnu/java/net/protocol/https.list \ + gnu/java/net/protocol/jar.list \ + gnu/java/nio.list \ + gnu/java/nio/channels.list \ + gnu/java/nio/charset.list \ + gnu/java/rmi.list \ + gnu/java/rmi/dgc.list \ + gnu/java/rmi/registry.list \ + gnu/java/rmi/server.list \ + gnu/java/security.list \ + gnu/java/security/action.list \ + gnu/java/security/ber.list \ + gnu/java/security/der.list \ + gnu/java/security/pkcs.list \ + gnu/java/security/provider.list \ + gnu/java/security/util.list \ + gnu/java/security/x509.list \ + gnu/java/security/x509/ext.list \ + gnu/java/text.list \ + gnu/java/util.list \ + gnu/java/util/prefs.list \ + gnu/javax/swing/text/html/parser.list \ + gnu/javax/swing/text/html/parser/models.list \ + gnu/javax/swing/text/html/parser/support.list \ + gnu/javax/swing/text/html/parser/support/low.list \ + gnu/regexp.list \ + java/applet.list \ + java/awt.list \ + java/awt/color.list \ + java/awt/datatransfer.list \ + java/awt/dnd.list \ + java/awt/dnd/peer.list \ + java/awt/event.list \ + java/awt/font.list \ + java/awt/geom.list \ + java/awt/im.list \ + java/awt/im/spi.list \ + java/awt/image.list \ + java/awt/image/renderable.list \ + java/awt/peer.list \ + java/awt/print.list \ + java/beans.list \ + java/beans/beancontext.list \ + java/io.list \ + java/lang.list \ + java/lang/annotation.list \ + java/lang/ref.list \ + java/lang/reflect.list \ + java/math.list \ + java/net.list \ + java/nio.list \ + java/nio/channels.list \ + java/nio/channels/spi.list \ + java/nio/charset.list \ + java/nio/charset/spi.list \ + java/rmi.list \ + java/rmi/activation.list \ + java/rmi/dgc.list \ + java/rmi/registry.list \ + java/rmi/server.list \ + java/security.list \ + java/security/acl.list \ + java/security/cert.list \ + java/security/interfaces.list \ + java/security/spec.list \ + java/sql.list \ + java/text.list \ + java/util.list \ + java/util/jar.list \ + java/util/logging.list \ + java/util/prefs.list \ + java/util/regex.list \ + java/util/zip.list \ + javax/accessibility.list \ + javax/crypto.list \ + javax/crypto/interfaces.list \ + javax/crypto/spec.list \ + javax/naming.list \ + javax/naming/directory.list \ + javax/naming/event.list \ + javax/naming/ldap.list \ + javax/naming/spi.list \ + javax/net.list \ + javax/net/ssl.list \ + javax/print.list \ + javax/print/attribute.list \ + javax/print/attribute/standard.list \ + javax/print/event.list \ + javax/security/auth.list \ + javax/security/auth/callback.list \ + javax/security/auth/login.list \ + javax/security/auth/spi.list \ + javax/security/auth/x500.list \ + javax/security/cert.list \ + javax/security/sasl.list \ + javax/sql.list \ + javax/swing.list \ + javax/swing/border.list \ + javax/swing/colorchooser.list \ + javax/swing/event.list \ + javax/swing/filechooser.list \ + javax/swing/plaf.list \ + javax/swing/plaf/basic.list \ + javax/swing/plaf/metal.list \ + javax/swing/table.list \ + javax/swing/text.list \ + javax/swing/text/html.list \ + javax/swing/text/html/parser.list \ + javax/swing/text/rtf.list \ + javax/swing/tree.list \ + javax/swing/undo.list \ + javax/transaction.list \ + javax/transaction/xa.list \ + org/ietf/jgss.list + +ordinary_header_files = \ + $(gnu_awt_header_files) \ + $(gnu_awt_j2d_header_files) \ + $(gnu_classpath_header_files) \ + $(gnu_classpath_debug_header_files) \ + $(gnu_gcj_header_files) \ + $(gnu_gcj_convert_header_files) \ + $(gnu_gcj_io_header_files) \ + $(gnu_gcj_runtime_header_files) \ + $(gnu_gcj_util_header_files) \ + $(gnu_java_awt_header_files) \ + $(gnu_java_awt_color_header_files) \ + $(gnu_java_awt_image_header_files) \ + $(gnu_java_awt_peer_header_files) \ + $(gnu_java_io_header_files) \ + $(gnu_java_lang_header_files) \ + $(gnu_java_lang_reflect_header_files) \ + $(gnu_java_locale_header_files) \ + $(gnu_java_math_header_files) \ + $(gnu_java_net_header_files) \ + $(gnu_java_net_protocol_file_header_files) \ + $(gnu_java_net_protocol_ftp_header_files) \ + $(gnu_java_net_protocol_http_header_files) \ + $(gnu_java_net_protocol_http_event_header_files) \ + $(gnu_java_net_protocol_https_header_files) \ + $(gnu_java_net_protocol_jar_header_files) \ + $(gnu_java_nio_header_files) \ + $(gnu_java_nio_channels_header_files) \ + $(gnu_java_nio_charset_header_files) \ + $(gnu_java_rmi_header_files) \ + $(gnu_java_rmi_dgc_header_files) \ + $(gnu_java_rmi_registry_header_files) \ + $(gnu_java_rmi_server_header_files) \ + $(gnu_java_security_header_files) \ + $(gnu_java_security_action_header_files) \ + $(gnu_java_security_ber_header_files) \ + $(gnu_java_security_der_header_files) \ + $(gnu_java_security_pkcs_header_files) \ + $(gnu_java_security_provider_header_files) \ + $(gnu_java_security_util_header_files) \ + $(gnu_java_security_x509_header_files) \ + $(gnu_java_security_x509_ext_header_files) \ + $(gnu_java_text_header_files) \ + $(gnu_java_util_header_files) \ + $(gnu_java_util_prefs_header_files) \ + $(gnu_javax_swing_text_html_parser_header_files) \ + $(gnu_javax_swing_text_html_parser_models_header_files) \ + $(gnu_javax_swing_text_html_parser_support_header_files) \ + $(gnu_javax_swing_text_html_parser_support_low_header_files) \ + $(gnu_regexp_header_files) \ + $(java_applet_header_files) \ + $(java_awt_header_files) \ + $(java_awt_color_header_files) \ + $(java_awt_datatransfer_header_files) \ + $(java_awt_dnd_header_files) \ + $(java_awt_dnd_peer_header_files) \ + $(java_awt_event_header_files) \ + $(java_awt_font_header_files) \ + $(java_awt_geom_header_files) \ + $(java_awt_im_header_files) \ + $(java_awt_im_spi_header_files) \ + $(java_awt_image_header_files) \ + $(java_awt_image_renderable_header_files) \ + $(java_awt_peer_header_files) \ + $(java_awt_print_header_files) \ + $(java_beans_header_files) \ + $(java_beans_beancontext_header_files) \ + $(java_io_header_files) \ + $(java_lang_header_files) \ + $(java_lang_annotation_header_files) \ + $(java_lang_ref_header_files) \ + $(java_lang_reflect_header_files) \ + $(java_math_header_files) \ + $(java_net_header_files) \ + $(java_nio_header_files) \ + $(java_nio_channels_header_files) \ + $(java_nio_channels_spi_header_files) \ + $(java_nio_charset_header_files) \ + $(java_nio_charset_spi_header_files) \ + $(java_rmi_header_files) \ + $(java_rmi_activation_header_files) \ + $(java_rmi_dgc_header_files) \ + $(java_rmi_registry_header_files) \ + $(java_rmi_server_header_files) \ + $(java_security_header_files) \ + $(java_security_acl_header_files) \ + $(java_security_cert_header_files) \ + $(java_security_interfaces_header_files) \ + $(java_security_spec_header_files) \ + $(java_sql_header_files) \ + $(java_text_header_files) \ + $(java_util_header_files) \ + $(java_util_jar_header_files) \ + $(java_util_logging_header_files) \ + $(java_util_prefs_header_files) \ + $(java_util_regex_header_files) \ + $(java_util_zip_header_files) \ + $(javax_accessibility_header_files) \ + $(javax_crypto_header_files) \ + $(javax_crypto_interfaces_header_files) \ + $(javax_crypto_spec_header_files) \ + $(javax_naming_header_files) \ + $(javax_naming_directory_header_files) \ + $(javax_naming_event_header_files) \ + $(javax_naming_ldap_header_files) \ + $(javax_naming_spi_header_files) \ + $(javax_net_header_files) \ + $(javax_net_ssl_header_files) \ + $(javax_print_header_files) \ + $(javax_print_attribute_header_files) \ + $(javax_print_attribute_standard_header_files) \ + $(javax_print_event_header_files) \ + $(javax_security_auth_header_files) \ + $(javax_security_auth_callback_header_files) \ + $(javax_security_auth_login_header_files) \ + $(javax_security_auth_spi_header_files) \ + $(javax_security_auth_x500_header_files) \ + $(javax_security_cert_header_files) \ + $(javax_security_sasl_header_files) \ + $(javax_sql_header_files) \ + $(javax_swing_header_files) \ + $(javax_swing_border_header_files) \ + $(javax_swing_colorchooser_header_files) \ + $(javax_swing_event_header_files) \ + $(javax_swing_filechooser_header_files) \ + $(javax_swing_plaf_header_files) \ + $(javax_swing_plaf_basic_header_files) \ + $(javax_swing_plaf_metal_header_files) \ + $(javax_swing_table_header_files) \ + $(javax_swing_text_header_files) \ + $(javax_swing_text_html_header_files) \ + $(javax_swing_text_html_parser_header_files) \ + $(javax_swing_text_rtf_header_files) \ + $(javax_swing_tree_header_files) \ + $(javax_swing_undo_header_files) \ + $(javax_transaction_header_files) \ + $(javax_transaction_xa_header_files) \ + $(org_ietf_jgss_header_files) + +bc_objects = \ + gnu-java-beans.lo \ + gnu-xml.lo \ + javax-imageio.lo \ + javax-xml.lo \ + org-w3c.lo \ + org-xml.lo + +omitted_headers = java/lang/ClassLoader.h java/lang/Thread.h \ + java/lang/String.h java/lang/reflect/Constructor.h \ + java/lang/reflect/Field.h java/lang/reflect/Method.h \ + java/lang/reflect/Proxy.h gnu/gcj/runtime/ExtensionClassLoader.h + +generic_header_files = $(filter-out $(omitted_headers),$(ordinary_header_files) $(xlib_nat_headers)) \ + gnu/gcj/tools/gcj_dbtool/Main.h + +inner_nat_headers = java/io/ObjectOutputStream$$PutField.h \ + java/io/ObjectInputStream$$GetField.h \ + java/nio/DirectByteBufferImpl$$ReadWrite.h \ + java/nio/channels/Pipe$$SinkChannel.h \ + java/nio/channels/Pipe$$SourceChannel.h \ + java/lang/reflect/Proxy$$ProxyData.h \ + java/lang/reflect/Proxy$$ProxyType.h \ + gnu/java/net/PlainSocketImpl$$SocketInputStream.h \ + gnu/java/net/PlainSocketImpl$$SocketOutputStream.h \ + gnu/java/nio/PipeImpl$$SinkChannelImpl.h \ + gnu/java/nio/PipeImpl$$SourceChannelImpl.h \ + $(PLATFORM_INNER_NAT_HDRS) + +nat_headers = $(ordinary_header_files) $(inner_nat_headers) \ + gnu/gcj/tools/gcj_dbtool/Main.h + +nat_headers_install = $(ordinary_header_files) +xlib_nat_headers = $(patsubst %.java,%.h,$(xlib_java_source_files)) +extra_headers = java/lang/Object.h java/lang/Class.h +NM = nm +@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@gen_from_JIS_SOURCES = \ +@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gnu/gcj/convert/gen-from-JIS.c \ +@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gnu/gcj/convert/make-trie.c + +@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@gen_from_JIS_DEPENDENCIES = \ +@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gnu/gcj/convert/JIS0201.h \ +@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gnu/gcj/convert/JIS0208.h \ +@MAINTAINER_MODE_TRUE@@NATIVE_TRUE@ gnu/gcj/convert/JIS0212.h + +jv_convert_SOURCES = +jv_convert_LDFLAGS = --main=gnu.gcj.convert.Convert \ + -rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS) + +jv_convert_LINK = $(GCJLINK) +jv_convert_LDADD = -L$(here)/.libs libgcj.la +jv_convert_DEPENDENCIES = libgcj.la libgcj.spec +gcj_dbtool_SOURCES = \ +gnu/gcj/tools/gcj_dbtool/Main.java \ +gnu/gcj/tools/gcj_dbtool/natMain.cc + +gcj_dbtool_LDFLAGS = --main=gnu.gcj.tools.gcj_dbtool.Main \ + -rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS) + +gcj_dbtool_LINK = $(GCJLINK) +gcj_dbtool_LDADD = -L$(here)/.libs libgcj.la +gcj_dbtool_DEPENDENCIES = libgcj.la libgcj.spec +gij_SOURCES = +gij_LDFLAGS = -rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS) +gij_LINK = $(GCJLINK) +gij_LDADD = -L$(here)/.libs libgij.la +gij_DEPENDENCIES = libgij.la +grmic_SOURCES = +grmic_LDFLAGS = --main=gnu.java.rmi.rmic.RMIC \ + -rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS) + +grmic_LINK = $(GCJLINK) +grmic_LDADD = -L$(here)/.libs libgcj.la +grmic_DEPENDENCIES = libgcj.la libgcj.spec +grmiregistry_SOURCES = +grmiregistry_LDFLAGS = --main=gnu.java.rmi.registry.RegistryImpl \ + -rpath $(toolexeclibdir) -shared-libgcc $(THREADLDFLAGS) + +grmiregistry_LINK = $(GCJLINK) +grmiregistry_LDADD = -L$(here)/.libs libgcj.la +grmiregistry_DEPENDENCIES = libgcj.la libgcj.spec nat_source_files = \ gnu/classpath/natSystemProperties.cc \ gnu/gcj/natCore.cc \ @@ -3892,6 +4759,7 @@ gnu/gcj/xlib/natXImage.cc \ gnu/gcj/xlib/natXUnmapEvent.cc sourcesdir = $(jardir) +headers_to_make = $(nat_headers) $(am__append_14) # Work around what appears to be a GNU make bug handling MAKEFLAGS # values defined in terms of make variables, as is the case for CC and @@ -3948,10 +4816,10 @@ MULTICLEAN = true all: all-recursive .SUFFIXES: -.SUFFIXES: .class .java .h .properties .c .cc .lo .o .obj +.SUFFIXES: .class .java .h .properties .list .c .cc .lo .o .obj am--refresh: @: -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/sources.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -3988,8 +4856,6 @@ libgcj.spec: $(top_builddir)/config.status $(srcdir)/libgcj.spec.in cd $(top_builddir) && $(SHELL) ./config.status $@ libgcj-test.spec: $(top_builddir)/config.status $(srcdir)/libgcj-test.spec.in cd $(top_builddir) && $(SHELL) ./config.status $@ -gnu/classpath/Configuration.java: $(top_builddir)/config.status $(top_srcdir)/gnu/classpath/Configuration.java.in - cd $(top_builddir) && $(SHELL) ./config.status $@ install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES) @$(NORMAL_INSTALL) test -z "$(toolexeclibdir)" || $(mkdir_p) "$(DESTDIR)$(toolexeclibdir)" @@ -4083,140 +4949,18 @@ gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXImage.lo: \ gnu/gcj/xlib/lib_gnu_awt_xlib_la-natXUnmapEvent.lo: \ gnu/gcj/xlib/$(am__dirstamp) \ gnu/gcj/xlib/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/$(am__dirstamp): - @$(mkdir_p) jni/gtk-peer - @: > jni/gtk-peer/$(am__dirstamp) -jni/gtk-peer/$(DEPDIR)/$(am__dirstamp): - @$(mkdir_p) jni/gtk-peer/$(DEPDIR) - @: > jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gthread-jni.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) -jni/classpath/$(am__dirstamp): - @$(mkdir_p) jni/classpath - @: > jni/classpath/$(am__dirstamp) -jni/classpath/$(DEPDIR)/$(am__dirstamp): - @$(mkdir_p) jni/classpath/$(DEPDIR) - @: > jni/classpath/$(DEPDIR)/$(am__dirstamp) -jni/classpath/lib_gnu_java_awt_peer_gtk_la-native_state.lo: \ - jni/classpath/$(am__dirstamp) \ - jni/classpath/$(DEPDIR)/$(am__dirstamp) -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.lo: \ - jni/gtk-peer/$(am__dirstamp) \ - jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) lib-gnu-java-awt-peer-gtk.la: $(lib_gnu_java_awt_peer_gtk_la_OBJECTS) $(lib_gnu_java_awt_peer_gtk_la_DEPENDENCIES) $(lib_gnu_java_awt_peer_gtk_la_LINK) $(am_lib_gnu_java_awt_peer_gtk_la_rpath) $(lib_gnu_java_awt_peer_gtk_la_LDFLAGS) $(lib_gnu_java_awt_peer_gtk_la_OBJECTS) $(lib_gnu_java_awt_peer_gtk_la_LIBADD) $(LIBS) +java/lang/$(am__dirstamp): + @$(mkdir_p) java/lang + @: > java/lang/$(am__dirstamp) +java/lang/$(DEPDIR)/$(am__dirstamp): + @$(mkdir_p) java/lang/$(DEPDIR) + @: > java/lang/$(DEPDIR)/$(am__dirstamp) +java/lang/Class.lo: java/lang/$(am__dirstamp) \ + java/lang/$(DEPDIR)/$(am__dirstamp) +java/lang/Object.lo: java/lang/$(am__dirstamp) \ + java/lang/$(DEPDIR)/$(am__dirstamp) gnu/classpath/$(am__dirstamp): @$(mkdir_p) gnu/classpath @: > gnu/classpath/$(am__dirstamp) @@ -4350,12 +5094,6 @@ java/io/natObjectInputStream.lo: java/io/$(am__dirstamp) \ java/io/$(DEPDIR)/$(am__dirstamp) java/io/natVMObjectStreamClass.lo: java/io/$(am__dirstamp) \ java/io/$(DEPDIR)/$(am__dirstamp) -java/lang/$(am__dirstamp): - @$(mkdir_p) java/lang - @: > java/lang/$(am__dirstamp) -java/lang/$(DEPDIR)/$(am__dirstamp): - @$(mkdir_p) java/lang/$(DEPDIR) - @: > java/lang/$(DEPDIR)/$(am__dirstamp) java/lang/natCharacter.lo: java/lang/$(am__dirstamp) \ java/lang/$(DEPDIR)/$(am__dirstamp) java/lang/natClass.lo: java/lang/$(am__dirstamp) \ @@ -4477,84 +5215,6 @@ java/util/zip/natDeflater.lo: java/util/zip/$(am__dirstamp) \ java/util/zip/$(DEPDIR)/$(am__dirstamp) java/util/zip/natInflater.lo: java/util/zip/$(am__dirstamp) \ java/util/zip/$(DEPDIR)/$(am__dirstamp) -java/lang/dtoa.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/k_rem_pio2.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/s_tan.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/e_acos.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/k_sin.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/strtod.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/e_asin.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/k_tan.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/w_acos.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/e_atan2.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/mprec.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/w_asin.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/e_exp.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/s_atan.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/w_atan2.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/e_fmod.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/s_ceil.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/w_exp.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/e_log.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/s_copysign.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/w_fmod.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/e_pow.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/s_cos.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/w_log.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/e_rem_pio2.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/s_fabs.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/w_pow.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/e_remainder.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/s_floor.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/w_remainder.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/e_scalb.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/s_rint.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/w_sqrt.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/e_sqrt.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/s_scalbn.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/sf_rint.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/k_cos.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/s_sin.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) -java/lang/sf_fabs.lo: java/lang/$(am__dirstamp) \ - java/lang/$(DEPDIR)/$(am__dirstamp) sysdep/$(am__dirstamp): @$(mkdir_p) sysdep @: > sysdep/$(am__dirstamp) @@ -4759,40 +5419,10 @@ mostlyclean-compile: -rm -f java/io/natObjectInputStream.lo -rm -f java/io/natVMObjectStreamClass.$(OBJEXT) -rm -f java/io/natVMObjectStreamClass.lo - -rm -f java/lang/dtoa.$(OBJEXT) - -rm -f java/lang/dtoa.lo - -rm -f java/lang/e_acos.$(OBJEXT) - -rm -f java/lang/e_acos.lo - -rm -f java/lang/e_asin.$(OBJEXT) - -rm -f java/lang/e_asin.lo - -rm -f java/lang/e_atan2.$(OBJEXT) - -rm -f java/lang/e_atan2.lo - -rm -f java/lang/e_exp.$(OBJEXT) - -rm -f java/lang/e_exp.lo - -rm -f java/lang/e_fmod.$(OBJEXT) - -rm -f java/lang/e_fmod.lo - -rm -f java/lang/e_log.$(OBJEXT) - -rm -f java/lang/e_log.lo - -rm -f java/lang/e_pow.$(OBJEXT) - -rm -f java/lang/e_pow.lo - -rm -f java/lang/e_rem_pio2.$(OBJEXT) - -rm -f java/lang/e_rem_pio2.lo - -rm -f java/lang/e_remainder.$(OBJEXT) - -rm -f java/lang/e_remainder.lo - -rm -f java/lang/e_scalb.$(OBJEXT) - -rm -f java/lang/e_scalb.lo - -rm -f java/lang/e_sqrt.$(OBJEXT) - -rm -f java/lang/e_sqrt.lo - -rm -f java/lang/k_cos.$(OBJEXT) - -rm -f java/lang/k_cos.lo - -rm -f java/lang/k_rem_pio2.$(OBJEXT) - -rm -f java/lang/k_rem_pio2.lo - -rm -f java/lang/k_sin.$(OBJEXT) - -rm -f java/lang/k_sin.lo - -rm -f java/lang/k_tan.$(OBJEXT) - -rm -f java/lang/k_tan.lo - -rm -f java/lang/mprec.$(OBJEXT) - -rm -f java/lang/mprec.lo + -rm -f java/lang/Class.$(OBJEXT) + -rm -f java/lang/Class.lo + -rm -f java/lang/Object.$(OBJEXT) + -rm -f java/lang/Object.lo -rm -f java/lang/natCharacter.$(OBJEXT) -rm -f java/lang/natCharacter.lo -rm -f java/lang/natClass.$(OBJEXT) @@ -4839,50 +5469,6 @@ mostlyclean-compile: -rm -f java/lang/reflect/natMethod.lo -rm -f java/lang/reflect/natProxy.$(OBJEXT) -rm -f java/lang/reflect/natProxy.lo - -rm -f java/lang/s_atan.$(OBJEXT) - -rm -f java/lang/s_atan.lo - -rm -f java/lang/s_ceil.$(OBJEXT) - -rm -f java/lang/s_ceil.lo - -rm -f java/lang/s_copysign.$(OBJEXT) - -rm -f java/lang/s_copysign.lo - -rm -f java/lang/s_cos.$(OBJEXT) - -rm -f java/lang/s_cos.lo - -rm -f java/lang/s_fabs.$(OBJEXT) - -rm -f java/lang/s_fabs.lo - -rm -f java/lang/s_floor.$(OBJEXT) - -rm -f java/lang/s_floor.lo - -rm -f java/lang/s_rint.$(OBJEXT) - -rm -f java/lang/s_rint.lo - -rm -f java/lang/s_scalbn.$(OBJEXT) - -rm -f java/lang/s_scalbn.lo - -rm -f java/lang/s_sin.$(OBJEXT) - -rm -f java/lang/s_sin.lo - -rm -f java/lang/s_tan.$(OBJEXT) - -rm -f java/lang/s_tan.lo - -rm -f java/lang/sf_fabs.$(OBJEXT) - -rm -f java/lang/sf_fabs.lo - -rm -f java/lang/sf_rint.$(OBJEXT) - -rm -f java/lang/sf_rint.lo - -rm -f java/lang/strtod.$(OBJEXT) - -rm -f java/lang/strtod.lo - -rm -f java/lang/w_acos.$(OBJEXT) - -rm -f java/lang/w_acos.lo - -rm -f java/lang/w_asin.$(OBJEXT) - -rm -f java/lang/w_asin.lo - -rm -f java/lang/w_atan2.$(OBJEXT) - -rm -f java/lang/w_atan2.lo - -rm -f java/lang/w_exp.$(OBJEXT) - -rm -f java/lang/w_exp.lo - -rm -f java/lang/w_fmod.$(OBJEXT) - -rm -f java/lang/w_fmod.lo - -rm -f java/lang/w_log.$(OBJEXT) - -rm -f java/lang/w_log.lo - -rm -f java/lang/w_pow.$(OBJEXT) - -rm -f java/lang/w_pow.lo - -rm -f java/lang/w_remainder.$(OBJEXT) - -rm -f java/lang/w_remainder.lo - -rm -f java/lang/w_sqrt.$(OBJEXT) - -rm -f java/lang/w_sqrt.lo -rm -f java/net/natInetAddress.$(OBJEXT) -rm -f java/net/natInetAddress.lo -rm -f java/net/natVMNetworkInterface.$(OBJEXT) @@ -4903,86 +5489,6 @@ mostlyclean-compile: -rm -f java/util/zip/natDeflater.lo -rm -f java/util/zip/natInflater.$(OBJEXT) -rm -f java/util/zip/natInflater.lo - -rm -f jni/classpath/lib_gnu_java_awt_peer_gtk_la-native_state.$(OBJEXT) - -rm -f jni/classpath/lib_gnu_java_awt_peer_gtk_la-native_state.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gthread-jni.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gthread-jni.lo - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.$(OBJEXT) - -rm -f jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.lo -rm -f sysdep/dwarf2-backtrace.$(OBJEXT) -rm -f sysdep/dwarf2-backtrace.lo @@ -5058,23 +5564,8 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@java/io/$(DEPDIR)/natFile.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@java/io/$(DEPDIR)/natObjectInputStream.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@java/io/$(DEPDIR)/natVMObjectStreamClass.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/dtoa.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/e_acos.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/e_asin.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/e_atan2.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/e_exp.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/e_fmod.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/e_log.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/e_pow.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/e_rem_pio2.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/e_remainder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/e_scalb.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/e_sqrt.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/k_cos.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/k_rem_pio2.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/k_sin.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/k_tan.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/mprec.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/Class.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/Object.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/natCharacter.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/natClass.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/natClassLoader.Plo@am__quote@ @@ -5092,28 +5583,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/natVMClassLoader.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/natVMSecurityManager.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/natVMThrowable.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/s_atan.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/s_ceil.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/s_copysign.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/s_cos.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/s_fabs.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/s_floor.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/s_rint.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/s_scalbn.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/s_sin.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/s_tan.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/sf_fabs.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/sf_rint.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/strtod.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/w_acos.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/w_asin.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/w_atan2.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/w_exp.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/w_fmod.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/w_log.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/w_pow.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/w_remainder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/w_sqrt.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@java/lang/ref/$(DEPDIR)/natReference.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@java/lang/reflect/$(DEPDIR)/natArray.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@java/lang/reflect/$(DEPDIR)/natConstructor.Plo@am__quote@ @@ -5130,46 +5599,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@java/util/logging/$(DEPDIR)/natLogger.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@java/util/zip/$(DEPDIR)/natDeflater.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@java/util/zip/$(DEPDIR)/natInflater.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/classpath/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-native_state.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gthread-jni.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@sysdep/$(DEPDIR)/dwarf2-backtrace.Plo@am__quote@ .c.o: @@ -5196,286 +5625,6 @@ distclean-compile: @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GdkTextLayout.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkTextLayout.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkTextLayout.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GdkTextLayout.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkTextLayout.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkTextLayout.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkTextLayout.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkFontPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkPixbufDecoder.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkRobotPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkRobotPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkButtonPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCanvasPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkCheckboxPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkChoicePeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkClipboard.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkComponentPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkEvents.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFileDialogPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFramePeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFramePeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFramePeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFramePeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkFramePeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFramePeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFramePeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkGenericPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkImagePainter.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkLabelPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkListPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuBarPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuComponentPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuItemPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkMenuPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPanelPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkPopupMenuPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollBarPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkScrollPanePeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextAreaPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextComponentPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkTextFieldPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkToolkit.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GtkWindowPeer.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gthread-jni.lo: jni/gtk-peer/gthread-jni.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gthread-jni.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gthread-jni.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gthread-jni.lo `test -f 'jni/gtk-peer/gthread-jni.c' || echo '$(srcdir)/'`jni/gtk-peer/gthread-jni.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gthread-jni.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gthread-jni.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gthread-jni.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gthread-jni.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gthread-jni.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gthread-jni.lo `test -f 'jni/gtk-peer/gthread-jni.c' || echo '$(srcdir)/'`jni/gtk-peer/gthread-jni.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.lo: jni/gtk-peer/gtk_jawt.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.lo `test -f 'jni/gtk-peer/gtk_jawt.c' || echo '$(srcdir)/'`jni/gtk-peer/gtk_jawt.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gtk_jawt.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gtk_jawt.lo `test -f 'jni/gtk-peer/gtk_jawt.c' || echo '$(srcdir)/'`jni/gtk-peer/gtk_jawt.c - -jni/classpath/lib_gnu_java_awt_peer_gtk_la-native_state.lo: jni/classpath/native_state.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/classpath/lib_gnu_java_awt_peer_gtk_la-native_state.lo -MD -MP -MF "jni/classpath/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-native_state.Tpo" -c -o jni/classpath/lib_gnu_java_awt_peer_gtk_la-native_state.lo `test -f 'jni/classpath/native_state.c' || echo '$(srcdir)/'`jni/classpath/native_state.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/classpath/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-native_state.Tpo" "jni/classpath/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-native_state.Plo"; else rm -f "jni/classpath/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-native_state.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/classpath/native_state.c' object='jni/classpath/lib_gnu_java_awt_peer_gtk_la-native_state.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/classpath/lib_gnu_java_awt_peer_gtk_la-native_state.lo `test -f 'jni/classpath/native_state.c' || echo '$(srcdir)/'`jni/classpath/native_state.c - -jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.lo: jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c -@am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -MT jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.lo -MD -MP -MF "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.Tpo" -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c; \ -@am__fastdepCC_TRUE@ then mv -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.Tpo" "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.Plo"; else rm -f "jni/gtk-peer/$(DEPDIR)/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c' object='jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_gnu_java_awt_peer_gtk_la_CFLAGS) $(CFLAGS) -c -o jni/gtk-peer/lib_gnu_java_awt_peer_gtk_la-gnu_java_awt_peer_gtk_GdkGraphics2D.lo `test -f 'jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c' || echo '$(srcdir)/'`jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c - libgcjawt_la-jawt.lo: jawt.c @am__fastdepCC_TRUE@ if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgcjawt_la_CFLAGS) $(CFLAGS) -MT libgcjawt_la-jawt.lo -MD -MP -MF "$(DEPDIR)/libgcjawt_la-jawt.Tpo" -c -o libgcjawt_la-jawt.lo `test -f 'jawt.c' || echo '$(srcdir)/'`jawt.c; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libgcjawt_la-jawt.Tpo" "$(DEPDIR)/libgcjawt_la-jawt.Plo"; else rm -f "$(DEPDIR)/libgcjawt_la-jawt.Tpo"; exit 1; fi @@ -5699,8 +5848,6 @@ clean-libtool: -rm -rf java/util/.libs java/util/_libs -rm -rf java/util/logging/.libs java/util/logging/_libs -rm -rf java/util/zip/.libs java/util/zip/_libs - -rm -rf jni/classpath/.libs jni/classpath/_libs - -rm -rf jni/gtk-peer/.libs jni/gtk-peer/_libs -rm -rf sysdep/.libs sysdep/_libs distclean-libtool: @@ -5782,7 +5929,13 @@ uninstall-toolexecmainlibDATA: # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): - @set fnord $$MAKEFLAGS; amf=$$2; \ + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ @@ -5794,7 +5947,7 @@ $(RECURSIVE_TARGETS): local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ @@ -5802,7 +5955,13 @@ $(RECURSIVE_TARGETS): mostlyclean-recursive clean-recursive distclean-recursive \ maintainer-clean-recursive: - @set fnord $$MAKEFLAGS; amf=$$2; \ + @failcom='exit 1'; \ + for f in x $$MAKEFLAGS; do \ + case $$f in \ + *=* | --[!k]*);; \ + *k*) failcom='fail=yes';; \ + esac; \ + done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ @@ -5823,7 +5982,7 @@ maintainer-clean-recursive: local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ @@ -5898,7 +6057,7 @@ distclean-tags: distdir: $(DISTFILES) $(am__remove_distdir) mkdir $(distdir) - $(mkdir_p) $(distdir)/. $(distdir)/.. $(distdir)/../config $(distdir)/gnu/awt $(distdir)/gnu/awt/j2d $(distdir)/gnu/awt/xlib $(distdir)/gnu/classpath $(distdir)/gnu/gcj $(distdir)/gnu/gcj/convert $(distdir)/gnu/gcj/io $(distdir)/gnu/gcj/runtime $(distdir)/gnu/gcj/tools/gcj_dbtool $(distdir)/gnu/gcj/util $(distdir)/gnu/gcj/xlib $(distdir)/gnu/java/awt $(distdir)/gnu/java/awt/color $(distdir)/gnu/java/awt/image $(distdir)/gnu/java/awt/peer $(distdir)/gnu/java/awt/peer/gtk $(distdir)/gnu/java/beans $(distdir)/gnu/java/beans/decoder $(distdir)/gnu/java/beans/editors $(distdir)/gnu/java/io $(distdir)/gnu/java/lang $(distdir)/gnu/java/lang/reflect $(distdir)/gnu/java/locale $(distdir)/gnu/java/math $(distdir)/gnu/java/net $(distdir)/gnu/java/net/protocol/core $(distdir)/gnu/java/net/protocol/file $(distdir)/gnu/java/net/protocol/ftp $(distdir)/gnu/java/net/protocol/gcjlib $(distdir)/gnu/java/net/protocol/http $(distdir)/gnu/java/net/protocol/http/event $(distdir)/gnu/java/net/protocol/https $(distdir)/gnu/java/net/protocol/jar $(distdir)/gnu/java/nio $(distdir)/gnu/java/nio/channels $(distdir)/gnu/java/nio/charset $(distdir)/gnu/java/rmi $(distdir)/gnu/java/rmi/dgc $(distdir)/gnu/java/rmi/registry $(distdir)/gnu/java/rmi/rmic $(distdir)/gnu/java/rmi/server $(distdir)/gnu/java/security $(distdir)/gnu/java/security/action $(distdir)/gnu/java/security/ber $(distdir)/gnu/java/security/der $(distdir)/gnu/java/security/pkcs $(distdir)/gnu/java/security/provider $(distdir)/gnu/java/security/util $(distdir)/gnu/java/security/x509 $(distdir)/gnu/java/security/x509/ext $(distdir)/gnu/java/text $(distdir)/gnu/java/util $(distdir)/gnu/java/util/prefs $(distdir)/gnu/javax/swing/text/html/parser $(distdir)/gnu/javax/swing/text/html/parser/models $(distdir)/gnu/javax/swing/text/html/parser/support $(distdir)/gnu/javax/swing/text/html/parser/support/low $(distdir)/gnu/regexp $(distdir)/gnu/xml/aelfred2 $(distdir)/gnu/xml/dom $(distdir)/gnu/xml/dom/html2 $(distdir)/gnu/xml/dom/ls $(distdir)/gnu/xml/pipeline $(distdir)/gnu/xml/transform $(distdir)/gnu/xml/util $(distdir)/gnu/xml/xpath $(distdir)/java/applet $(distdir)/java/awt $(distdir)/java/awt/color $(distdir)/java/awt/datatransfer $(distdir)/java/awt/dnd $(distdir)/java/awt/dnd/peer $(distdir)/java/awt/event $(distdir)/java/awt/font $(distdir)/java/awt/geom $(distdir)/java/awt/im $(distdir)/java/awt/im/spi $(distdir)/java/awt/image $(distdir)/java/awt/image/renderable $(distdir)/java/awt/peer $(distdir)/java/awt/print $(distdir)/java/beans $(distdir)/java/beans/beancontext $(distdir)/java/io $(distdir)/java/lang $(distdir)/java/lang/ref $(distdir)/java/lang/reflect $(distdir)/java/math $(distdir)/java/net $(distdir)/java/nio $(distdir)/java/nio/channels $(distdir)/java/nio/channels/spi $(distdir)/java/nio/charset $(distdir)/java/nio/charset/spi $(distdir)/java/rmi $(distdir)/java/rmi/activation $(distdir)/java/rmi/dgc $(distdir)/java/rmi/registry $(distdir)/java/rmi/server $(distdir)/java/security $(distdir)/java/security/acl $(distdir)/java/security/cert $(distdir)/java/security/interfaces $(distdir)/java/security/spec $(distdir)/java/sql $(distdir)/java/text $(distdir)/java/util $(distdir)/java/util/jar $(distdir)/java/util/logging $(distdir)/java/util/prefs $(distdir)/java/util/regex $(distdir)/java/util/zip $(distdir)/javax/accessibility $(distdir)/javax/crypto $(distdir)/javax/crypto/interfaces $(distdir)/javax/crypto/spec $(distdir)/javax/imageio $(distdir)/javax/imageio/event $(distdir)/javax/imageio/metadata $(distdir)/javax/imageio/spi $(distdir)/javax/imageio/stream $(distdir)/javax/naming $(distdir)/javax/naming/directory $(distdir)/javax/naming/event $(distdir)/javax/naming/ldap $(distdir)/javax/naming/spi $(distdir)/javax/net $(distdir)/javax/net/ssl $(distdir)/javax/print $(distdir)/javax/print/attribute $(distdir)/javax/print/attribute/standard $(distdir)/javax/print/event $(distdir)/javax/security/auth $(distdir)/javax/security/auth/callback $(distdir)/javax/security/auth/login $(distdir)/javax/security/auth/spi $(distdir)/javax/security/auth/x500 $(distdir)/javax/security/cert $(distdir)/javax/security/sasl $(distdir)/javax/sql $(distdir)/javax/swing $(distdir)/javax/swing/border $(distdir)/javax/swing/colorchooser $(distdir)/javax/swing/event $(distdir)/javax/swing/filechooser $(distdir)/javax/swing/plaf $(distdir)/javax/swing/plaf/basic $(distdir)/javax/swing/plaf/metal $(distdir)/javax/swing/table $(distdir)/javax/swing/text $(distdir)/javax/swing/text/html $(distdir)/javax/swing/text/html/parser $(distdir)/javax/swing/text/rtf $(distdir)/javax/swing/tree $(distdir)/javax/swing/undo $(distdir)/javax/transaction $(distdir)/javax/transaction/xa $(distdir)/javax/xml $(distdir)/javax/xml/datatype $(distdir)/javax/xml/namespace $(distdir)/javax/xml/parsers $(distdir)/javax/xml/transform $(distdir)/javax/xml/transform/dom $(distdir)/javax/xml/transform/sax $(distdir)/javax/xml/transform/stream $(distdir)/javax/xml/validation $(distdir)/javax/xml/xpath $(distdir)/org/ietf/jgss + $(mkdir_p) $(distdir)/. $(distdir)/.. $(distdir)/../config @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ @@ -6114,10 +6273,6 @@ distclean-generic: -rm -f java/util/logging/$(am__dirstamp) -rm -f java/util/zip/$(DEPDIR)/$(am__dirstamp) -rm -f java/util/zip/$(am__dirstamp) - -rm -f jni/classpath/$(DEPDIR)/$(am__dirstamp) - -rm -f jni/classpath/$(am__dirstamp) - -rm -f jni/gtk-peer/$(DEPDIR)/$(am__dirstamp) - -rm -f jni/gtk-peer/$(am__dirstamp) -rm -f sysdep/$(DEPDIR)/$(am__dirstamp) -rm -f sysdep/$(am__dirstamp) -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) @@ -6127,13 +6282,13 @@ maintainer-clean-generic: @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive -clean-am: clean-binPROGRAMS clean-generic clean-libtool clean-local \ +clean-am: clean-binPROGRAMS clean-generic clean-libtool \ clean-noinstPROGRAMS clean-toolexeclibLTLIBRARIES \ mostlyclean-am distclean: distclean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) - -rm -rf ./$(DEPDIR) gnu/classpath/$(DEPDIR) gnu/gcj/$(DEPDIR) gnu/gcj/convert/$(DEPDIR) gnu/gcj/io/$(DEPDIR) gnu/gcj/runtime/$(DEPDIR) gnu/gcj/tools/gcj_dbtool/$(DEPDIR) gnu/gcj/util/$(DEPDIR) gnu/gcj/xlib/$(DEPDIR) gnu/java/lang/$(DEPDIR) gnu/java/net/$(DEPDIR) gnu/java/net/protocol/core/$(DEPDIR) gnu/java/nio/$(DEPDIR) gnu/java/nio/channels/$(DEPDIR) java/io/$(DEPDIR) java/lang/$(DEPDIR) java/lang/ref/$(DEPDIR) java/lang/reflect/$(DEPDIR) java/net/$(DEPDIR) java/nio/$(DEPDIR) java/nio/channels/$(DEPDIR) java/text/$(DEPDIR) java/util/$(DEPDIR) java/util/logging/$(DEPDIR) java/util/zip/$(DEPDIR) jni/classpath/$(DEPDIR) jni/gtk-peer/$(DEPDIR) sysdep/$(DEPDIR) + -rm -rf ./$(DEPDIR) gnu/classpath/$(DEPDIR) gnu/gcj/$(DEPDIR) gnu/gcj/convert/$(DEPDIR) gnu/gcj/io/$(DEPDIR) gnu/gcj/runtime/$(DEPDIR) gnu/gcj/tools/gcj_dbtool/$(DEPDIR) gnu/gcj/util/$(DEPDIR) gnu/gcj/xlib/$(DEPDIR) gnu/java/lang/$(DEPDIR) gnu/java/net/$(DEPDIR) gnu/java/net/protocol/core/$(DEPDIR) gnu/java/nio/$(DEPDIR) gnu/java/nio/channels/$(DEPDIR) java/io/$(DEPDIR) java/lang/$(DEPDIR) java/lang/ref/$(DEPDIR) java/lang/reflect/$(DEPDIR) java/net/$(DEPDIR) java/nio/$(DEPDIR) java/nio/channels/$(DEPDIR) java/text/$(DEPDIR) java/util/$(DEPDIR) java/util/logging/$(DEPDIR) java/util/zip/$(DEPDIR) sysdep/$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-libtool distclean-local distclean-tags @@ -6164,7 +6319,7 @@ installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache - -rm -rf ./$(DEPDIR) gnu/classpath/$(DEPDIR) gnu/gcj/$(DEPDIR) gnu/gcj/convert/$(DEPDIR) gnu/gcj/io/$(DEPDIR) gnu/gcj/runtime/$(DEPDIR) gnu/gcj/tools/gcj_dbtool/$(DEPDIR) gnu/gcj/util/$(DEPDIR) gnu/gcj/xlib/$(DEPDIR) gnu/java/lang/$(DEPDIR) gnu/java/net/$(DEPDIR) gnu/java/net/protocol/core/$(DEPDIR) gnu/java/nio/$(DEPDIR) gnu/java/nio/channels/$(DEPDIR) java/io/$(DEPDIR) java/lang/$(DEPDIR) java/lang/ref/$(DEPDIR) java/lang/reflect/$(DEPDIR) java/net/$(DEPDIR) java/nio/$(DEPDIR) java/nio/channels/$(DEPDIR) java/text/$(DEPDIR) java/util/$(DEPDIR) java/util/logging/$(DEPDIR) java/util/zip/$(DEPDIR) jni/classpath/$(DEPDIR) jni/gtk-peer/$(DEPDIR) sysdep/$(DEPDIR) + -rm -rf ./$(DEPDIR) gnu/classpath/$(DEPDIR) gnu/gcj/$(DEPDIR) gnu/gcj/convert/$(DEPDIR) gnu/gcj/io/$(DEPDIR) gnu/gcj/runtime/$(DEPDIR) gnu/gcj/tools/gcj_dbtool/$(DEPDIR) gnu/gcj/util/$(DEPDIR) gnu/gcj/xlib/$(DEPDIR) gnu/java/lang/$(DEPDIR) gnu/java/net/$(DEPDIR) gnu/java/net/protocol/core/$(DEPDIR) gnu/java/nio/$(DEPDIR) gnu/java/nio/channels/$(DEPDIR) java/io/$(DEPDIR) java/lang/$(DEPDIR) java/lang/ref/$(DEPDIR) java/lang/reflect/$(DEPDIR) java/net/$(DEPDIR) java/nio/$(DEPDIR) java/nio/channels/$(DEPDIR) java/text/$(DEPDIR) java/util/$(DEPDIR) java/util/logging/$(DEPDIR) java/util/zip/$(DEPDIR) sysdep/$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic @@ -6190,7 +6345,7 @@ uninstall-info: uninstall-info-recursive .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \ check-am clean clean-binPROGRAMS clean-generic clean-libtool \ - clean-local clean-noinstPROGRAMS clean-recursive \ + clean-noinstPROGRAMS clean-recursive \ clean-toolexeclibLTLIBRARIES ctags ctags-recursive dist \ dist-all dist-bzip2 dist-gzip dist-shar dist-tarZ dist-zip \ distcheck distclean distclean-compile distclean-generic \ @@ -6214,174 +6369,25 @@ uninstall-info: uninstall-info-recursive uninstall-toolexecmainlibDATA -# Build dependencies between java, class and lo files. They are included -# below, together with automatically-generated dependencies between Java -# files. -# -# Dependencies from Java to .class files -# -------------------------------------- -# Each directory's filelist file depends on the corresponding Java source files. -# The stamp file depends on the filelist (using a `Static Pattern Rule'). -# Each class file depends on the its directory's .stamp file. This reflects -# the fact that 1) all classfiles are compiled in one go when the .stamp file -# is built and 2) anything which depends on a particular .class file must wait -# until its directory is processed and the .stamp file is created. -# -# Dependencies from Java to .lo files -# ----------------------------------- -# As above, each directory's filelist file depends on the corresponding Java -# source files, and the stamp file depends on the filelist. For native -# compilation, the lo file depends on the stamp file (also using a `Static -# Pattern Rule'). So, when one Java file changes, the filelist file is -# updated, the stamp file rule builds the .class files, and the .lo file rule -# recompiles to native code. -Makefile.deps: $(srcdir)/Makefile.in - @: $(call write_entries_to_file,$(all_java_source_files),files.tmplist) - echo 's,^\(.*\)/\([^/]*\)\.java$$,\1.list: &\' > tmpsed - echo '\1/\2.class: \1.stamp,' >> tmpsed - sed -ftmpsed files.tmplist > Makefile.deps - rm files.tmplist tmpsed - -# Include automatically generated dependencies between Java source files. --include Makefile.deps $(all_java_deps_files) - $(db_name): gcj-dbtool$(EXEEXT) @rm -f $(db_name) ./gcj-dbtool -n $(db_name) || touch $(db_name) -jniinclude/gnu_java_awt_peer_gtk_GdkGraphics.h: gnu/java/awt/peer/gtk/GdkGraphics.java -jniinclude/gnu_java_awt_peer_gtk_GdkGraphics2D.h: gnu/java/awt/peer/gtk/GdkGraphics2D.java -jniinclude/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.h: gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java -jniinclude/gnu_java_awt_peer_gtk_GdkPixbufDecoder.h: gnu/java/awt/peer/gtk/GdkPixbufDecoder.java -jniinclude/gnu_java_awt_peer_gtk_GtkButtonPeer.h: gnu/java/awt/peer/gtk/GtkButtonPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkCanvasPeer.h: gnu/java/awt/peer/gtk/GtkCanvasPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.h: gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.h: gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkCheckboxPeer.h: gnu/java/awt/peer/gtk/GtkCheckboxPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkChoicePeer.h: gnu/java/awt/peer/gtk/GtkChoicePeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkClipboard.h: gnu/java/awt/peer/gtk/GtkClipboard.java -jniinclude/gnu_java_awt_peer_gtk_GtkComponentPeer.h: gnu/java/awt/peer/gtk/GtkComponentPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkContainerPeer.h: gnu/java/awt/peer/gtk/GtkContainerPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkDialogPeer.h: gnu/java/awt/peer/gtk/GtkDialogPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.h: gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkFileDialogPeer.h: gnu/java/awt/peer/gtk/GtkFileDialogPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkFontPeer.h: gnu/java/awt/peer/gtk/GtkFontPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkFramePeer.h: gnu/java/awt/peer/gtk/GtkFramePeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkGenericPeer.h: gnu/java/awt/peer/gtk/GtkGenericPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkImage.h: gnu/java/awt/peer/gtk/GtkImage.java -jniinclude/gnu_java_awt_peer_gtk_GtkImagePainter.h: gnu/java/awt/peer/gtk/GtkImagePainter.java -jniinclude/gnu_java_awt_peer_gtk_GtkLabelPeer.h: gnu/java/awt/peer/gtk/GtkLabelPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkListPeer.h: gnu/java/awt/peer/gtk/GtkListPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkMenuBarPeer.h: gnu/java/awt/peer/gtk/GtkMenuBarPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.h: gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkMenuItemPeer.h: gnu/java/awt/peer/gtk/GtkMenuItemPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkMenuPeer.h: gnu/java/awt/peer/gtk/GtkMenuPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkOffScreenImage.h: gnu/java/awt/peer/gtk/GtkOffScreenImage.java -jniinclude/gnu_java_awt_peer_gtk_GtkPanelPeer.h: gnu/java/awt/peer/gtk/GtkPanelPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.h: gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkScrollPanePeer.h: gnu/java/awt/peer/gtk/GtkScrollPanePeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkScrollbarPeer.h: gnu/java/awt/peer/gtk/GtkScrollbarPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkTextAreaPeer.h: gnu/java/awt/peer/gtk/GtkTextAreaPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkTextComponentPeer.h: gnu/java/awt/peer/gtk/GtkTextComponentPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkTextFieldPeer.h: gnu/java/awt/peer/gtk/GtkTextFieldPeer.java -jniinclude/gnu_java_awt_peer_gtk_GtkToolkit.h: gnu/java/awt/peer/gtk/GtkToolkit.java -jniinclude/gnu_java_awt_peer_gtk_GtkWindowPeer.h: gnu/java/awt/peer/gtk/GtkWindowPeer.java -jniinclude/gnu_java_awt_peer_gtk_GThreadMutex.h: gnu/java/awt/peer/gtk/GThreadMutex.java -jniinclude/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.h: gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java -jniinclude/gnu_java_awt_peer_gtk_GdkTextLayout.h: gnu/java/awt/peer/gtk/GdkTextLayout.java -jniinclude/gnu_java_awt_peer_gtk_GdkFontPeer.h: gnu/java/awt/peer/gtk/GdkFontPeer.java - -$(gtk_jni_headers): %.h: - @input=`echo $@ | sed -e 's,jniinclude/,,' -e 's,_,.,g' -e 's,.h$$,,'`; \ - echo "$(GCJH) -jni -d jniinclude -classpath '' -bootclasspath $(top_builddir) $$input"; \ - $(GCJH) -jni -d jniinclude -classpath '' -bootclasspath $(top_builddir) $$input - -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GdkFontPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GdkGraphics2D.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GdkGraphicsEnvironment.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GdkGraphics.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GdkPixbufDecoder.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GdkTextLayout.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GdkTextLayout.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GThreadNativeMethodRunner.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkButtonPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkCanvasPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkCheckboxPeer.h $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkComponentPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkChoicePeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkClipboard.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkComponentPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkFileDialogPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFramePeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkFramePeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkGenericPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkGenericPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkImagePainter.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkLabelPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkListPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkMenuBarPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkMenuComponentPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkMenuItemPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkMenuPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkPanelPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkScrollbarPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkScrollPanePeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkTextAreaPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkTextComponentPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkTextFieldPeer.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkToolkit.h -jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.lo: $(top_builddir)/jniinclude/gnu_java_awt_peer_gtk_GtkWindowPeer.h - $(lib_gnu_java_awt_peer_gtk_la_OBJECTS): $(lib_gnu_java_awt_peer_gtk_la_DEPENDENCIES) -%.properties.lo: %.properties - $(LTGCJCOMPILE) -o $@ -c $< -Wc,--resource,`echo $@ | sed "s/\.lo$$//"` +$(propertyo_files): %.properties.lo: classpath/resource/%.properties + $(mkinstalldirs) `dirname $@`; \ + $(LTGCJCOMPILE) -o $@ -c $< -Wc,--resource,$(@:.lo=) -# Compile one directory in one go. If the files have to be compiled with the -# binary compatibility ABI, only make the .class here -- the .lo is made -# elsewhere in this Makefile. - -%.list: - @: $(shell $(mkinstalldirs) $(basename $@)) - @: $(call write_entries_to_file,$^,$@) - -$(all_java_lo_files): %.lo: %.stamp - $(LTGCJCOMPILE) -o $@ -c @${<:.stamp=.list} - -$(all_java_stamp_files): %.stamp: %.list - $(JAVAC) $(JCFLAGS) -classpath '' -bootclasspath $(BOOTCLASSPATH) -d $(here) \ - -MD -MF ${@:.stamp=.deps} @$< - echo timestamp > $@ - -classes.stamp: $(all_property_files) $(all_java_stamp_files) - echo timestamp > classes.stamp - -libgcj-$(gcc_version).jar: classes.stamp - -@rm -f libgcj-$(gcc_version).jar - (find java gnu javax org -type d -o -type f -name '*.class'; \ - for file in $(all_property_files); do \ - echo "x-C" | sed -e 's/^.//'; \ - echo $(srcdir); \ - echo $$file; \ - done) | \ - sed -e '/\/xlib/d' -e '/\/\.libs/d' -e '/\/\.deps/d' | \ - $(ZIP) -cfM0E@ $@ - for dir in sax w3c_dom; do \ - (cd external/$$dir; \ - find org -type f -name '*.class' -print | while read file; do \ - echo "x-C" | sed -e 's/^.//'; \ - echo external/$$dir; \ - echo $$file; \ - done) | \ - $(ZIP) -ufM0E@ $@; \ - done +libgcj-$(gcc_version).jar: + jardir=`dirname $(ZIP)`; \ + jardir=`cd $$jardir && pwd`; \ + jarname=`basename $(ZIP)`; \ + cd classpath/lib; $$jardir/$$jarname -cfM \ + ../../libgcj-$(gcc_version).jar gnu java javax org mostlyclean-local: find . -name '*.lo' -print | xargs $(LIBTOOL) rm -f - @: $(foreach header,$(nat_headers) $(xlib_nat_headers) $(gtk_jni_headers),$(shell rm -f '$(header)')) - -clean-local: - find . -name '*.class' -print | xargs rm -f distclean-local: find . -name '*.d' -print | xargs rm -f @@ -6396,46 +6402,1286 @@ lib-gnu-awt-xlib.la: $(lib_gnu_awt_xlib_la_OBJECTS) $(lib_gnu_awt_xlib_la_DEPEND $(lib_gnu_awt_xlib_la_LINK) -objectlist lib_gnu_awt_xlib.objectlist \ -rpath $(toolexeclibdir) $(lib_gnu_awt_xlib_la_LDFLAGS) $(LIBS) -gnu-xml.lo: $(gnu_xml_source_files) - $(MAKE) classes.stamp - $(LTGCJCOMPILE) -fjni -findirect-dispatch -c -o gnu-xml.lo \ - `find gnu/xml -name '*.class' -print` +%.lo: %.list + -mkdir $(dir $@) > /dev/null 2>&1 + $(LTGCJCOMPILE) -c -o $@ -MT $@ -MD -MP -MF $(basename $@).deps @$< -javax-imageio.lo: $(javax_imageio_source_files) - $(MAKE) classes.stamp - $(LTGCJCOMPILE) -findirect-dispatch -c -o javax-imageio.lo \ - `find javax/imageio -name '*.class' -print` +gnu/awt.list: $(gnu_awt_source_files) + @for file in $(gnu_awt_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/awt.list -javax-xml.lo: $(javax_xml_source_files) - $(MAKE) classes.stamp - $(LTGCJCOMPILE) -findirect-dispatch -c -o javax-xml.lo \ - `find javax/xml -name '*.class' -print` +-include gnu/awt.deps + +gnu/awt/j2d.list: $(gnu_awt_j2d_source_files) + @for file in $(gnu_awt_j2d_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/awt/j2d.list + +-include gnu/awt/j2d.deps + +gnu/classpath.list: $(gnu_classpath_source_files) + @for file in $(gnu_classpath_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/classpath.list + +-include gnu/classpath.deps + +gnu/classpath/debug.list: $(gnu_classpath_debug_source_files) + @for file in $(gnu_classpath_debug_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/classpath/debug.list + +-include gnu/classpath/debug.deps + +gnu/gcj.list: $(gnu_gcj_source_files) + @for file in $(gnu_gcj_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/gcj.list + +-include gnu/gcj.deps + +gnu/gcj/convert.list: $(gnu_gcj_convert_source_files) + @for file in $(gnu_gcj_convert_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/gcj/convert.list + +-include gnu/gcj/convert.deps + +gnu/gcj/io.list: $(gnu_gcj_io_source_files) + @for file in $(gnu_gcj_io_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/gcj/io.list + +-include gnu/gcj/io.deps + +gnu/gcj/runtime.list: $(gnu_gcj_runtime_source_files) + @for file in $(gnu_gcj_runtime_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/gcj/runtime.list + +-include gnu/gcj/runtime.deps + +gnu/gcj/util.list: $(gnu_gcj_util_source_files) + @for file in $(gnu_gcj_util_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/gcj/util.list + +-include gnu/gcj/util.deps + +gnu/java/awt.list: $(gnu_java_awt_source_files) + @for file in $(gnu_java_awt_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/awt.list + +-include gnu/java/awt.deps + +gnu/java/awt/color.list: $(gnu_java_awt_color_source_files) + @for file in $(gnu_java_awt_color_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/awt/color.list + +-include gnu/java/awt/color.deps + +gnu/java/awt/image.list: $(gnu_java_awt_image_source_files) + @for file in $(gnu_java_awt_image_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/awt/image.list + +-include gnu/java/awt/image.deps + +gnu/java/awt/peer.list: $(gnu_java_awt_peer_source_files) + @for file in $(gnu_java_awt_peer_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/awt/peer.list + +-include gnu/java/awt/peer.deps + +gnu-java-awt-peer-gtk.lo: $(gnu_java_awt_peer_gtk_source_files) + $(LTGCJCOMPILE) -fjni -findirect-dispatch -c -o gnu-java-awt-peer-gtk.lo \ + `find classpath/lib/gnu/java/awt/peer/gtk -name '*.class' | sort -r` gnu-java-beans.lo: $(gnu_java_beans_source_files) - $(MAKE) classes.stamp - $(LTGCJCOMPILE) -findirect-dispatch -c -o gnu-java-beans.lo \ - `find gnu/java/beans -name '*.class' -print` + $(LTGCJCOMPILE) -fjni -findirect-dispatch -c -o gnu-java-beans.lo \ + `find classpath/lib/gnu/java/beans -name '*.class' | sort -r` -gtk-awt-peer.lo: $(gtk_awt_peer_source_files) - $(MAKE) classes.stamp - $(LTGCJCOMPILE) -findirect-dispatch -fjni -c -o gtk-awt-peer.lo \ - `find gnu/java/awt/peer/gtk -name '*.class' -print` +gnu/java/io.list: $(gnu_java_io_source_files) + @for file in $(gnu_java_io_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/io.list -%.h: %.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) $(basename $<) +-include gnu/java/io.deps -$(ordinary_nat_headers) $(xlib_nat_headers): %.h: %.class +gnu/java/lang.list: $(gnu_java_lang_source_files) + @for file in $(gnu_java_lang_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/lang.list -java/lang/ClassLoader.h: java/lang/ClassLoader.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +-include gnu/java/lang.deps + +gnu/java/lang/reflect.list: $(gnu_java_lang_reflect_source_files) + @for file in $(gnu_java_lang_reflect_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/lang/reflect.list + +-include gnu/java/lang/reflect.deps + +gnu/java/locale.list: $(gnu_java_locale_source_files) + @for file in $(gnu_java_locale_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/locale.list + +-include gnu/java/locale.deps + +gnu/java/math.list: $(gnu_java_math_source_files) + @for file in $(gnu_java_math_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/math.list + +-include gnu/java/math.deps + +gnu/java/net.list: $(gnu_java_net_source_files) + @for file in $(gnu_java_net_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/net.list + +-include gnu/java/net.deps + +gnu/java/net/protocol/file.list: $(gnu_java_net_protocol_file_source_files) + @for file in $(gnu_java_net_protocol_file_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/net/protocol/file.list + +-include gnu/java/net/protocol/file.deps + +gnu/java/net/protocol/ftp.list: $(gnu_java_net_protocol_ftp_source_files) + @for file in $(gnu_java_net_protocol_ftp_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/net/protocol/ftp.list + +-include gnu/java/net/protocol/ftp.deps + +gnu/java/net/protocol/http.list: $(gnu_java_net_protocol_http_source_files) + @for file in $(gnu_java_net_protocol_http_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/net/protocol/http.list + +-include gnu/java/net/protocol/http.deps + +gnu/java/net/protocol/http/event.list: $(gnu_java_net_protocol_http_event_source_files) + @for file in $(gnu_java_net_protocol_http_event_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/net/protocol/http/event.list + +-include gnu/java/net/protocol/http/event.deps + +gnu/java/net/protocol/https.list: $(gnu_java_net_protocol_https_source_files) + @for file in $(gnu_java_net_protocol_https_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/net/protocol/https.list + +-include gnu/java/net/protocol/https.deps + +gnu/java/net/protocol/jar.list: $(gnu_java_net_protocol_jar_source_files) + @for file in $(gnu_java_net_protocol_jar_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/net/protocol/jar.list + +-include gnu/java/net/protocol/jar.deps + +gnu/java/nio.list: $(gnu_java_nio_source_files) + @for file in $(gnu_java_nio_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/nio.list + +-include gnu/java/nio.deps + +gnu/java/nio/channels.list: $(gnu_java_nio_channels_source_files) + @for file in $(gnu_java_nio_channels_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/nio/channels.list + +-include gnu/java/nio/channels.deps + +gnu/java/nio/charset.list: $(gnu_java_nio_charset_source_files) + @for file in $(gnu_java_nio_charset_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/nio/charset.list + +-include gnu/java/nio/charset.deps + +gnu/java/rmi.list: $(gnu_java_rmi_source_files) + @for file in $(gnu_java_rmi_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/rmi.list + +-include gnu/java/rmi.deps + +gnu/java/rmi/dgc.list: $(gnu_java_rmi_dgc_source_files) + @for file in $(gnu_java_rmi_dgc_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/rmi/dgc.list + +-include gnu/java/rmi/dgc.deps + +gnu/java/rmi/registry.list: $(gnu_java_rmi_registry_source_files) + @for file in $(gnu_java_rmi_registry_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/rmi/registry.list + +-include gnu/java/rmi/registry.deps + +gnu/java/rmi/server.list: $(gnu_java_rmi_server_source_files) + @for file in $(gnu_java_rmi_server_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/rmi/server.list + +-include gnu/java/rmi/server.deps + +gnu/java/security.list: $(gnu_java_security_source_files) + @for file in $(gnu_java_security_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/security.list + +-include gnu/java/security.deps + +gnu/java/security/action.list: $(gnu_java_security_action_source_files) + @for file in $(gnu_java_security_action_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/security/action.list + +-include gnu/java/security/action.deps + +gnu/java/security/ber.list: $(gnu_java_security_ber_source_files) + @for file in $(gnu_java_security_ber_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/security/ber.list + +-include gnu/java/security/ber.deps + +gnu/java/security/der.list: $(gnu_java_security_der_source_files) + @for file in $(gnu_java_security_der_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/security/der.list + +-include gnu/java/security/der.deps + +gnu/java/security/pkcs.list: $(gnu_java_security_pkcs_source_files) + @for file in $(gnu_java_security_pkcs_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/security/pkcs.list + +-include gnu/java/security/pkcs.deps + +gnu/java/security/provider.list: $(gnu_java_security_provider_source_files) + @for file in $(gnu_java_security_provider_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/security/provider.list + +-include gnu/java/security/provider.deps + +gnu/java/security/util.list: $(gnu_java_security_util_source_files) + @for file in $(gnu_java_security_util_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/security/util.list + +-include gnu/java/security/util.deps + +gnu/java/security/x509.list: $(gnu_java_security_x509_source_files) + @for file in $(gnu_java_security_x509_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/security/x509.list + +-include gnu/java/security/x509.deps + +gnu/java/security/x509/ext.list: $(gnu_java_security_x509_ext_source_files) + @for file in $(gnu_java_security_x509_ext_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/security/x509/ext.list + +-include gnu/java/security/x509/ext.deps + +gnu/java/text.list: $(gnu_java_text_source_files) + @for file in $(gnu_java_text_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/text.list + +-include gnu/java/text.deps + +gnu/java/util.list: $(gnu_java_util_source_files) + @for file in $(gnu_java_util_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/util.list + +-include gnu/java/util.deps + +gnu/java/util/prefs.list: $(gnu_java_util_prefs_source_files) + @for file in $(gnu_java_util_prefs_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/java/util/prefs.list + +-include gnu/java/util/prefs.deps + +gnu/javax/swing/text/html/parser.list: $(gnu_javax_swing_text_html_parser_source_files) + @for file in $(gnu_javax_swing_text_html_parser_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/javax/swing/text/html/parser.list + +-include gnu/javax/swing/text/html/parser.deps + +gnu/javax/swing/text/html/parser/models.list: $(gnu_javax_swing_text_html_parser_models_source_files) + @for file in $(gnu_javax_swing_text_html_parser_models_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/javax/swing/text/html/parser/models.list + +-include gnu/javax/swing/text/html/parser/models.deps + +gnu/javax/swing/text/html/parser/support.list: $(gnu_javax_swing_text_html_parser_support_source_files) + @for file in $(gnu_javax_swing_text_html_parser_support_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/javax/swing/text/html/parser/support.list + +-include gnu/javax/swing/text/html/parser/support.deps + +gnu/javax/swing/text/html/parser/support/low.list: $(gnu_javax_swing_text_html_parser_support_low_source_files) + @for file in $(gnu_javax_swing_text_html_parser_support_low_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/javax/swing/text/html/parser/support/low.list + +-include gnu/javax/swing/text/html/parser/support/low.deps + +gnu/regexp.list: $(gnu_regexp_source_files) + @for file in $(gnu_regexp_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > gnu/regexp.list + +-include gnu/regexp.deps + +gnu-xml.lo: $(gnu_xml_source_files) + $(LTGCJCOMPILE) -fjni -findirect-dispatch -c -o gnu-xml.lo \ + `find classpath/lib/gnu/xml -name '*.class' | sort -r` + +java/applet.list: $(java_applet_source_files) + @for file in $(java_applet_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/applet.list + +-include java/applet.deps + +java/awt.list: $(java_awt_source_files) + @for file in $(java_awt_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt.list + +-include java/awt.deps + +java/awt/color.list: $(java_awt_color_source_files) + @for file in $(java_awt_color_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt/color.list + +-include java/awt/color.deps + +java/awt/datatransfer.list: $(java_awt_datatransfer_source_files) + @for file in $(java_awt_datatransfer_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt/datatransfer.list + +-include java/awt/datatransfer.deps + +java/awt/dnd.list: $(java_awt_dnd_source_files) + @for file in $(java_awt_dnd_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt/dnd.list + +-include java/awt/dnd.deps + +java/awt/dnd/peer.list: $(java_awt_dnd_peer_source_files) + @for file in $(java_awt_dnd_peer_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt/dnd/peer.list + +-include java/awt/dnd/peer.deps + +java/awt/event.list: $(java_awt_event_source_files) + @for file in $(java_awt_event_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt/event.list + +-include java/awt/event.deps + +java/awt/font.list: $(java_awt_font_source_files) + @for file in $(java_awt_font_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt/font.list + +-include java/awt/font.deps + +java/awt/geom.list: $(java_awt_geom_source_files) + @for file in $(java_awt_geom_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt/geom.list + +-include java/awt/geom.deps + +java/awt/im.list: $(java_awt_im_source_files) + @for file in $(java_awt_im_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt/im.list + +-include java/awt/im.deps + +java/awt/im/spi.list: $(java_awt_im_spi_source_files) + @for file in $(java_awt_im_spi_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt/im/spi.list + +-include java/awt/im/spi.deps + +java/awt/image.list: $(java_awt_image_source_files) + @for file in $(java_awt_image_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt/image.list + +-include java/awt/image.deps + +java/awt/image/renderable.list: $(java_awt_image_renderable_source_files) + @for file in $(java_awt_image_renderable_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt/image/renderable.list + +-include java/awt/image/renderable.deps + +java/awt/peer.list: $(java_awt_peer_source_files) + @for file in $(java_awt_peer_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt/peer.list + +-include java/awt/peer.deps + +java/awt/print.list: $(java_awt_print_source_files) + @for file in $(java_awt_print_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/awt/print.list + +-include java/awt/print.deps + +java/beans.list: $(java_beans_source_files) + @for file in $(java_beans_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/beans.list + +-include java/beans.deps + +java/beans/beancontext.list: $(java_beans_beancontext_source_files) + @for file in $(java_beans_beancontext_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/beans/beancontext.list + +-include java/beans/beancontext.deps + +java/io.list: $(java_io_source_files) + @for file in $(java_io_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/io.list + +-include java/io.deps + +java/lang.list: $(java_lang_source_files) + @for file in $(java_lang_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/lang.list + +-include java/lang.deps + +java/lang/annotation.list: $(java_lang_annotation_source_files) + @for file in $(java_lang_annotation_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/lang/annotation.list + +-include java/lang/annotation.deps + +java/lang/ref.list: $(java_lang_ref_source_files) + @for file in $(java_lang_ref_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/lang/ref.list + +-include java/lang/ref.deps + +java/lang/reflect.list: $(java_lang_reflect_source_files) + @for file in $(java_lang_reflect_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/lang/reflect.list + +-include java/lang/reflect.deps + +java/math.list: $(java_math_source_files) + @for file in $(java_math_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/math.list + +-include java/math.deps + +java/net.list: $(java_net_source_files) + @for file in $(java_net_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/net.list + +-include java/net.deps + +java/nio.list: $(java_nio_source_files) + @for file in $(java_nio_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/nio.list + +-include java/nio.deps + +java/nio/channels.list: $(java_nio_channels_source_files) + @for file in $(java_nio_channels_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/nio/channels.list + +-include java/nio/channels.deps + +java/nio/channels/spi.list: $(java_nio_channels_spi_source_files) + @for file in $(java_nio_channels_spi_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/nio/channels/spi.list + +-include java/nio/channels/spi.deps + +java/nio/charset.list: $(java_nio_charset_source_files) + @for file in $(java_nio_charset_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/nio/charset.list + +-include java/nio/charset.deps + +java/nio/charset/spi.list: $(java_nio_charset_spi_source_files) + @for file in $(java_nio_charset_spi_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/nio/charset/spi.list + +-include java/nio/charset/spi.deps + +java/rmi.list: $(java_rmi_source_files) + @for file in $(java_rmi_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/rmi.list + +-include java/rmi.deps + +java/rmi/activation.list: $(java_rmi_activation_source_files) + @for file in $(java_rmi_activation_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/rmi/activation.list + +-include java/rmi/activation.deps + +java/rmi/dgc.list: $(java_rmi_dgc_source_files) + @for file in $(java_rmi_dgc_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/rmi/dgc.list + +-include java/rmi/dgc.deps + +java/rmi/registry.list: $(java_rmi_registry_source_files) + @for file in $(java_rmi_registry_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/rmi/registry.list + +-include java/rmi/registry.deps + +java/rmi/server.list: $(java_rmi_server_source_files) + @for file in $(java_rmi_server_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/rmi/server.list + +-include java/rmi/server.deps + +java/security.list: $(java_security_source_files) + @for file in $(java_security_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/security.list + +-include java/security.deps + +java/security/acl.list: $(java_security_acl_source_files) + @for file in $(java_security_acl_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/security/acl.list + +-include java/security/acl.deps + +java/security/cert.list: $(java_security_cert_source_files) + @for file in $(java_security_cert_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/security/cert.list + +-include java/security/cert.deps + +java/security/interfaces.list: $(java_security_interfaces_source_files) + @for file in $(java_security_interfaces_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/security/interfaces.list + +-include java/security/interfaces.deps + +java/security/spec.list: $(java_security_spec_source_files) + @for file in $(java_security_spec_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/security/spec.list + +-include java/security/spec.deps + +java/sql.list: $(java_sql_source_files) + @for file in $(java_sql_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/sql.list + +-include java/sql.deps + +java/text.list: $(java_text_source_files) + @for file in $(java_text_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/text.list + +-include java/text.deps + +java/util.list: $(java_util_source_files) + @for file in $(java_util_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/util.list + +-include java/util.deps + +java/util/jar.list: $(java_util_jar_source_files) + @for file in $(java_util_jar_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/util/jar.list + +-include java/util/jar.deps + +java/util/logging.list: $(java_util_logging_source_files) + @for file in $(java_util_logging_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/util/logging.list + +-include java/util/logging.deps + +java/util/prefs.list: $(java_util_prefs_source_files) + @for file in $(java_util_prefs_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/util/prefs.list + +-include java/util/prefs.deps + +java/util/regex.list: $(java_util_regex_source_files) + @for file in $(java_util_regex_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/util/regex.list + +-include java/util/regex.deps + +java/util/zip.list: $(java_util_zip_source_files) + @for file in $(java_util_zip_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > java/util/zip.list + +-include java/util/zip.deps + +javax/accessibility.list: $(javax_accessibility_source_files) + @for file in $(javax_accessibility_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/accessibility.list + +-include javax/accessibility.deps + +javax/crypto.list: $(javax_crypto_source_files) + @for file in $(javax_crypto_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/crypto.list + +-include javax/crypto.deps + +javax/crypto/interfaces.list: $(javax_crypto_interfaces_source_files) + @for file in $(javax_crypto_interfaces_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/crypto/interfaces.list + +-include javax/crypto/interfaces.deps + +javax/crypto/spec.list: $(javax_crypto_spec_source_files) + @for file in $(javax_crypto_spec_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/crypto/spec.list + +-include javax/crypto/spec.deps + +javax-imageio.lo: $(javax_imageio_source_files) + $(LTGCJCOMPILE) -fjni -findirect-dispatch -c -o javax-imageio.lo \ + `find classpath/lib/javax/imageio -name '*.class' | sort -r` + +javax/naming.list: $(javax_naming_source_files) + @for file in $(javax_naming_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/naming.list + +-include javax/naming.deps + +javax/naming/directory.list: $(javax_naming_directory_source_files) + @for file in $(javax_naming_directory_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/naming/directory.list + +-include javax/naming/directory.deps + +javax/naming/event.list: $(javax_naming_event_source_files) + @for file in $(javax_naming_event_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/naming/event.list + +-include javax/naming/event.deps + +javax/naming/ldap.list: $(javax_naming_ldap_source_files) + @for file in $(javax_naming_ldap_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/naming/ldap.list + +-include javax/naming/ldap.deps + +javax/naming/spi.list: $(javax_naming_spi_source_files) + @for file in $(javax_naming_spi_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/naming/spi.list + +-include javax/naming/spi.deps + +javax/net.list: $(javax_net_source_files) + @for file in $(javax_net_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/net.list + +-include javax/net.deps + +javax/net/ssl.list: $(javax_net_ssl_source_files) + @for file in $(javax_net_ssl_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/net/ssl.list + +-include javax/net/ssl.deps + +javax/print.list: $(javax_print_source_files) + @for file in $(javax_print_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/print.list + +-include javax/print.deps + +javax/print/attribute.list: $(javax_print_attribute_source_files) + @for file in $(javax_print_attribute_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/print/attribute.list + +-include javax/print/attribute.deps + +javax/print/attribute/standard.list: $(javax_print_attribute_standard_source_files) + @for file in $(javax_print_attribute_standard_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/print/attribute/standard.list + +-include javax/print/attribute/standard.deps + +javax/print/event.list: $(javax_print_event_source_files) + @for file in $(javax_print_event_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/print/event.list + +-include javax/print/event.deps + +javax/security/auth.list: $(javax_security_auth_source_files) + @for file in $(javax_security_auth_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/security/auth.list + +-include javax/security/auth.deps + +javax/security/auth/callback.list: $(javax_security_auth_callback_source_files) + @for file in $(javax_security_auth_callback_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/security/auth/callback.list + +-include javax/security/auth/callback.deps + +javax/security/auth/login.list: $(javax_security_auth_login_source_files) + @for file in $(javax_security_auth_login_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/security/auth/login.list + +-include javax/security/auth/login.deps + +javax/security/auth/spi.list: $(javax_security_auth_spi_source_files) + @for file in $(javax_security_auth_spi_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/security/auth/spi.list + +-include javax/security/auth/spi.deps + +javax/security/auth/x500.list: $(javax_security_auth_x500_source_files) + @for file in $(javax_security_auth_x500_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/security/auth/x500.list + +-include javax/security/auth/x500.deps + +javax/security/cert.list: $(javax_security_cert_source_files) + @for file in $(javax_security_cert_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/security/cert.list + +-include javax/security/cert.deps + +javax/security/sasl.list: $(javax_security_sasl_source_files) + @for file in $(javax_security_sasl_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/security/sasl.list + +-include javax/security/sasl.deps + +javax/sql.list: $(javax_sql_source_files) + @for file in $(javax_sql_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/sql.list + +-include javax/sql.deps + +javax/swing.list: $(javax_swing_source_files) + @for file in $(javax_swing_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing.list + +-include javax/swing.deps + +javax/swing/border.list: $(javax_swing_border_source_files) + @for file in $(javax_swing_border_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/border.list + +-include javax/swing/border.deps + +javax/swing/colorchooser.list: $(javax_swing_colorchooser_source_files) + @for file in $(javax_swing_colorchooser_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/colorchooser.list + +-include javax/swing/colorchooser.deps + +javax/swing/event.list: $(javax_swing_event_source_files) + @for file in $(javax_swing_event_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/event.list + +-include javax/swing/event.deps + +javax/swing/filechooser.list: $(javax_swing_filechooser_source_files) + @for file in $(javax_swing_filechooser_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/filechooser.list + +-include javax/swing/filechooser.deps + +javax/swing/plaf.list: $(javax_swing_plaf_source_files) + @for file in $(javax_swing_plaf_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/plaf.list + +-include javax/swing/plaf.deps + +javax/swing/plaf/basic.list: $(javax_swing_plaf_basic_source_files) + @for file in $(javax_swing_plaf_basic_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/plaf/basic.list + +-include javax/swing/plaf/basic.deps + +javax/swing/plaf/metal.list: $(javax_swing_plaf_metal_source_files) + @for file in $(javax_swing_plaf_metal_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/plaf/metal.list + +-include javax/swing/plaf/metal.deps + +javax/swing/table.list: $(javax_swing_table_source_files) + @for file in $(javax_swing_table_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/table.list + +-include javax/swing/table.deps + +javax/swing/text.list: $(javax_swing_text_source_files) + @for file in $(javax_swing_text_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/text.list + +-include javax/swing/text.deps + +javax/swing/text/html.list: $(javax_swing_text_html_source_files) + @for file in $(javax_swing_text_html_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/text/html.list + +-include javax/swing/text/html.deps + +javax/swing/text/html/parser.list: $(javax_swing_text_html_parser_source_files) + @for file in $(javax_swing_text_html_parser_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/text/html/parser.list + +-include javax/swing/text/html/parser.deps + +javax/swing/text/rtf.list: $(javax_swing_text_rtf_source_files) + @for file in $(javax_swing_text_rtf_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/text/rtf.list + +-include javax/swing/text/rtf.deps + +javax/swing/tree.list: $(javax_swing_tree_source_files) + @for file in $(javax_swing_tree_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/tree.list + +-include javax/swing/tree.deps + +javax/swing/undo.list: $(javax_swing_undo_source_files) + @for file in $(javax_swing_undo_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/swing/undo.list + +-include javax/swing/undo.deps + +javax/transaction.list: $(javax_transaction_source_files) + @for file in $(javax_transaction_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/transaction.list + +-include javax/transaction.deps + +javax/transaction/xa.list: $(javax_transaction_xa_source_files) + @for file in $(javax_transaction_xa_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > javax/transaction/xa.list + +-include javax/transaction/xa.deps + +javax-xml.lo: $(javax_xml_source_files) + $(LTGCJCOMPILE) -fjni -findirect-dispatch -c -o javax-xml.lo \ + `find classpath/lib/javax/xml -name '*.class' | sort -r` + +org/ietf/jgss.list: $(org_ietf_jgss_source_files) + @for file in $(org_ietf_jgss_source_files); do \ + if test -f $(srcdir)/$$file; then \ + echo $(srcdir)/$$file; \ + else echo $$file; fi; \ + done > org/ietf/jgss.list + +-include org/ietf/jgss.deps + +org-w3c.lo: $(org_w3c_source_files) + $(LTGCJCOMPILE) -fjni -findirect-dispatch -c -o org-w3c.lo \ + `find classpath/lib/org/w3c -name '*.class' | sort -r` + +org-xml.lo: $(org_xml_source_files) + $(LTGCJCOMPILE) -fjni -findirect-dispatch -c -o org-xml.lo \ + `find classpath/lib/org/xml -name '*.class' | sort -r` + +$(generic_header_files): %.h: classpath/lib/%.class + name=`echo $< | sed -e 's/\.class$$//' -e 's,classpath/lib/,,'`; \ + $(mkinstalldirs) `dirname $$name`; \ + $(GCJH) -d . -classpath '' -bootclasspath classpath/lib $$name + +java/lang/ClassLoader.h: classpath/lib/java/lang/ClassLoader.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -prepend 'jclass _Jv_FindClass (_Jv_Utf8Const *name, java::lang::ClassLoader *loader);' \ -prepend 'void _Jv_RunMain (jclass klass, const char *name, int argc, const char **argv, bool is_jar);' \ -friend 'jclass (::_Jv_FindClass) (_Jv_Utf8Const *name, java::lang::ClassLoader *loader);' \ -friend 'void ::_Jv_RunMain (jclass klass, const char *name, int argc, const char **argv, bool is_jar);' \ - $(basename $<) + java/lang/ClassLoader -java/lang/Thread.h: java/lang/Thread.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/Thread.h: classpath/lib/java/lang/Thread.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -prepend 'class _Jv_JNIEnv;' \ -prepend '#define _JV_NOT_OWNER 1' \ -prepend '#define _JV_INTERRUPTED 2' \ @@ -6453,10 +7699,10 @@ java/lang/Thread.h: java/lang/Thread.class -friend 'java::lang::Thread* ::_Jv_AttachCurrentThread (jstring name, java::lang::ThreadGroup* group);' \ -friend 'java::lang::Thread* ::_Jv_AttachCurrentThreadAsDaemon (jstring name, java::lang::ThreadGroup* group);' \ -friend 'jint (::_Jv_DetachCurrentThread) ();' \ - $(basename $<) + java/lang/Thread -java/lang/String.h: java/lang/String.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/String.h: classpath/lib/java/lang/String.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -prepend 'jchar* _Jv_GetStringChars (jstring str);' \ -prepend 'jstring* _Jv_StringFindSlot (jchar*, jint, jint);' \ -prepend 'jstring* _Jv_StringGetSlot (jstring);' \ @@ -6469,91 +7715,91 @@ java/lang/String.h: java/lang/String.class -friend 'jstring (::_Jv_NewStringUtf8Const) (_Jv_Utf8Const* str);' \ -friend 'jstring (::_Jv_NewStringLatin1) (const char*, jsize);' \ -friend 'jstring (::_Jv_AllocString) (jsize);' \ - $(basename $<) + java/lang/String -java/lang/reflect/Constructor.h: java/lang/reflect/Constructor.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/reflect/Constructor.h: classpath/lib/java/lang/reflect/Constructor.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -prepend 'jmethodID _Jv_FromReflectedConstructor (java::lang::reflect::Constructor *);' \ -prepend 'jobject _Jv_JNI_ToReflectedMethod (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \ -friend 'jmethodID (::_Jv_FromReflectedConstructor) (java::lang::reflect::Constructor *);' \ -friend 'jobject (::_Jv_JNI_ToReflectedMethod) (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \ -friend 'class java::lang::Class;' \ - $(basename $<) + java/lang/reflect/Constructor -java/lang/reflect/Field.h: java/lang/reflect/Field.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/reflect/Field.h: classpath/lib/java/lang/reflect/Field.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -prepend 'jfieldID _Jv_FromReflectedField (java::lang::reflect::Field *);' \ -prepend 'jobject _Jv_JNI_ToReflectedField (_Jv_JNIEnv*, jclass, jfieldID, jboolean);' \ -friend 'jfieldID (::_Jv_FromReflectedField) (java::lang::reflect::Field *);' \ -friend 'jobject (::_Jv_JNI_ToReflectedField) (_Jv_JNIEnv*, jclass, jfieldID, jboolean);' \ -friend 'class java::lang::Class;' \ - $(basename $<) + java/lang/reflect/Field -java/lang/reflect/Method.h: java/lang/reflect/Method.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/reflect/Method.h: classpath/lib/java/lang/reflect/Method.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -prepend 'jmethodID _Jv_FromReflectedMethod (java::lang::reflect::Method *);' \ -prepend 'jobject _Jv_JNI_ToReflectedMethod (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \ -friend 'jmethodID (::_Jv_FromReflectedMethod) (java::lang::reflect::Method *);' \ -friend 'jobject (::_Jv_JNI_ToReflectedMethod) (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \ -friend 'class java::lang::Class;' \ -friend 'class java::io::ObjectInputStream;' \ - $(basename $<) + java/lang/reflect/Method -java/lang/reflect/Proxy.h: java/lang/reflect/Proxy.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ - $(basename $<) +java/lang/reflect/Proxy.h: classpath/lib/java/lang/reflect/Proxy.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ + java/lang/reflect/Proxy -java/lang/reflect/Proxy$$ProxyData.h: java/lang/reflect/Proxy.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/reflect/Proxy$$ProxyData.h: classpath/lib/java/lang/reflect/Proxy.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/lang/reflect/Proxy$$ProxyData' -java/lang/reflect/Proxy$$ProxyType.h: java/lang/reflect/Proxy.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/reflect/Proxy$$ProxyType.h: classpath/lib/java/lang/reflect/Proxy.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/lang/reflect/Proxy$$ProxyType' -gnu/gcj/runtime/ExtensionClassLoader.h: gnu/gcj/runtime/ExtensionClassLoader.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +gnu/gcj/runtime/ExtensionClassLoader.h: classpath/lib/gnu/gcj/runtime/ExtensionClassLoader.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ -friend 'class ::java::lang::ClassLoader;' \ - $(basename $<) + gnu/gcj/runtime/ExtensionClassLoader -java/io/ObjectInputStream$$GetField.h: java/io/ObjectInputStream.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/io/ObjectInputStream$$GetField.h: classpath/lib/java/io/ObjectInputStream.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/io/ObjectInputStream$$GetField' -java/io/ObjectOutputStream$$PutField.h: java/io/ObjectOutputStream.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/io/ObjectOutputStream$$PutField.h: classpath/lib/java/io/ObjectOutputStream.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/io/ObjectOutputStream$$PutField' -java/nio/DirectByteBufferImpl$$ReadWrite.h: java/nio/DirectByteBufferImpl.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/nio/DirectByteBufferImpl$$ReadWrite.h: classpath/lib/java/nio/DirectByteBufferImpl.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/nio/DirectByteBufferImpl$$ReadWrite' -java/nio/channels/Pipe$$SinkChannel.h: java/nio/channels/Pipe.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/nio/channels/Pipe$$SinkChannel.h: classpath/lib/java/nio/channels/Pipe.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/nio/channels/Pipe$$SinkChannel' -java/nio/channels/Pipe$$SourceChannel.h: java/nio/channels/Pipe.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/nio/channels/Pipe$$SourceChannel.h: classpath/lib/java/nio/channels/Pipe.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/nio/channels/Pipe$$SourceChannel' -gnu/java/net/PlainSocketImpl$$SocketInputStream.h: gnu/java/net/PlainSocketImpl.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +gnu/java/net/PlainSocketImpl$$SocketInputStream.h: classpath/lib/gnu/java/net/PlainSocketImpl.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'gnu/java/net/PlainSocketImpl$$SocketInputStream' -gnu/java/net/PlainSocketImpl$$SocketOutputStream.h: gnu/java/net/PlainSocketImpl.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +gnu/java/net/PlainSocketImpl$$SocketOutputStream.h: classpath/lib/gnu/java/net/PlainSocketImpl.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'gnu/java/net/PlainSocketImpl$$SocketOutputStream' -gnu/java/nio/PipeImpl$$SinkChannelImpl.h: gnu/java/nio/PipeImpl.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +gnu/java/nio/PipeImpl$$SinkChannelImpl.h: classpath/lib/gnu/java/nio/PipeImpl.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'gnu/java/nio/PipeImpl$$SinkChannelImpl' -gnu/java/nio/PipeImpl$$SourceChannelImpl.h: gnu/java/nio/PipeImpl.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +gnu/java/nio/PipeImpl$$SourceChannelImpl.h: classpath/lib/gnu/java/nio/PipeImpl.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'gnu/java/nio/PipeImpl$$SourceChannelImpl' -java/lang/ConcreteProcess$$ProcessManager.h: java/lang/ConcreteProcess.class - $(GCJH) -classpath '' -bootclasspath $(top_builddir) \ +java/lang/ConcreteProcess$$ProcessManager.h: classpath/lib/java/lang/ConcreteProcess.class + $(GCJH) -classpath '' -bootclasspath classpath/lib \ 'java/lang/ConcreteProcess$$ProcessManager' $(extra_headers) $(srcdir)/java/lang/Object.h $(srcdir)/java/lang/Class.h: @@ -6667,20 +7913,19 @@ src.zip: done ); \ find gnu java -name '*.java' -print) | \ $(ZIP) -cfM@ $$here/src.zip - for dir in sax w3c_dom; do \ - (cd $(srcdir)/external/$$dir; \ - find org -type f -name '*.java' -print | while read file; do \ - echo "x-C" | sed -e 's/^.//'; \ - echo $(srcdir)/external/$$dir; \ - echo $$file; \ - done) | \ - $(ZIP) -ufM0E@ src.zip; \ - done install-src.zip: src.zip $(INSTALL_DATA) src.zip $(DESTDIR)$(sourcesdir)/src-$(gcc_version).zip -all-recursive: classes.stamp $(nat_headers) $(xlib_nat_headers) +headers.stamp: + $(MAKE) create-headers + @echo > headers.stamp + +create-headers: $(headers_to_make) + +.PHONY: create-headers + +$(libgcj_la_OBJECTS) $(gcj_dbtool_OBJECTS) $(xlib_nat_files): headers.stamp # Multilib support. .PHONY: all-multi mostlyclean-multi clean-multi distclean-multi \ diff --git a/libjava/aclocal.m4 b/libjava/aclocal.m4 index b0713c7d5c8..30c49f64435 100644 --- a/libjava/aclocal.m4 +++ b/libjava/aclocal.m4 @@ -1,7 +1,7 @@ -# generated automatically by aclocal 1.9.3 -*- Autoconf -*- +# generated automatically by aclocal 1.9.5 -*- Autoconf -*- -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 -# Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005 Free Software Foundation, Inc. # 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. @@ -11,23 +11,69 @@ # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. -# -*- Autoconf -*- -# Copyright (C) 2002, 2003 Free Software Foundation, Inc. -# Generated from amversion.in; do not edit by hand. -# 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. +dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not) +dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page +dnl also defines GSTUFF_PKG_ERRORS on error +AC_DEFUN([PKG_CHECK_MODULES], [ + succeeded=no -# This program 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. + if test -z "$PKG_CONFIG"; then + AC_PATH_PROG(PKG_CONFIG, pkg-config, no) + fi -# 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., 59 Temple Place - Suite 330, Boston, MA + if test "$PKG_CONFIG" = "no" ; then + echo "*** The pkg-config script could not be found. Make sure it is" + echo "*** in your path, or set the PKG_CONFIG environment variable" + echo "*** to the full path to pkg-config." + echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config." + else + PKG_CONFIG_MIN_VERSION=0.9.0 + if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then + AC_MSG_CHECKING(for $2) + + if $PKG_CONFIG --exists "$2" ; then + AC_MSG_RESULT(yes) + succeeded=yes + + AC_MSG_CHECKING($1_CFLAGS) + $1_CFLAGS=`$PKG_CONFIG --cflags "$2"` + AC_MSG_RESULT($$1_CFLAGS) + + AC_MSG_CHECKING($1_LIBS) + $1_LIBS=`$PKG_CONFIG --libs "$2"` + AC_MSG_RESULT($$1_LIBS) + else + $1_CFLAGS="" + $1_LIBS="" + ## If we have a custom action on failure, don't print errors, but + ## do set a variable so people can do so. + $1_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` + ifelse([$4], ,echo $$1_PKG_ERRORS,) + fi + + AC_SUBST($1_CFLAGS) + AC_SUBST($1_LIBS) + else + echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer." + echo "*** See http://www.freedesktop.org/software/pkgconfig" + fi + fi + + if test $succeeded = yes; then + ifelse([$3], , :, [$3]) + else + ifelse([$4], , AC_MSG_ERROR([Library requirements ($2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.]), [$4]) + fi +]) + + + +# Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc. +# +# 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. # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- @@ -40,26 +86,15 @@ AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"]) # Call AM_AUTOMAKE_VERSION so it can be traced. # This function is AC_REQUIREd by AC_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], - [AM_AUTOMAKE_VERSION([1.9.3])]) + [AM_AUTOMAKE_VERSION([1.9.5])]) -# AM_AUX_DIR_EXPAND +# AM_AUX_DIR_EXPAND -*- Autoconf -*- -# Copyright (C) 2001, 2003 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# +# 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. # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to @@ -106,26 +141,16 @@ AC_PREREQ([2.50])dnl am_aux_dir=`cd $ac_aux_dir && pwd` ]) -# AM_CONDITIONAL -*- Autoconf -*- +# AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997, 2000, 2001, 2003, 2004 Free Software Foundation, Inc. +# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005 +# Free Software Foundation, Inc. +# +# 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. -# 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 6 +# serial 7 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- @@ -149,26 +174,15 @@ AC_CONFIG_COMMANDS_PRE( Usually this means the macro was only invoked conditionally.]]) fi])]) -# serial 7 -*- Autoconf -*- -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. +# +# 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. -# 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - +# serial 8 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, @@ -177,7 +191,6 @@ fi])]) # CC etc. in the Makefile, will ask for an AC_PROG_CC use... - # _AM_DEPENDENCIES(NAME) # ---------------------- # See how the compiler implements dependency checking. @@ -317,27 +330,16 @@ AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH]) ]) -# Generate code to set up dependency tracking. -*- Autoconf -*- +# Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 -# Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +# Free Software Foundation, Inc. +# +# 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. -# 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -#serial 2 +#serial 3 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ @@ -396,25 +398,14 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) -# Check for Java compiler. +# Check for Java compiler. -*- Autoconf -*- # For now we only handle the GNU compiler. -# Copyright (C) 1999, 2000, 2003 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 1999, 2000, 2003, 2005 Free Software Foundation, Inc. +# +# 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. AC_DEFUN([AM_PROG_GCJ],[ AC_CHECK_PROGS(GCJ, gcj, gcj) @@ -426,30 +417,19 @@ AC_SUBST(GCJFLAGS) _AM_IF_OPTION([no-dependencies],, [_AM_DEPENDENCIES(GCJ)]) ]) -# Do all the work for Automake. -*- Autoconf -*- +# Do all the work for Automake. -*- Autoconf -*- -# This macro actually does too much some checks are only needed if -# your package does certain things. But this isn't really a big deal. - -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. +# +# 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. -# 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. +# serial 12 -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 11 +# This macro actually does too much. Some checks are only needed if +# your package does certain things. But this isn't really a big deal. # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) # AM_INIT_AUTOMAKE([OPTIONS]) @@ -551,54 +531,52 @@ for _am_header in $config_headers :; do done echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count]) +# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# +# 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. + # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. - -# Copyright (C) 2001, 2003 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl install_sh=${install_sh-"$am_aux_dir/install-sh"} AC_SUBST(install_sh)]) -# Add --enable-maintainer-mode option to configure. +# Copyright (C) 2003, 2005 Free Software Foundation, Inc. +# +# 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. + +# serial 2 + +# Check whether the underlying file-system supports filenames +# with a leading dot. For instance MS-DOS doesn't. +AC_DEFUN([AM_SET_LEADING_DOT], +[rm -rf .tst 2>/dev/null +mkdir .tst 2>/dev/null +if test -d .tst; then + am__leading_dot=. +else + am__leading_dot=_ +fi +rmdir .tst 2>/dev/null +AC_SUBST([am__leading_dot])]) + +# Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering -# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004 +# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. +# +# 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. -# 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 3 +# serial 4 AC_DEFUN([AM_MAINTAINER_MODE], [AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) @@ -617,26 +595,15 @@ AC_DEFUN([AM_MAINTAINER_MODE], AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE]) -# Check to see how 'make' treats includes. -*- Autoconf -*- +# Check to see how 'make' treats includes. -*- Autoconf -*- -# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. +# +# 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. -# 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 2 +# serial 3 # AM_MAKE_INCLUDE() # ----------------- @@ -680,29 +647,17 @@ AC_MSG_RESULT([$_am_result]) rm -f confinc confmf ]) -# serial 2 +# Copyright (C) 1999, 2000, 2001, 2003, 2005 Free Software Foundation, Inc. +# +# 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. + +# serial 3 # AM_PROG_CC_C_O # -------------- # Like AC_PROG_CC_C_O, but changed for automake. - -# Copyright (C) 1999, 2000, 2001, 2003 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - AC_DEFUN([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC_C_O])dnl AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl @@ -720,27 +675,16 @@ if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" != yes"; then fi ]) -# -*- Autoconf -*- +# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- +# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005 +# Free Software Foundation, Inc. +# +# 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. -# Copyright (C) 1997, 1999, 2000, 2001, 2003 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 3 +# serial 4 # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ @@ -766,27 +710,16 @@ else fi ]) +# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. +# +# 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. + # AM_PROG_MKDIR_P # --------------- # Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise. - -# Copyright (C) 2003, 2004 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - +# # Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories # created by `make install' are always world readable, even if the # installer happens to have an overly restrictive umask (e.g. 077). @@ -840,26 +773,15 @@ else fi AC_SUBST([mkdir_p])]) -# Helper functions for option handling. -*- Autoconf -*- +# Helper functions for option handling. -*- Autoconf -*- -# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. +# +# 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. -# 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 2 +# serial 3 # _AM_MANGLE_OPTION(NAME) # ----------------------- @@ -884,28 +806,16 @@ AC_DEFUN([_AM_SET_OPTIONS], AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) +# Check to make sure that the build environment is sane. -*- Autoconf -*- + +# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005 +# Free Software Foundation, Inc. # -# Check to make sure that the build environment is sane. -# +# 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. -# Copyright (C) 1996, 1997, 2000, 2001, 2003 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 3 +# serial 4 # AM_SANITY_CHECK # --------------- @@ -948,25 +858,14 @@ Check your system clock]) fi AC_MSG_RESULT(yes)]) +# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# +# 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. + # AM_PROG_INSTALL_STRIP - -# Copyright (C) 2001, 2003 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - +# --------------------- # One issue with vendor `install' (even GNU) is that you can't # specify the program used to strip binaries. This is especially # annoying in cross-compiling environments, where the build's strip @@ -989,25 +888,13 @@ AC_SUBST([INSTALL_STRIP_PROGRAM])]) # Check how to create a tarball. -*- Autoconf -*- -# Copyright (C) 2004 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 -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 1 +# Copyright (C) 2004, 2005 Free Software Foundation, Inc. +# +# 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. +# serial 2 # _AM_PROG_TAR(FORMAT) # -------------------- @@ -1096,13 +983,10 @@ AC_SUBST([am__untar]) ]) # _AM_PROG_TAR m4_include([../config/acx.m4]) -m4_include([../config/depstand.m4]) m4_include([../config/gxx-include-dir.m4]) m4_include([../config/iconv.m4]) m4_include([../config/lcmessage.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([pkg.m4]) m4_include([acinclude.m4]) diff --git a/libjava/configure b/libjava/configure index 2c915261bc2..1f53425e65d 100755 --- a/libjava/configure +++ b/libjava/configure @@ -272,7 +272,7 @@ PACKAGE_STRING='libjava version-unused' PACKAGE_BUGREPORT='' ac_unique_file="java/lang/System.java" -ac_subdirs_all="$ac_subdirs_all libltdl" +ac_subdirs_all="$ac_subdirs_all classpath libltdl" # Factoring default headers for most tests. ac_includes_default="\ #include @@ -310,7 +310,7 @@ ac_includes_default="\ # include #endif" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os build_subdir host_subdir target_subdir libgcj_basedir host host_cpu host_vendor host_os target target_cpu target_vendor target_os target_noncanonical LN_S mkinstalldirs CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LDFLAGS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBGCJ_CFLAGS LIBGCJ_CXXFLAGS LIBGCJ_JAVAFLAGS LIBGCJ_LD_SYMBOLIC INCLTDL LIBLTDL DIRLTDL LIBTOOL CXXCPP CPPFLAGS GCJ GCJFLAGS GCJDEPMODE am__fastdepGCJ_TRUE am__fastdepGCJ_FALSE subdirs TESTSUBDIR_TRUE TESTSUBDIR_FALSE JAVA_HOME_SET_TRUE JAVA_HOME_SET_FALSE JAVA_HOME LIBGCJDEBUG INTERPRETER LIBFFI LIBFFIINCS PLATFORM_INNER_NAT_HDRS CPP EGREP USING_WIN32_PLATFORM_TRUE USING_WIN32_PLATFORM_FALSE USING_POSIX_PLATFORM_TRUE USING_POSIX_PLATFORM_FALSE USING_DARWIN_CRT_TRUE USING_DARWIN_CRT_FALSE SYSTEMSPEC LIBGCJTESTSPEC ZLIBSPEC ZLIBTESTSPEC X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS TOOLKIT XLIB_AWT_TRUE XLIB_AWT_FALSE GTK_AWT_TRUE GTK_AWT_FALSE GTK_CAIRO_TRUE GTK_CAIRO_FALSE PKG_CONFIG CAIRO_CFLAGS CAIRO_LIBS PANGOFT2_CFLAGS PANGOFT2_LIBS GCLIBS GCINCS GCDEPS GCSPEC JC1GCSPEC GCTESTSPEC USING_BOEHMGC_TRUE USING_BOEHMGC_FALSE USING_NOGC_TRUE USING_NOGC_FALSE THREADLIBS THREADINCS THREADDEPS THREADSPEC THREADLDFLAGS THREADCXXFLAGS USING_POSIX_THREADS_TRUE USING_POSIX_THREADS_FALSE USING_WIN32_THREADS_TRUE USING_WIN32_THREADS_FALSE USING_NO_THREADS_TRUE USING_NO_THREADS_FALSE HASH_SYNC_SPEC USING_GCC_TRUE USING_GCC_FALSE LIBICONV LTLIBICONV GTK_CFLAGS GTK_LIBS GLIB_CFLAGS GLIB_LIBS LIBART_CFLAGS LIBART_LIBS SUPPLY_BACKTRACE_TRUE SUPPLY_BACKTRACE_FALSE GCJH ZIP CLASSPATH_SEPARATOR ac_ct_GCJ ZLIBS SYS_ZLIBS ZINCS DIVIDESPEC CHECKREFSPEC EXCEPTIONSPEC BACKTRACESPEC IEEESPEC NATIVE_TRUE NATIVE_FALSE NEEDS_DATA_START_TRUE NEEDS_DATA_START_FALSE GCC_UNWIND_INCLUDE toolexecdir toolexecmainlibdir toolexeclibdir GCJVERSION gxx_include_dir libstdcxx_incdir ALLOCA PERL SYSDEP_SOURCES here LIBOBJS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os build_subdir host_subdir target_subdir libgcj_basedir host host_cpu host_vendor host_os target target_cpu target_vendor target_os target_noncanonical LN_S mkinstalldirs CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LDFLAGS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE AS ac_ct_AS AR ac_ct_AR RANLIB ac_ct_RANLIB MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBGCJ_CFLAGS LIBGCJ_CXXFLAGS LIBGCJ_JAVAFLAGS LIBGCJ_LD_SYMBOLIC LIBGCJDEBUG TOOLKIT XLIB_AWT_TRUE XLIB_AWT_FALSE GTK_AWT_TRUE GTK_AWT_FALSE GCJH ZIP INCLTDL LIBLTDL DIRLTDL LIBTOOL CXXCPP CPPFLAGS GCJ GCJFLAGS GCJDEPMODE am__fastdepGCJ_TRUE am__fastdepGCJ_FALSE subdirs TESTSUBDIR_TRUE TESTSUBDIR_FALSE JAVA_HOME_SET_TRUE JAVA_HOME_SET_FALSE JAVA_HOME INTERPRETER LIBFFI LIBFFIINCS PLATFORM_INNER_NAT_HDRS CPP EGREP USING_WIN32_PLATFORM_TRUE USING_WIN32_PLATFORM_FALSE USING_POSIX_PLATFORM_TRUE USING_POSIX_PLATFORM_FALSE USING_DARWIN_CRT_TRUE USING_DARWIN_CRT_FALSE SYSTEMSPEC LIBGCJTESTSPEC ZLIBSPEC ZLIBTESTSPEC X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS GTK_CAIRO_TRUE GTK_CAIRO_FALSE PKG_CONFIG CAIRO_CFLAGS CAIRO_LIBS PANGOFT2_CFLAGS PANGOFT2_LIBS GCLIBS GCINCS GCDEPS GCSPEC JC1GCSPEC GCTESTSPEC USING_BOEHMGC_TRUE USING_BOEHMGC_FALSE USING_NOGC_TRUE USING_NOGC_FALSE THREADLIBS THREADINCS THREADDEPS THREADSPEC THREADLDFLAGS THREADCXXFLAGS USING_POSIX_THREADS_TRUE USING_POSIX_THREADS_FALSE USING_WIN32_THREADS_TRUE USING_WIN32_THREADS_FALSE USING_NO_THREADS_TRUE USING_NO_THREADS_FALSE HASH_SYNC_SPEC USING_GCC_TRUE USING_GCC_FALSE LIBICONV LTLIBICONV GTK_CFLAGS GTK_LIBS GLIB_CFLAGS GLIB_LIBS LIBART_CFLAGS LIBART_LIBS SUPPLY_BACKTRACE_TRUE SUPPLY_BACKTRACE_FALSE CLASSPATH_SEPARATOR ac_ct_GCJ ZLIBS SYS_ZLIBS ZINCS DIVIDESPEC CHECKREFSPEC EXCEPTIONSPEC BACKTRACESPEC IEEESPEC NATIVE_TRUE NATIVE_FALSE NEEDS_DATA_START_TRUE NEEDS_DATA_START_FALSE GCC_UNWIND_INCLUDE toolexecdir toolexecmainlibdir toolexeclibdir GCJVERSION gxx_include_dir libstdcxx_incdir ALLOCA PERL SYSDEP_SOURCES here LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -857,6 +857,8 @@ Optional Features: --enable-dependency-tracking do not reject slow dependency extractors --enable-maintainer-mode enable make rules and dependencies not useful (and sometimes confusing) to the casual installer + --enable-libgcj-debug enable runtime debugging code + --enable-java-awt list of AWT peer implementations to be built --enable-shared=PKGS build shared libraries default=yes --enable-static=PKGS build static libraries default=yes --enable-fast-install=PKGS optimize for fast installation default=yes @@ -865,14 +867,12 @@ Optional Features: don't set system properties from GCJ_PROPERTIES --enable-hash-synchronization use global hash table for monitor locks - --enable-libgcj-debug enable runtime debugging code --enable-gc-debug include full support for pointer backtracing etc. --enable-interpreter enable interpreter --enable-sjlj-exceptions force use of builtin_setjmp for exceptions --disable-java-net disable java.net --disable-jvmpi disable JVMPI support - --enable-java-awt list of AWT peer implementations to be built --enable-gtk-cairo build the cairo Graphics2D implementation on GTK --enable-java-gc=TYPE choose garbage collector (default is boehm) --disable-rpath do not hardcode runtime library paths @@ -4014,6 +4014,191 @@ LIBGCJ_LD_SYMBOLIC="${libgcj_ld_symbolic}" ac_config_headers="$ac_config_headers include/config.h gcj/libgcj-config.h" + +# See if the user has requested runtime debugging. +LIBGCJDEBUG="disable" + +# Check whether --enable-libgcj-debug or --disable-libgcj-debug was given. +if test "${enable_libgcj_debug+set}" = set; then + enableval="$enable_libgcj_debug" + if test "$enable_libgcj_debug" = yes; then + +cat >>confdefs.h <<\_ACEOF +#define DEBUG 1 +_ACEOF + + LIBGCJDEBUG="enable" + fi +fi; + +# Determine which AWT peer libraries to build +# Check whether --enable-java-awt or --disable-java-awt was given. +if test "${enable_java_awt+set}" = set; then + enableval="$enable_java_awt" + +fi; + +peerlibs="`echo ${enable_java_awt} | tr ',' ' '`" +use_xlib_awt="" +use_gtk_awt="" +# The default toolkit to use is the first one specified. +TOOLKIT= + + +for peer in $peerlibs ; do + case $peer in + xlib) + if test "$no_x" = yes; then + echo "*** xlib peers requested but no X library available" 1>&2 + exit 1 + else + # This code has bit-rotted a bit. + echo "*** xlib peers can't currently be compiled -- disabling" 1>&2 +# use_xlib_awt="yes" +# if test -z "$TOOLKIT"; then +# TOOLKIT=gnu.awt.xlib.XToolkit +# fi + fi + ;; + gtk) + if test "$no_x" = yes; then + echo "*** xlib peers requested but no X library available" 1>&2 + exit 1 + else + use_gtk_awt=yes + if test -z "$TOOLKIT"; then + TOOLKIT=gnu.java.awt.peer.gtk.GtkToolkit + fi + fi + ;; + no) + use_xlib_awt= + use_gtk_awt= + break + ;; + *) + echo "*** unrecognised argument \"${peer}\" for --enable-java-awt" 1>&2 + exit 1 + esac +done + + + +if test "$use_xlib_awt" = yes; then + XLIB_AWT_TRUE= + XLIB_AWT_FALSE='#' +else + XLIB_AWT_TRUE='#' + XLIB_AWT_FALSE= +fi + + + +if test "$use_gtk_awt" = yes; then + GTK_AWT_TRUE= + GTK_AWT_FALSE='#' +else + GTK_AWT_TRUE='#' + GTK_AWT_FALSE= +fi + + + +if test -z "${with_multisubdir}"; then + builddotdot=. +else + builddotdot=`echo ${with_multisubdir} | sed -e 's:[^/][^/]*:..:g'` +fi + +NATIVE=yes + +# Which gcj do we use? +which_gcj=default +built_gcc_dir="`cd ${builddotdot}/../../${host_subdir}/gcc && ${PWDCMD-pwd}`" +if test -n "${with_cross_host}"; then + # We are being configured with a cross compiler. We can't + # use ac_exeext, because that is for the target platform. + NATIVE=no + cross_host_exeext= + case "${with_cross_host}" in + *mingw* | *cygwin*) + cross_host_exeext=.exe + ;; + esac + if test -x "${built_gcc_dir}/gcj${cross_host_exeext}"; then + if test x"$build_noncanonical" = x"$with_cross_host"; then + # Ordinary cross (host!=target and host=build) + which_gcj=built + else + # Canadian cross (host!=target and host!=build) + which_gcj=cross + fi + else + which_gcj=cross + fi +else + # We are being configured with a native or crossed-native compiler + if test -x "${built_gcc_dir}/gcj${ac_exeext}"; then + if test x"$build" = x"$host"; then + # True native build (host=target and host=build) + which_gcj=built + else + # Crossed-native build (host=target and host!=build) + which_gcj=cross + fi + else + which_gcj=path + fi +fi +case "${which_gcj}" in + built) + GCJ="$built_gcc_dir/gcj -B`${PWDCMD-pwd}`/ -B$built_gcc_dir/" + GCJH='$(top_builddir)/$(MULTIBUILDTOP)../../$(host_subdir)/gcc/gcjh' + ZIP='$(top_builddir)/$(MULTIBUILDTOP)../../$(host_subdir)/fastjar/fastjar' + ;; + cross) + if test "x${with_newlib}" = "xyes"; then + # FIXME (comment): Why is this needed? + GCC_UNWIND_INCLUDE= + GCJ="${target_noncanonical}-gcj" + else + GCJ="${target_noncanonical}-gcj -B`${PWDCMD-pwd}`/" + fi + ZIP='$(target_noncanonical)-fastjar' + GCJH='$(target_noncanonical)-gcjh' + ;; + path) + GCJ="gcj -B`${PWDCMD-pwd}`/" + ## In this case, gcj is found outside the build tree. However, zip is + ## found in the build tree. + ZIP='$(top_builddir)/$(MULTIBUILDTOP)../$(COMPPATH)/fastjar/fastjar' + GCJH=gcjh + ;; +esac + + + + +# Create it, so that compile/link tests don't fail +test -f libgcj.spec || touch libgcj.spec + + + +# Set up to configure Classpath. +# FIXME: no supported way to pass args in autoconf. +ac_configure_args="$ac_configure_args --disable-load-library" +ac_configure_args="$ac_configure_args --${LIBGCJDEBUG}-debug" +ac_configure_args="$ac_configure_args --enable-default-toolkit=$TOOLKIT" +dir1=`cd $srcdir && pwd` +dir2=`pwd` +ac_configure_args="$ac_configure_args --with-vm-classes=$dir1:$dir2" +ac_configure_args="$ac_configure_args --disable-core-jni" +ac_configure_args="$ac_configure_args --disable-examples" +ac_configure_args="$ac_configure_args --with-glibj=build" +if test "$use_gtk_awt" != yes; then + ac_configure_args="$ac_configure_args --disable-gtk-peer" +fi + # Only use libltdl for non-newlib builds. if test "x${with_newlib}" = "x" || test "x${with_newlib}" = "xno"; then case $enable_ltdl_convenience in @@ -4432,67 +4617,6 @@ deplibs_check_method=$lt_cv_deplibs_check_method # Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! -# find the maximum length of command line arguments -echo "$as_me:$LINENO: checking the maximum length of command line arguments" >&5 -echo $ECHO_N "checking the maximum length of command line arguments... $ECHO_C" >&6 -if test "${lt_cv_sys_max_cmd_len+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - i=0 - teststring="ABCD" - - case $build_os in - msdosdjgpp*) - # On DJGPP, this test can blow up pretty badly due to problems in libc - # (any single argument exceeding 2000 bytes causes a buffer overrun - # during glob expansion). Even if it were fixed, the result of this - # check would be larger than it should be. - lt_cv_sys_max_cmd_len=12288; # 12K is about right - ;; - - cygwin* | mingw*) - # On Win9x/ME, this test blows up -- it succeeds, but takes - # about 5 minutes as the teststring grows exponentially. - # Worse, since 9x/ME are not pre-emptively multitasking, - # you end up with a "frozen" computer, even though with patience - # the test eventually succeeds (with a max line length of 256k). - # Instead, let's just punt: use the minimum linelength reported by - # all of the supported platforms: 8192 (on NT/2K/XP). - lt_cv_sys_max_cmd_len=8192; - ;; - - amigaos*) - # On AmigaOS with pdksh, this test takes hours, literally. - # So we just punt and use a minimum line length of 8192. - lt_cv_sys_max_cmd_len=8192; - ;; - - netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) - # This has been around since 386BSD, at least. Likely further. - if test -x /sbin/sysctl; then - lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` - elif test -x /usr/sbin/sysctl; then - lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` - else - lt_cv_sys_max_cmd_len=65536 # usable default for *BSD - fi - # And add a safety zone - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` - ;; - esac - -fi - -if test -n "$lt_cv_sys_max_cmd_len" ; then - echo "$as_me:$LINENO: result: $lt_cv_sys_max_cmd_len" >&5 -echo "${ECHO_T}$lt_cv_sys_max_cmd_len" >&6 -else - echo "$as_me:$LINENO: result: none" >&5 -echo "${ECHO_T}none" >&6 -fi - - # Only perform the check for file, if the check method requires it case $deplibs_check_method in file_magic*) @@ -4826,7 +4950,7 @@ test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic" case $host in *-*-irix6*) # Find out which ABI we are using. - echo '#line 4829 "configure"' > conftest.$ac_ext + echo '#line 4953 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -5661,7 +5785,8 @@ fi -subdirs="$subdirs libltdl" + +subdirs="$subdirs classpath libltdl" # The -no-testsuite modules omit the test subdir. @@ -5779,23 +5904,6 @@ _ACEOF fi - -# See if the user has requested runtime debugging. -LIBGCJDEBUG="false" - -# Check whether --enable-libgcj-debug or --disable-libgcj-debug was given. -if test "${enable_libgcj_debug+set}" = set; then - enableval="$enable_libgcj_debug" - if test "$enable_libgcj_debug" = yes; then - -cat >>confdefs.h <<\_ACEOF -#define DEBUG 1 -_ACEOF - - LIBGCJDEBUG="true" - fi -fi; - # Check for gc debugging. This option is handled both here and in the GC. # Check whether --enable-gc-debug or --disable-gc-debug was given. if test "${enable_gc_debug+set}" = set; then @@ -5845,7 +5953,7 @@ if test "${enable_sjlj_exceptions+set}" = set; then : else cat > conftest.$ac_ext << EOF -#line 5848 "configure" +#line 5956 "configure" struct S { ~S(); }; void bar(); void foo() @@ -7976,77 +8084,6 @@ fi fi -# Determine which AWT peer libraries to build -# Check whether --enable-java-awt or --disable-java-awt was given. -if test "${enable_java_awt+set}" = set; then - enableval="$enable_java_awt" - -fi; - -peerlibs="`echo ${enable_java_awt} | tr ',' ' '`" -use_xlib_awt="" -use_gtk_awt="" -# The default toolkit to use is the first one specified. -TOOLKIT= - - -for peer in $peerlibs ; do - case $peer in - xlib) - if test "$no_x" = yes; then - echo "*** xlib peers requested but no X library available" 1>&2 - exit 1 - else - use_xlib_awt="yes" - if test -z "$TOOLKIT"; then - TOOLKIT=gnu.awt.xlib.XToolkit - fi - fi - ;; - gtk) - if test "$no_x" = yes; then - echo "*** xlib peers requested but no X library available" 1>&2 - exit 1 - else - use_gtk_awt=yes - if test -z "$TOOLKIT"; then - TOOLKIT=gnu.java.awt.peer.gtk.GtkToolkit - fi - test -d jniinclude || mkdir jniinclude - fi - ;; - no) - use_xlib_awt= - use_gtk_awt= - break - ;; - *) - echo "*** unrecognised argument \"${peer}\" for --enable-java-awt" 1>&2 - exit 1 - esac -done - - - -if test "$use_xlib_awt" = yes; then - XLIB_AWT_TRUE= - XLIB_AWT_FALSE='#' -else - XLIB_AWT_TRUE='#' - XLIB_AWT_FALSE= -fi - - - -if test "$use_gtk_awt" = yes; then - GTK_AWT_TRUE= - GTK_AWT_FALSE='#' -else - GTK_AWT_TRUE='#' - GTK_AWT_FALSE= -fi - - # determine whether to enable the cairo GTK Graphics2D backend # Check whether --enable-gtk-cairo or --disable-gtk-cairo was given. if test "${enable_gtk_cairo+set}" = set; then @@ -13311,84 +13348,6 @@ else fi -if test -z "${with_multisubdir}"; then - builddotdot=. -else - builddotdot=`echo ${with_multisubdir} | sed -e 's:[^/][^/]*:..:g'` -fi - -NATIVE=yes - -# Which gcj do we use? -which_gcj=default -built_gcc_dir="`cd ${builddotdot}/../../${host_subdir}/gcc && ${PWDCMD-pwd}`" -if test -n "${with_cross_host}"; then - # We are being configured with a cross compiler. We can't - # use ac_exeext, because that is for the target platform. - NATIVE=no - cross_host_exeext= - case "${with_cross_host}" in - *mingw* | *cygwin*) - cross_host_exeext=.exe - ;; - esac - if test -x "${built_gcc_dir}/gcj${cross_host_exeext}"; then - if test x"$build_noncanonical" = x"$with_cross_host"; then - # Ordinary cross (host!=target and host=build) - which_gcj=built - else - # Canadian cross (host!=target and host!=build) - which_gcj=cross - fi - else - which_gcj=cross - fi -else - # We are being configured with a native or crossed-native compiler - if test -x "${built_gcc_dir}/gcj${ac_exeext}"; then - if test x"$build" = x"$host"; then - # True native build (host=target and host=build) - which_gcj=built - else - # Crossed-native build (host=target and host!=build) - which_gcj=cross - fi - else - which_gcj=path - fi -fi -case "${which_gcj}" in - built) - GCJ="$built_gcc_dir/gcj -B`${PWDCMD-pwd}`/ -B$built_gcc_dir/" - GCJH='$(top_builddir)/$(MULTIBUILDTOP)../../$(host_subdir)/gcc/gcjh' - ZIP='$(top_builddir)/$(MULTIBUILDTOP)../../$(host_subdir)/fastjar/fastjar' - ;; - cross) - if test "x${with_newlib}" = "xyes"; then - # FIXME (comment): Why is this needed? - GCC_UNWIND_INCLUDE= - GCJ="${target_noncanonical}-gcj" - else - GCJ="${target_noncanonical}-gcj -B`${PWDCMD-pwd}`/" - fi - ZIP='$(target_noncanonical)-fastjar' - GCJH='$(target_noncanonical)-gcjh' - ;; - path) - GCJ="gcj -B`${PWDCMD-pwd}`/" - ## In this case, gcj is found outside the build tree. However, zip is - ## found in the build tree. - ZIP='$(top_builddir)/$(MULTIBUILDTOP)../$(COMPPATH)/fastjar/fastjar' - GCJH=gcjh - ;; -esac - - - - -# Create it, so that compile/link tests don't fail -test -f libgcj.spec || touch libgcj.spec - # Use a semicolon as CLASSPATH separator for MinGW, otherwise a colon. case $build in *-mingw32) CLASSPATH_SEPARATOR=';' ;; @@ -13406,8 +13365,8 @@ CPPFLAGS="$CPPFLAGS -I`${PWDCMD-pwd}` -I`cd $srcdir && ${PWDCMD-pwd}`" if test ! -f gnu/classpath/Configuration.java; then test -d gnu || mkdir gnu test -d gnu/classpath || mkdir gnu/classpath - sed -e 's,@LIBGCJDEBUG@,$LIBGCJDEBUG,' \ - -e 's,@TOOLKIT@,$TOOLKIT,' \ + sed -e "s,@LIBGCJDEBUG@,$LIBGCJDEBUG," \ + -e "s,@TOOLKIT@,$TOOLKIT," \ < $srcdir/gnu/classpath/Configuration.java.in \ > gnu/classpath/Configuration.java # We do not want to redirect the output of the grep below to /dev/null, @@ -13505,6 +13464,9 @@ fi +# Now remove it. +rm -f gnu/classpath/Configuration.java + CPPFLAGS=$GCJ_SAVE_CPPFLAGS echo "$as_me:$LINENO: checking for void *" >&5 @@ -15574,7 +15536,7 @@ if test x$gcc_no_link = xyes; then ac_cv_func_mmap_fixed_mapped=no fi fi -if test "x${ac_cv_func_mmap_fixed_mapped}" != xno; then +if test "x${ac_cv_func_mmap_fixed_mapped+set}" != xset; then for ac_header in stdlib.h unistd.h @@ -16134,7 +16096,7 @@ here=`${PWDCMD-pwd}` # We get this from the environment. - ac_config_files="$ac_config_files Makefile libgcj.pc libgcj.spec libgcj-test.spec gnu/classpath/Configuration.java gcj/Makefile include/Makefile testsuite/Makefile external/Makefile external/sax/Makefile external/w3c_dom/Makefile" + ac_config_files="$ac_config_files Makefile libgcj.pc libgcj.spec libgcj-test.spec gcj/Makefile include/Makefile testsuite/Makefile" ac_config_commands="$ac_config_commands default" @@ -16259,6 +16221,20 @@ echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi +if test -z "${XLIB_AWT_TRUE}" && test -z "${XLIB_AWT_FALSE}"; then + { { echo "$as_me:$LINENO: error: conditional \"XLIB_AWT\" was never defined. +Usually this means the macro was only invoked conditionally." >&5 +echo "$as_me: error: conditional \"XLIB_AWT\" was never defined. +Usually this means the macro was only invoked conditionally." >&2;} + { (exit 1); exit 1; }; } +fi +if test -z "${GTK_AWT_TRUE}" && test -z "${GTK_AWT_FALSE}"; then + { { echo "$as_me:$LINENO: error: conditional \"GTK_AWT\" was never defined. +Usually this means the macro was only invoked conditionally." >&5 +echo "$as_me: error: conditional \"GTK_AWT\" was never defined. +Usually this means the macro was only invoked conditionally." >&2;} + { (exit 1); exit 1; }; } +fi if test -z "${am__fastdepGCJ_TRUE}" && test -z "${am__fastdepGCJ_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"am__fastdepGCJ\" was never defined. Usually this means the macro was only invoked conditionally." >&5 @@ -16301,20 +16277,6 @@ echo "$as_me: error: conditional \"USING_DARWIN_CRT\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi -if test -z "${XLIB_AWT_TRUE}" && test -z "${XLIB_AWT_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"XLIB_AWT\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -echo "$as_me: error: conditional \"XLIB_AWT\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } -fi -if test -z "${GTK_AWT_TRUE}" && test -z "${GTK_AWT_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"GTK_AWT\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -echo "$as_me: error: conditional \"GTK_AWT\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } -fi if test -z "${GTK_CAIRO_TRUE}" && test -z "${GTK_CAIRO_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"GTK_CAIRO\" was never defined. Usually this means the macro was only invoked conditionally." >&5 @@ -16847,13 +16809,9 @@ do "libgcj.pc" ) CONFIG_FILES="$CONFIG_FILES libgcj.pc" ;; "libgcj.spec" ) CONFIG_FILES="$CONFIG_FILES libgcj.spec" ;; "libgcj-test.spec" ) CONFIG_FILES="$CONFIG_FILES libgcj-test.spec" ;; - "gnu/classpath/Configuration.java" ) CONFIG_FILES="$CONFIG_FILES gnu/classpath/Configuration.java" ;; "gcj/Makefile" ) CONFIG_FILES="$CONFIG_FILES gcj/Makefile" ;; "include/Makefile" ) CONFIG_FILES="$CONFIG_FILES include/Makefile" ;; "testsuite/Makefile" ) CONFIG_FILES="$CONFIG_FILES testsuite/Makefile" ;; - "external/Makefile" ) CONFIG_FILES="$CONFIG_FILES external/Makefile" ;; - "external/sax/Makefile" ) CONFIG_FILES="$CONFIG_FILES external/sax/Makefile" ;; - "external/w3c_dom/Makefile" ) CONFIG_FILES="$CONFIG_FILES external/w3c_dom/Makefile" ;; "include/platform.h" ) CONFIG_LINKS="$CONFIG_LINKS include/platform.h:include/$PLATFORMH" ;; "java/io/natFile.cc" ) CONFIG_LINKS="$CONFIG_LINKS java/io/natFile.cc:java/io/natFile${FILE-${PLATFORM}}.cc" ;; "java/lang/ConcreteProcess.java" ) CONFIG_LINKS="$CONFIG_LINKS java/lang/ConcreteProcess.java:java/lang/${PLATFORM}Process.java" ;; @@ -17037,6 +16995,14 @@ s,@LIBGCJ_CFLAGS@,$LIBGCJ_CFLAGS,;t t s,@LIBGCJ_CXXFLAGS@,$LIBGCJ_CXXFLAGS,;t t s,@LIBGCJ_JAVAFLAGS@,$LIBGCJ_JAVAFLAGS,;t t s,@LIBGCJ_LD_SYMBOLIC@,$LIBGCJ_LD_SYMBOLIC,;t t +s,@LIBGCJDEBUG@,$LIBGCJDEBUG,;t t +s,@TOOLKIT@,$TOOLKIT,;t t +s,@XLIB_AWT_TRUE@,$XLIB_AWT_TRUE,;t t +s,@XLIB_AWT_FALSE@,$XLIB_AWT_FALSE,;t t +s,@GTK_AWT_TRUE@,$GTK_AWT_TRUE,;t t +s,@GTK_AWT_FALSE@,$GTK_AWT_FALSE,;t t +s,@GCJH@,$GCJH,;t t +s,@ZIP@,$ZIP,;t t s,@INCLTDL@,$INCLTDL,;t t s,@LIBLTDL@,$LIBLTDL,;t t s,@DIRLTDL@,$DIRLTDL,;t t @@ -17054,7 +17020,6 @@ s,@TESTSUBDIR_FALSE@,$TESTSUBDIR_FALSE,;t t s,@JAVA_HOME_SET_TRUE@,$JAVA_HOME_SET_TRUE,;t t s,@JAVA_HOME_SET_FALSE@,$JAVA_HOME_SET_FALSE,;t t s,@JAVA_HOME@,$JAVA_HOME,;t t -s,@LIBGCJDEBUG@,$LIBGCJDEBUG,;t t s,@INTERPRETER@,$INTERPRETER,;t t s,@LIBFFI@,$LIBFFI,;t t s,@LIBFFIINCS@,$LIBFFIINCS,;t t @@ -17075,11 +17040,6 @@ s,@X_CFLAGS@,$X_CFLAGS,;t t s,@X_PRE_LIBS@,$X_PRE_LIBS,;t t s,@X_LIBS@,$X_LIBS,;t t s,@X_EXTRA_LIBS@,$X_EXTRA_LIBS,;t t -s,@TOOLKIT@,$TOOLKIT,;t t -s,@XLIB_AWT_TRUE@,$XLIB_AWT_TRUE,;t t -s,@XLIB_AWT_FALSE@,$XLIB_AWT_FALSE,;t t -s,@GTK_AWT_TRUE@,$GTK_AWT_TRUE,;t t -s,@GTK_AWT_FALSE@,$GTK_AWT_FALSE,;t t s,@GTK_CAIRO_TRUE@,$GTK_CAIRO_TRUE,;t t s,@GTK_CAIRO_FALSE@,$GTK_CAIRO_FALSE,;t t s,@PKG_CONFIG@,$PKG_CONFIG,;t t @@ -17122,8 +17082,6 @@ s,@LIBART_CFLAGS@,$LIBART_CFLAGS,;t t s,@LIBART_LIBS@,$LIBART_LIBS,;t t s,@SUPPLY_BACKTRACE_TRUE@,$SUPPLY_BACKTRACE_TRUE,;t t s,@SUPPLY_BACKTRACE_FALSE@,$SUPPLY_BACKTRACE_FALSE,;t t -s,@GCJH@,$GCJH,;t t -s,@ZIP@,$ZIP,;t t s,@CLASSPATH_SEPARATOR@,$CLASSPATH_SEPARATOR,;t t s,@ac_ct_GCJ@,$ac_ct_GCJ,;t t s,@ZLIBS@,$ZLIBS,;t t diff --git a/libjava/configure.ac b/libjava/configure.ac index a59a4616e59..ff45f6eebf0 100644 --- a/libjava/configure.ac +++ b/libjava/configure.ac @@ -144,6 +144,172 @@ AC_SUBST(LIBGCJ_LD_SYMBOLIC) AC_CONFIG_HEADERS([include/config.h gcj/libgcj-config.h]) + +# See if the user has requested runtime debugging. +LIBGCJDEBUG="disable" +AC_SUBST(LIBGCJDEBUG) +AC_ARG_ENABLE(libgcj-debug, + AS_HELP_STRING([--enable-libgcj-debug], + [enable runtime debugging code]), + [if test "$enable_libgcj_debug" = yes; then + AC_DEFINE(DEBUG, 1, [Define this if you want runtime debugging enabled.]) + LIBGCJDEBUG="enable" + fi]) + +# Determine which AWT peer libraries to build +AC_ARG_ENABLE(java-awt, + AS_HELP_STRING([--enable-java-awt], + [list of AWT peer implementations to be built])) + +peerlibs="`echo ${enable_java_awt} | tr ',' ' '`" +use_xlib_awt="" +use_gtk_awt="" +# The default toolkit to use is the first one specified. +TOOLKIT= +AC_SUBST(TOOLKIT) + +for peer in $peerlibs ; do + case $peer in + xlib) + if test "$no_x" = yes; then + echo "*** xlib peers requested but no X library available" 1>&2 + exit 1 + else + # This code has bit-rotted a bit. + echo "*** xlib peers can't currently be compiled -- disabling" 1>&2 +# use_xlib_awt="yes" +# if test -z "$TOOLKIT"; then +# TOOLKIT=gnu.awt.xlib.XToolkit +# fi + fi + ;; + gtk) + if test "$no_x" = yes; then + echo "*** xlib peers requested but no X library available" 1>&2 + exit 1 + else + use_gtk_awt=yes + if test -z "$TOOLKIT"; then + TOOLKIT=gnu.java.awt.peer.gtk.GtkToolkit + fi + fi + ;; + no) + use_xlib_awt= + use_gtk_awt= + break + ;; + *) + echo "*** unrecognised argument \"${peer}\" for --enable-java-awt" 1>&2 + exit 1 + esac +done + +AM_CONDITIONAL(XLIB_AWT, test "$use_xlib_awt" = yes) +AM_CONDITIONAL(GTK_AWT, test "$use_gtk_awt" = yes) + + +if test -z "${with_multisubdir}"; then + builddotdot=. +else + builddotdot=`echo ${with_multisubdir} | sed -e 's:[[^/]][[^/]]*:..:g'` +fi + +NATIVE=yes + +# Which gcj do we use? +which_gcj=default +built_gcc_dir="`cd ${builddotdot}/../../${host_subdir}/gcc && ${PWDCMD-pwd}`" +if test -n "${with_cross_host}"; then + # We are being configured with a cross compiler. We can't + # use ac_exeext, because that is for the target platform. + NATIVE=no + cross_host_exeext= + case "${with_cross_host}" in + *mingw* | *cygwin*) + cross_host_exeext=.exe + ;; + esac + if test -x "${built_gcc_dir}/gcj${cross_host_exeext}"; then + if test x"$build_noncanonical" = x"$with_cross_host"; then + # Ordinary cross (host!=target and host=build) + which_gcj=built + else + # Canadian cross (host!=target and host!=build) + which_gcj=cross + fi + else + which_gcj=cross + fi +else + # We are being configured with a native or crossed-native compiler + if test -x "${built_gcc_dir}/gcj${ac_exeext}"; then + if test x"$build" = x"$host"; then + # True native build (host=target and host=build) + which_gcj=built + else + # Crossed-native build (host=target and host!=build) + which_gcj=cross + fi + else + which_gcj=path + fi +fi +case "${which_gcj}" in + built) + GCJ="$built_gcc_dir/gcj -B`${PWDCMD-pwd}`/ -B$built_gcc_dir/" + GCJH='$(top_builddir)/$(MULTIBUILDTOP)../../$(host_subdir)/gcc/gcjh' + ZIP='$(top_builddir)/$(MULTIBUILDTOP)../../$(host_subdir)/fastjar/fastjar' + ;; + cross) + if test "x${with_newlib}" = "xyes"; then + # FIXME (comment): Why is this needed? + GCC_UNWIND_INCLUDE= + GCJ="${target_noncanonical}-gcj" + else + GCJ="${target_noncanonical}-gcj -B`${PWDCMD-pwd}`/" + fi + ZIP='$(target_noncanonical)-fastjar' + GCJH='$(target_noncanonical)-gcjh' + ;; + path) + GCJ="gcj -B`${PWDCMD-pwd}`/" + ## In this case, gcj is found outside the build tree. However, zip is + ## found in the build tree. + ZIP='$(top_builddir)/$(MULTIBUILDTOP)../$(COMPPATH)/fastjar/fastjar' + GCJH=gcjh + ;; +esac + +AC_SUBST(GCJH) +AC_SUBST(ZIP) + +# Create it, so that compile/link tests don't fail +test -f libgcj.spec || touch libgcj.spec + + + +# Set up to configure Classpath. +# FIXME: no supported way to pass args in autoconf. +ac_configure_args="$ac_configure_args --disable-load-library" +ac_configure_args="$ac_configure_args --${LIBGCJDEBUG}-debug" +ac_configure_args="$ac_configure_args --enable-default-toolkit=$TOOLKIT" +dir1=`cd $srcdir && pwd` +dir2=`pwd` +ac_configure_args="$ac_configure_args --with-vm-classes=$dir1:$dir2" +ac_configure_args="$ac_configure_args --disable-core-jni" +dnl FIXME? +ac_configure_args="$ac_configure_args --disable-examples" +ac_configure_args="$ac_configure_args --with-glibj=build" +if test "$use_gtk_awt" != yes; then + ac_configure_args="$ac_configure_args --disable-gtk-peer" +fi +dnl --with-gcj=$GCJ +dnl --with-javah=$GCJH +dnl gjdoc? +dnl gtk-cairo -- just export here... +dnl --enable-regen-headers? + # Only use libltdl for non-newlib builds. if test "x${with_newlib}" = "x" || test "x${with_newlib}" = "xno"; then AC_LIBLTDL_CONVENIENCE @@ -162,7 +328,8 @@ AC_SUBST(DIRLTDL) AC_PROG_LIBTOOL AM_PROG_GCJ AM_PROG_CC_C_O -AC_CONFIG_SUBDIRS(libltdl) + +AC_CONFIG_SUBDIRS(classpath libltdl) # The -no-testsuite modules omit the test subdir. AM_CONDITIONAL(TESTSUBDIR, test -d $srcdir/testsuite) @@ -234,18 +401,6 @@ if test "${slow_pthread_self}" = "yes"; then [Define if if the synchronization code should try to avoid pthread_self calls by caching thread IDs in a hashtable.]) fi - -# See if the user has requested runtime debugging. -LIBGCJDEBUG="false" -AC_SUBST(LIBGCJDEBUG) -AC_ARG_ENABLE(libgcj-debug, - AS_HELP_STRING([--enable-libgcj-debug], - [enable runtime debugging code]), - [if test "$enable_libgcj_debug" = yes; then - AC_DEFINE(DEBUG, 1, [Define this if you want runtime debugging enabled.]) - LIBGCJDEBUG="true" - fi]) - # Check for gc debugging. This option is handled both here and in the GC. AC_ARG_ENABLE(gc-debug, AS_HELP_STRING([--enable-gc-debug], @@ -488,57 +643,6 @@ AC_SUBST(ZLIBTESTSPEC) AC_PATH_XTRA -# Determine which AWT peer libraries to build -AC_ARG_ENABLE(java-awt, - AS_HELP_STRING([--enable-java-awt], - [list of AWT peer implementations to be built])) - -peerlibs="`echo ${enable_java_awt} | tr ',' ' '`" -use_xlib_awt="" -use_gtk_awt="" -# The default toolkit to use is the first one specified. -TOOLKIT= -AC_SUBST(TOOLKIT) - -for peer in $peerlibs ; do - case $peer in - xlib) - if test "$no_x" = yes; then - echo "*** xlib peers requested but no X library available" 1>&2 - exit 1 - else - use_xlib_awt="yes" - if test -z "$TOOLKIT"; then - TOOLKIT=gnu.awt.xlib.XToolkit - fi - fi - ;; - gtk) - if test "$no_x" = yes; then - echo "*** xlib peers requested but no X library available" 1>&2 - exit 1 - else - use_gtk_awt=yes - if test -z "$TOOLKIT"; then - TOOLKIT=gnu.java.awt.peer.gtk.GtkToolkit - fi - test -d jniinclude || mkdir jniinclude - fi - ;; - no) - use_xlib_awt= - use_gtk_awt= - break - ;; - *) - echo "*** unrecognised argument \"${peer}\" for --enable-java-awt" 1>&2 - exit 1 - esac -done - -AM_CONDITIONAL(XLIB_AWT, test "$use_xlib_awt" = yes) -AM_CONDITIONAL(GTK_AWT, test "$use_gtk_awt" = yes) - # determine whether to enable the cairo GTK Graphics2D backend AC_ARG_ENABLE(gtk-cairo, AS_HELP_STRING([--enable-gtk-cairo], @@ -1014,84 +1118,6 @@ else fi AM_CONDITIONAL(SUPPLY_BACKTRACE, test "$supply_backtrace" = yes) -if test -z "${with_multisubdir}"; then - builddotdot=. -else - builddotdot=`echo ${with_multisubdir} | sed -e 's:[[^/]][[^/]]*:..:g'` -fi - -NATIVE=yes - -# Which gcj do we use? -which_gcj=default -built_gcc_dir="`cd ${builddotdot}/../../${host_subdir}/gcc && ${PWDCMD-pwd}`" -if test -n "${with_cross_host}"; then - # We are being configured with a cross compiler. We can't - # use ac_exeext, because that is for the target platform. - NATIVE=no - cross_host_exeext= - case "${with_cross_host}" in - *mingw* | *cygwin*) - cross_host_exeext=.exe - ;; - esac - if test -x "${built_gcc_dir}/gcj${cross_host_exeext}"; then - if test x"$build_noncanonical" = x"$with_cross_host"; then - # Ordinary cross (host!=target and host=build) - which_gcj=built - else - # Canadian cross (host!=target and host!=build) - which_gcj=cross - fi - else - which_gcj=cross - fi -else - # We are being configured with a native or crossed-native compiler - if test -x "${built_gcc_dir}/gcj${ac_exeext}"; then - if test x"$build" = x"$host"; then - # True native build (host=target and host=build) - which_gcj=built - else - # Crossed-native build (host=target and host!=build) - which_gcj=cross - fi - else - which_gcj=path - fi -fi -case "${which_gcj}" in - built) - GCJ="$built_gcc_dir/gcj -B`${PWDCMD-pwd}`/ -B$built_gcc_dir/" - GCJH='$(top_builddir)/$(MULTIBUILDTOP)../../$(host_subdir)/gcc/gcjh' - ZIP='$(top_builddir)/$(MULTIBUILDTOP)../../$(host_subdir)/fastjar/fastjar' - ;; - cross) - if test "x${with_newlib}" = "xyes"; then - # FIXME (comment): Why is this needed? - GCC_UNWIND_INCLUDE= - GCJ="${target_noncanonical}-gcj" - else - GCJ="${target_noncanonical}-gcj -B`${PWDCMD-pwd}`/" - fi - ZIP='$(target_noncanonical)-fastjar' - GCJH='$(target_noncanonical)-gcjh' - ;; - path) - GCJ="gcj -B`${PWDCMD-pwd}`/" - ## In this case, gcj is found outside the build tree. However, zip is - ## found in the build tree. - ZIP='$(top_builddir)/$(MULTIBUILDTOP)../$(COMPPATH)/fastjar/fastjar' - GCJH=gcjh - ;; -esac - -AC_SUBST(GCJH) -AC_SUBST(ZIP) - -# Create it, so that compile/link tests don't fail -test -f libgcj.spec || touch libgcj.spec - # Use a semicolon as CLASSPATH separator for MinGW, otherwise a colon. case $build in *-mingw32) CLASSPATH_SEPARATOR=';' ;; @@ -1109,8 +1135,8 @@ CPPFLAGS="$CPPFLAGS -I`${PWDCMD-pwd}` -I`cd $srcdir && ${PWDCMD-pwd}`" if test ! -f gnu/classpath/Configuration.java; then test -d gnu || mkdir gnu test -d gnu/classpath || mkdir gnu/classpath - sed -e 's,@LIBGCJDEBUG@,$LIBGCJDEBUG,' \ - -e 's,@TOOLKIT@,$TOOLKIT,' \ + sed -e "s,@LIBGCJDEBUG@,$LIBGCJDEBUG," \ + -e "s,@TOOLKIT@,$TOOLKIT," \ < $srcdir/gnu/classpath/Configuration.java.in \ > gnu/classpath/Configuration.java # We do not want to redirect the output of the grep below to /dev/null, @@ -1123,6 +1149,9 @@ fi LT_AC_PROG_GCJ +# Now remove it. +rm -f gnu/classpath/Configuration.java + CPPFLAGS=$GCJ_SAVE_CPPFLAGS AC_CHECK_SIZEOF(void *) @@ -1373,13 +1402,9 @@ Makefile libgcj.pc libgcj.spec libgcj-test.spec -gnu/classpath/Configuration.java gcj/Makefile include/Makefile testsuite/Makefile -external/Makefile -external/sax/Makefile -external/w3c_dom/Makefile ]) AC_CONFIG_COMMANDS([default], diff --git a/libjava/external/Makefile.am b/libjava/external/Makefile.am deleted file mode 100644 index 0031d6b7b00..00000000000 --- a/libjava/external/Makefile.am +++ /dev/null @@ -1,47 +0,0 @@ -## Input file for automake to generate the Makefile.in used by configure - -# May be used by various substitution variables. -gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER) - -SUBDIRS = sax w3c_dom - -# Work around what appears to be a GNU make bug handling MAKEFLAGS -# values defined in terms of make variables, as is the case for CC and -# friends when we are called from the top level Makefile. -AM_MAKEFLAGS = \ - "AR_FLAGS=$(AR_FLAGS)" \ - "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ - "CFLAGS=$(CFLAGS)" \ - "CXXFLAGS=$(CXXFLAGS)" \ - "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \ - "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \ - "INSTALL=$(INSTALL)" \ - "INSTALL_DATA=$(INSTALL_DATA)" \ - "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \ - "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \ - "LDFLAGS=$(LDFLAGS)" \ - "LIBCFLAGS=$(LIBCFLAGS)" \ - "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \ - "MAKE=$(MAKE)" \ - "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \ - "PICFLAG=$(PICFLAG)" \ - "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \ - "SHELL=$(SHELL)" \ - "EXPECT=$(EXPECT)" \ - "RUNTEST=$(RUNTEST)" \ - "RUNTESTFLAGS=$(RUNTESTFLAGS)" \ - "exec_prefix=$(exec_prefix)" \ - "infodir=$(infodir)" \ - "libdir=$(libdir)" \ - "prefix=$(prefix)" \ - "tooldir=$(tooldir)" \ - "AR=$(AR)" \ - "AS=$(AS)" \ - "CC=$(CC)" \ - "CXX=$(CXX)" \ - "LD=$(LD)" \ - "LIBCFLAGS=$(LIBCFLAGS)" \ - "NM=$(NM)" \ - "PICFLAG=$(PICFLAG)" \ - "RANLIB=$(RANLIB)" \ - "DESTDIR=$(DESTDIR)" diff --git a/libjava/external/Makefile.in b/libjava/external/Makefile.in deleted file mode 100644 index 9d88ebb64bc..00000000000 --- a/libjava/external/Makefile.in +++ /dev/null @@ -1,633 +0,0 @@ -# Makefile.in generated by automake 1.9.3 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. -# This Makefile.in 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. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = .. -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = external -DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ - $(top_srcdir)/../config/depstand.m4 \ - $(top_srcdir)/../config/gxx-include-dir.m4 \ - $(top_srcdir)/../config/iconv.m4 \ - $(top_srcdir)/../config/lcmessage.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)/pkg.m4 \ - $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/../config/no-executables.m4 \ - $(top_srcdir)/../libtool.m4 $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -CONFIG_HEADER = $(top_builddir)/include/config.h \ - $(top_builddir)/gcj/libgcj-config.h -CONFIG_CLEAN_FILES = -SOURCES = -DIST_SOURCES = -RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ - html-recursive info-recursive install-data-recursive \ - install-exec-recursive install-info-recursive \ - install-recursive installcheck-recursive installdirs-recursive \ - pdf-recursive ps-recursive uninstall-info-recursive \ - uninstall-recursive -ETAGS = etags -CTAGS = ctags -DIST_SUBDIRS = $(SUBDIRS) -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ -AMTAR = @AMTAR@ -AR = @AR@ -AS = @AS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BACKTRACESPEC = @BACKTRACESPEC@ -CAIRO_CFLAGS = @CAIRO_CFLAGS@ -CAIRO_LIBS = @CAIRO_LIBS@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CHECKREFSPEC = @CHECKREFSPEC@ -CLASSPATH_SEPARATOR = @CLASSPATH_SEPARATOR@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXCPP = @CXXCPP@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DIRLTDL = @DIRLTDL@ -DIVIDESPEC = @DIVIDESPEC@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXCEPTIONSPEC = @EXCEPTIONSPEC@ -EXEEXT = @EXEEXT@ -GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@ -GCDEPS = @GCDEPS@ -GCINCS = @GCINCS@ -GCJ = @GCJ@ -GCJDEPMODE = @GCJDEPMODE@ -GCJFLAGS = @GCJFLAGS@ -GCJH = @GCJH@ -GCJVERSION = @GCJVERSION@ -GCLIBS = @GCLIBS@ -GCSPEC = @GCSPEC@ -GCTESTSPEC = @GCTESTSPEC@ -GLIB_CFLAGS = @GLIB_CFLAGS@ -GLIB_LIBS = @GLIB_LIBS@ -GTK_AWT_FALSE = @GTK_AWT_FALSE@ -GTK_AWT_TRUE = @GTK_AWT_TRUE@ -GTK_CAIRO_FALSE = @GTK_CAIRO_FALSE@ -GTK_CAIRO_TRUE = @GTK_CAIRO_TRUE@ -GTK_CFLAGS = @GTK_CFLAGS@ -GTK_LIBS = @GTK_LIBS@ -HASH_SYNC_SPEC = @HASH_SYNC_SPEC@ -IEEESPEC = @IEEESPEC@ -INCLTDL = @INCLTDL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTERPRETER = @INTERPRETER@ -JAVA_HOME = @JAVA_HOME@ -JAVA_HOME_SET_FALSE = @JAVA_HOME_SET_FALSE@ -JAVA_HOME_SET_TRUE = @JAVA_HOME_SET_TRUE@ -JC1GCSPEC = @JC1GCSPEC@ -LDFLAGS = @LDFLAGS@ -LIBART_CFLAGS = @LIBART_CFLAGS@ -LIBART_LIBS = @LIBART_LIBS@ -LIBFFI = @LIBFFI@ -LIBFFIINCS = @LIBFFIINCS@ -LIBGCJDEBUG = @LIBGCJDEBUG@ -LIBGCJTESTSPEC = @LIBGCJTESTSPEC@ -LIBGCJ_CFLAGS = @LIBGCJ_CFLAGS@ -LIBGCJ_CXXFLAGS = @LIBGCJ_CXXFLAGS@ -LIBGCJ_JAVAFLAGS = @LIBGCJ_JAVAFLAGS@ -LIBGCJ_LD_SYMBOLIC = @LIBGCJ_LD_SYMBOLIC@ -LIBICONV = @LIBICONV@ -LIBLTDL = @LIBLTDL@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LN_S = @LN_S@ -LTLIBICONV = @LTLIBICONV@ -LTLIBOBJS = @LTLIBOBJS@ -MAINT = @MAINT@ -MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ -MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ -MAKEINFO = @MAKEINFO@ -NATIVE_FALSE = @NATIVE_FALSE@ -NATIVE_TRUE = @NATIVE_TRUE@ -NEEDS_DATA_START_FALSE = @NEEDS_DATA_START_FALSE@ -NEEDS_DATA_START_TRUE = @NEEDS_DATA_START_TRUE@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PANGOFT2_CFLAGS = @PANGOFT2_CFLAGS@ -PANGOFT2_LIBS = @PANGOFT2_LIBS@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PERL = @PERL@ -PKG_CONFIG = @PKG_CONFIG@ -PLATFORM_INNER_NAT_HDRS = @PLATFORM_INNER_NAT_HDRS@ -RANLIB = @RANLIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -SUPPLY_BACKTRACE_FALSE = @SUPPLY_BACKTRACE_FALSE@ -SUPPLY_BACKTRACE_TRUE = @SUPPLY_BACKTRACE_TRUE@ -SYSDEP_SOURCES = @SYSDEP_SOURCES@ -SYSTEMSPEC = @SYSTEMSPEC@ -SYS_ZLIBS = @SYS_ZLIBS@ -TESTSUBDIR_FALSE = @TESTSUBDIR_FALSE@ -TESTSUBDIR_TRUE = @TESTSUBDIR_TRUE@ -THREADCXXFLAGS = @THREADCXXFLAGS@ -THREADDEPS = @THREADDEPS@ -THREADINCS = @THREADINCS@ -THREADLDFLAGS = @THREADLDFLAGS@ -THREADLIBS = @THREADLIBS@ -THREADSPEC = @THREADSPEC@ -TOOLKIT = @TOOLKIT@ -USING_BOEHMGC_FALSE = @USING_BOEHMGC_FALSE@ -USING_BOEHMGC_TRUE = @USING_BOEHMGC_TRUE@ -USING_DARWIN_CRT_FALSE = @USING_DARWIN_CRT_FALSE@ -USING_DARWIN_CRT_TRUE = @USING_DARWIN_CRT_TRUE@ -USING_GCC_FALSE = @USING_GCC_FALSE@ -USING_GCC_TRUE = @USING_GCC_TRUE@ -USING_NOGC_FALSE = @USING_NOGC_FALSE@ -USING_NOGC_TRUE = @USING_NOGC_TRUE@ -USING_NO_THREADS_FALSE = @USING_NO_THREADS_FALSE@ -USING_NO_THREADS_TRUE = @USING_NO_THREADS_TRUE@ -USING_POSIX_PLATFORM_FALSE = @USING_POSIX_PLATFORM_FALSE@ -USING_POSIX_PLATFORM_TRUE = @USING_POSIX_PLATFORM_TRUE@ -USING_POSIX_THREADS_FALSE = @USING_POSIX_THREADS_FALSE@ -USING_POSIX_THREADS_TRUE = @USING_POSIX_THREADS_TRUE@ -USING_WIN32_PLATFORM_FALSE = @USING_WIN32_PLATFORM_FALSE@ -USING_WIN32_PLATFORM_TRUE = @USING_WIN32_PLATFORM_TRUE@ -USING_WIN32_THREADS_FALSE = @USING_WIN32_THREADS_FALSE@ -USING_WIN32_THREADS_TRUE = @USING_WIN32_THREADS_TRUE@ -VERSION = @VERSION@ -XLIB_AWT_FALSE = @XLIB_AWT_FALSE@ -XLIB_AWT_TRUE = @XLIB_AWT_TRUE@ -X_CFLAGS = @X_CFLAGS@ -X_EXTRA_LIBS = @X_EXTRA_LIBS@ -X_LIBS = @X_LIBS@ -X_PRE_LIBS = @X_PRE_LIBS@ -ZINCS = @ZINCS@ -ZIP = @ZIP@ -ZLIBS = @ZLIBS@ -ZLIBSPEC = @ZLIBSPEC@ -ZLIBTESTSPEC = @ZLIBTESTSPEC@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_AS = @ac_ct_AS@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_GCJ = @ac_ct_GCJ@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ -am__fastdepGCJ_FALSE = @am__fastdepGCJ_FALSE@ -am__fastdepGCJ_TRUE = @am__fastdepGCJ_TRUE@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_subdir = @build_subdir@ -build_vendor = @build_vendor@ -datadir = @datadir@ -exec_prefix = @exec_prefix@ -gxx_include_dir = @gxx_include_dir@ -here = @here@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_subdir = @host_subdir@ -host_vendor = @host_vendor@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -libgcj_basedir = @libgcj_basedir@ -libstdcxx_incdir = @libstdcxx_incdir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -mkinstalldirs = @mkinstalldirs@ -oldincludedir = @oldincludedir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -subdirs = @subdirs@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_noncanonical = @target_noncanonical@ -target_os = @target_os@ -target_subdir = @target_subdir@ -target_vendor = @target_vendor@ -toolexecdir = @toolexecdir@ -toolexeclibdir = @toolexeclibdir@ -toolexecmainlibdir = @toolexecmainlibdir@ - -# May be used by various substitution variables. -gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER) -SUBDIRS = sax w3c_dom - -# Work around what appears to be a GNU make bug handling MAKEFLAGS -# values defined in terms of make variables, as is the case for CC and -# friends when we are called from the top level Makefile. -AM_MAKEFLAGS = \ - "AR_FLAGS=$(AR_FLAGS)" \ - "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ - "CFLAGS=$(CFLAGS)" \ - "CXXFLAGS=$(CXXFLAGS)" \ - "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \ - "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \ - "INSTALL=$(INSTALL)" \ - "INSTALL_DATA=$(INSTALL_DATA)" \ - "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \ - "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \ - "LDFLAGS=$(LDFLAGS)" \ - "LIBCFLAGS=$(LIBCFLAGS)" \ - "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \ - "MAKE=$(MAKE)" \ - "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \ - "PICFLAG=$(PICFLAG)" \ - "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \ - "SHELL=$(SHELL)" \ - "EXPECT=$(EXPECT)" \ - "RUNTEST=$(RUNTEST)" \ - "RUNTESTFLAGS=$(RUNTESTFLAGS)" \ - "exec_prefix=$(exec_prefix)" \ - "infodir=$(infodir)" \ - "libdir=$(libdir)" \ - "prefix=$(prefix)" \ - "tooldir=$(tooldir)" \ - "AR=$(AR)" \ - "AS=$(AS)" \ - "CC=$(CC)" \ - "CXX=$(CXX)" \ - "LD=$(LD)" \ - "LIBCFLAGS=$(LIBCFLAGS)" \ - "NM=$(NM)" \ - "PICFLAG=$(PICFLAG)" \ - "RANLIB=$(RANLIB)" \ - "DESTDIR=$(DESTDIR)" - -all: all-recursive - -.SUFFIXES: -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu external/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu external/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -distclean-libtool: - -rm -f libtool -uninstall-info-am: - -# This directory's subdirectories are mostly independent; you can cd -# into them and run `make' without going through this Makefile. -# To change the values of `make' variables: instead of editing Makefiles, -# (1) if the variable is set in `config.status', edit `config.status' -# (which will cause the Makefiles to be regenerated when you run `make'); -# (2) otherwise, pass the desired values on the `make' command line. -$(RECURSIVE_TARGETS): - @set fnord $$MAKEFLAGS; amf=$$2; \ - dot_seen=no; \ - target=`echo $@ | sed s/-recursive//`; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - dot_seen=yes; \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ - done; \ - if test "$$dot_seen" = "no"; then \ - $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ - fi; test -z "$$fail" - -mostlyclean-recursive clean-recursive distclean-recursive \ -maintainer-clean-recursive: - @set fnord $$MAKEFLAGS; amf=$$2; \ - dot_seen=no; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - rev=''; for subdir in $$list; do \ - if test "$$subdir" = "."; then :; else \ - rev="$$subdir $$rev"; \ - fi; \ - done; \ - rev="$$rev ."; \ - target=`echo $@ | sed s/-recursive//`; \ - for subdir in $$rev; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ - done && test -z "$$fail" -tags-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ - done -ctags-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ - done - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ - include_option=--etags-include; \ - empty_fix=.; \ - else \ - include_option=--include; \ - empty_fix=; \ - fi; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test ! -f $$subdir/TAGS || \ - tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ - fi; \ - done; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ - fi -ctags: CTAGS -CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ - if test -d $$d/$$file; then \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ - fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ - else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ - || exit 1; \ - fi; \ - done - list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test -d "$(distdir)/$$subdir" \ - || $(mkdir_p) "$(distdir)/$$subdir" \ - || exit 1; \ - distdir=`$(am__cd) $(distdir) && pwd`; \ - top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ - (cd $$subdir && \ - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$top_distdir" \ - distdir="$$distdir/$$subdir" \ - distdir) \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-recursive -all-am: Makefile -installdirs: installdirs-recursive -installdirs-am: -install: install-recursive -install-exec: install-exec-recursive -install-data: install-data-recursive -uninstall: uninstall-recursive - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-recursive -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-recursive - -clean-am: clean-generic clean-libtool mostlyclean-am - -distclean: distclean-recursive - -rm -f Makefile -distclean-am: clean-am distclean-generic distclean-libtool \ - distclean-tags - -dvi: dvi-recursive - -dvi-am: - -html: html-recursive - -info: info-recursive - -info-am: - -install-data-am: - -install-exec-am: - -install-info: install-info-recursive - -install-man: - -installcheck-am: - -maintainer-clean: maintainer-clean-recursive - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-recursive - -mostlyclean-am: mostlyclean-generic mostlyclean-libtool - -pdf: pdf-recursive - -pdf-am: - -ps: ps-recursive - -ps-am: - -uninstall-am: uninstall-info-am - -uninstall-info: uninstall-info-recursive - -.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \ - clean clean-generic clean-libtool clean-recursive ctags \ - ctags-recursive distclean distclean-generic distclean-libtool \ - distclean-recursive distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-exec install-exec-am install-info \ - install-info-am install-man install-strip installcheck \ - installcheck-am installdirs installdirs-am maintainer-clean \ - maintainer-clean-generic maintainer-clean-recursive \ - mostlyclean mostlyclean-generic mostlyclean-libtool \ - mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \ - uninstall uninstall-am uninstall-info-am - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/libjava/external/README b/libjava/external/README deleted file mode 100644 index d6d6491d62b..00000000000 --- a/libjava/external/README +++ /dev/null @@ -1,3 +0,0 @@ -This directory contains libraries maintained externally to GNU Classpath. - -See the README files in the subdirectories for more information. diff --git a/libjava/external/sax/Makefile.am b/libjava/external/sax/Makefile.am deleted file mode 100644 index 08b82e5b826..00000000000 --- a/libjava/external/sax/Makefile.am +++ /dev/null @@ -1,76 +0,0 @@ -## Process this file with automake to produce Makefile.in. - -AUTOMAKE_OPTIONS = foreign subdir-objects - -# May be used by various substitution variables. -gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER) - -## The compiler with whatever flags we want for both -c and -C -## compiles. -GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fclasspath= -fbootclasspath=$(BOOTCLASSPATH) - -BOOTCLASSPATH = $(here)'$(CLASSPATH_SEPARATOR)'$(srcdir)'$(CLASSPATH_SEPARATOR)'$(top_srcdir)'$(CLASSPATH_SEPARATOR)'$(top_builddir) - -AM_GCJFLAGS = \ - -B$(top_builddir) \ - @LIBGCJ_JAVAFLAGS@ \ - -fclasspath= -fbootclasspath=$(BOOTCLASSPATH) \ - --encoding=UTF-8 \ - -Wno-deprecated - -BUILT_SOURCES = classes.stamp - -sax.jar: classes.stamp - find org -name '*.class' -print | $(ZIP) -cfME@ $@ - -classes.stamp: $(source_files) - here=`pwd`; cd $(srcdir); \ - $(GCJ_WITH_FLAGS) -C -d $$here $(source_files) - echo > classes.stamp - -mostlyclean-local: - -find . -name '*.class' | xargs rm - -rm classes.stamp sax.jar - -noinst_LTLIBRARIES = libsax-gcj.la - -libsax_gcj_la_SOURCES = sax.jar -libsax_gcj_la_GCJFLAGS = -findirect-dispatch -fbootstrap-classes $(AM_GCJFLAGS) - -source_files = \ -org/xml/sax/SAXNotSupportedException.java \ -org/xml/sax/helpers/NamespaceSupport.java \ -org/xml/sax/helpers/AttributesImpl.java \ -org/xml/sax/helpers/LocatorImpl.java \ -org/xml/sax/helpers/DefaultHandler.java \ -org/xml/sax/helpers/AttributeListImpl.java \ -org/xml/sax/helpers/ParserFactory.java \ -org/xml/sax/helpers/NewInstance.java \ -org/xml/sax/helpers/XMLFilterImpl.java \ -org/xml/sax/helpers/ParserAdapter.java \ -org/xml/sax/helpers/XMLReaderAdapter.java \ -org/xml/sax/helpers/XMLReaderFactory.java \ -org/xml/sax/HandlerBase.java \ -org/xml/sax/SAXException.java \ -org/xml/sax/ContentHandler.java \ -org/xml/sax/SAXNotRecognizedException.java \ -org/xml/sax/ErrorHandler.java \ -org/xml/sax/AttributeList.java \ -org/xml/sax/Locator.java \ -org/xml/sax/Attributes.java \ -org/xml/sax/SAXParseException.java \ -org/xml/sax/XMLFilter.java \ -org/xml/sax/EntityResolver.java \ -org/xml/sax/XMLReader.java \ -org/xml/sax/ext/Locator2.java \ -org/xml/sax/ext/LexicalHandler.java \ -org/xml/sax/ext/Attributes2Impl.java \ -org/xml/sax/ext/DeclHandler.java \ -org/xml/sax/ext/Attributes2.java \ -org/xml/sax/ext/EntityResolver2.java \ -org/xml/sax/ext/Locator2Impl.java \ -org/xml/sax/ext/DefaultHandler2.java \ -org/xml/sax/InputSource.java \ -org/xml/sax/DocumentHandler.java \ -org/xml/sax/DTDHandler.java \ -org/xml/sax/Parser.java diff --git a/libjava/external/sax/Makefile.in b/libjava/external/sax/Makefile.in deleted file mode 100644 index 18c8cf552c0..00000000000 --- a/libjava/external/sax/Makefile.in +++ /dev/null @@ -1,631 +0,0 @@ -# Makefile.in generated by automake 1.9.3 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. -# This Makefile.in 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. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -SOURCES = $(libsax_gcj_la_SOURCES) - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = ../.. -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = external/sax -DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ - $(top_srcdir)/../config/depstand.m4 \ - $(top_srcdir)/../config/gxx-include-dir.m4 \ - $(top_srcdir)/../config/iconv.m4 \ - $(top_srcdir)/../config/lcmessage.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)/pkg.m4 \ - $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/../config/no-executables.m4 \ - $(top_srcdir)/../libtool.m4 $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -CONFIG_HEADER = $(top_builddir)/include/config.h \ - $(top_builddir)/gcj/libgcj-config.h -CONFIG_CLEAN_FILES = -LTLIBRARIES = $(noinst_LTLIBRARIES) -libsax_gcj_la_LIBADD = -am_libsax_gcj_la_OBJECTS = libsax_gcj_la-sax.lo -libsax_gcj_la_OBJECTS = $(am_libsax_gcj_la_OBJECTS) -DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include -I$(top_builddir)/gcj -depcomp = $(SHELL) $(top_srcdir)/../depcomp -am__depfiles_maybe = depfiles -GCJCOMPILE = $(GCJ) $(AM_GCJFLAGS) $(GCJFLAGS) -LTGCJCOMPILE = $(LIBTOOL) --mode=compile $(GCJ) $(AM_GCJFLAGS) \ - $(GCJFLAGS) -GCJLD = $(GCJ) -GCJLINK = $(LIBTOOL) --mode=link $(GCJLD) $(AM_GCJFLAGS) $(GCJFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -SOURCES = $(libsax_gcj_la_SOURCES) -DIST_SOURCES = $(libsax_gcj_la_SOURCES) -ETAGS = etags -CTAGS = ctags -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ -AMTAR = @AMTAR@ -AR = @AR@ -AS = @AS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BACKTRACESPEC = @BACKTRACESPEC@ -CAIRO_CFLAGS = @CAIRO_CFLAGS@ -CAIRO_LIBS = @CAIRO_LIBS@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CHECKREFSPEC = @CHECKREFSPEC@ -CLASSPATH_SEPARATOR = @CLASSPATH_SEPARATOR@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXCPP = @CXXCPP@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DIRLTDL = @DIRLTDL@ -DIVIDESPEC = @DIVIDESPEC@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXCEPTIONSPEC = @EXCEPTIONSPEC@ -EXEEXT = @EXEEXT@ -GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@ -GCDEPS = @GCDEPS@ -GCINCS = @GCINCS@ -GCJ = @GCJ@ -GCJDEPMODE = @GCJDEPMODE@ -GCJFLAGS = @GCJFLAGS@ -GCJH = @GCJH@ -GCJVERSION = @GCJVERSION@ -GCLIBS = @GCLIBS@ -GCSPEC = @GCSPEC@ -GCTESTSPEC = @GCTESTSPEC@ -GLIB_CFLAGS = @GLIB_CFLAGS@ -GLIB_LIBS = @GLIB_LIBS@ -GTK_AWT_FALSE = @GTK_AWT_FALSE@ -GTK_AWT_TRUE = @GTK_AWT_TRUE@ -GTK_CAIRO_FALSE = @GTK_CAIRO_FALSE@ -GTK_CAIRO_TRUE = @GTK_CAIRO_TRUE@ -GTK_CFLAGS = @GTK_CFLAGS@ -GTK_LIBS = @GTK_LIBS@ -HASH_SYNC_SPEC = @HASH_SYNC_SPEC@ -IEEESPEC = @IEEESPEC@ -INCLTDL = @INCLTDL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTERPRETER = @INTERPRETER@ -JAVA_HOME = @JAVA_HOME@ -JAVA_HOME_SET_FALSE = @JAVA_HOME_SET_FALSE@ -JAVA_HOME_SET_TRUE = @JAVA_HOME_SET_TRUE@ -JC1GCSPEC = @JC1GCSPEC@ -LDFLAGS = @LDFLAGS@ -LIBART_CFLAGS = @LIBART_CFLAGS@ -LIBART_LIBS = @LIBART_LIBS@ -LIBFFI = @LIBFFI@ -LIBFFIINCS = @LIBFFIINCS@ -LIBGCJDEBUG = @LIBGCJDEBUG@ -LIBGCJTESTSPEC = @LIBGCJTESTSPEC@ -LIBGCJ_CFLAGS = @LIBGCJ_CFLAGS@ -LIBGCJ_CXXFLAGS = @LIBGCJ_CXXFLAGS@ -LIBGCJ_JAVAFLAGS = @LIBGCJ_JAVAFLAGS@ -LIBGCJ_LD_SYMBOLIC = @LIBGCJ_LD_SYMBOLIC@ -LIBICONV = @LIBICONV@ -LIBLTDL = @LIBLTDL@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LN_S = @LN_S@ -LTLIBICONV = @LTLIBICONV@ -LTLIBOBJS = @LTLIBOBJS@ -MAINT = @MAINT@ -MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ -MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ -MAKEINFO = @MAKEINFO@ -NATIVE_FALSE = @NATIVE_FALSE@ -NATIVE_TRUE = @NATIVE_TRUE@ -NEEDS_DATA_START_FALSE = @NEEDS_DATA_START_FALSE@ -NEEDS_DATA_START_TRUE = @NEEDS_DATA_START_TRUE@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PANGOFT2_CFLAGS = @PANGOFT2_CFLAGS@ -PANGOFT2_LIBS = @PANGOFT2_LIBS@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PERL = @PERL@ -PKG_CONFIG = @PKG_CONFIG@ -PLATFORM_INNER_NAT_HDRS = @PLATFORM_INNER_NAT_HDRS@ -RANLIB = @RANLIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -SUPPLY_BACKTRACE_FALSE = @SUPPLY_BACKTRACE_FALSE@ -SUPPLY_BACKTRACE_TRUE = @SUPPLY_BACKTRACE_TRUE@ -SYSDEP_SOURCES = @SYSDEP_SOURCES@ -SYSTEMSPEC = @SYSTEMSPEC@ -SYS_ZLIBS = @SYS_ZLIBS@ -TESTSUBDIR_FALSE = @TESTSUBDIR_FALSE@ -TESTSUBDIR_TRUE = @TESTSUBDIR_TRUE@ -THREADCXXFLAGS = @THREADCXXFLAGS@ -THREADDEPS = @THREADDEPS@ -THREADINCS = @THREADINCS@ -THREADLDFLAGS = @THREADLDFLAGS@ -THREADLIBS = @THREADLIBS@ -THREADSPEC = @THREADSPEC@ -TOOLKIT = @TOOLKIT@ -USING_BOEHMGC_FALSE = @USING_BOEHMGC_FALSE@ -USING_BOEHMGC_TRUE = @USING_BOEHMGC_TRUE@ -USING_DARWIN_CRT_FALSE = @USING_DARWIN_CRT_FALSE@ -USING_DARWIN_CRT_TRUE = @USING_DARWIN_CRT_TRUE@ -USING_GCC_FALSE = @USING_GCC_FALSE@ -USING_GCC_TRUE = @USING_GCC_TRUE@ -USING_NOGC_FALSE = @USING_NOGC_FALSE@ -USING_NOGC_TRUE = @USING_NOGC_TRUE@ -USING_NO_THREADS_FALSE = @USING_NO_THREADS_FALSE@ -USING_NO_THREADS_TRUE = @USING_NO_THREADS_TRUE@ -USING_POSIX_PLATFORM_FALSE = @USING_POSIX_PLATFORM_FALSE@ -USING_POSIX_PLATFORM_TRUE = @USING_POSIX_PLATFORM_TRUE@ -USING_POSIX_THREADS_FALSE = @USING_POSIX_THREADS_FALSE@ -USING_POSIX_THREADS_TRUE = @USING_POSIX_THREADS_TRUE@ -USING_WIN32_PLATFORM_FALSE = @USING_WIN32_PLATFORM_FALSE@ -USING_WIN32_PLATFORM_TRUE = @USING_WIN32_PLATFORM_TRUE@ -USING_WIN32_THREADS_FALSE = @USING_WIN32_THREADS_FALSE@ -USING_WIN32_THREADS_TRUE = @USING_WIN32_THREADS_TRUE@ -VERSION = @VERSION@ -XLIB_AWT_FALSE = @XLIB_AWT_FALSE@ -XLIB_AWT_TRUE = @XLIB_AWT_TRUE@ -X_CFLAGS = @X_CFLAGS@ -X_EXTRA_LIBS = @X_EXTRA_LIBS@ -X_LIBS = @X_LIBS@ -X_PRE_LIBS = @X_PRE_LIBS@ -ZINCS = @ZINCS@ -ZIP = @ZIP@ -ZLIBS = @ZLIBS@ -ZLIBSPEC = @ZLIBSPEC@ -ZLIBTESTSPEC = @ZLIBTESTSPEC@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_AS = @ac_ct_AS@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_GCJ = @ac_ct_GCJ@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ -am__fastdepGCJ_FALSE = @am__fastdepGCJ_FALSE@ -am__fastdepGCJ_TRUE = @am__fastdepGCJ_TRUE@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_subdir = @build_subdir@ -build_vendor = @build_vendor@ -datadir = @datadir@ -exec_prefix = @exec_prefix@ -gxx_include_dir = @gxx_include_dir@ -here = @here@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_subdir = @host_subdir@ -host_vendor = @host_vendor@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -libgcj_basedir = @libgcj_basedir@ -libstdcxx_incdir = @libstdcxx_incdir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -mkinstalldirs = @mkinstalldirs@ -oldincludedir = @oldincludedir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -subdirs = @subdirs@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_noncanonical = @target_noncanonical@ -target_os = @target_os@ -target_subdir = @target_subdir@ -target_vendor = @target_vendor@ -toolexecdir = @toolexecdir@ -toolexeclibdir = @toolexeclibdir@ -toolexecmainlibdir = @toolexecmainlibdir@ -AUTOMAKE_OPTIONS = foreign subdir-objects - -# May be used by various substitution variables. -gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER) -GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fclasspath= -fbootclasspath=$(BOOTCLASSPATH) -BOOTCLASSPATH = $(here)'$(CLASSPATH_SEPARATOR)'$(srcdir)'$(CLASSPATH_SEPARATOR)'$(top_srcdir)'$(CLASSPATH_SEPARATOR)'$(top_builddir) -AM_GCJFLAGS = \ - -B$(top_builddir) \ - @LIBGCJ_JAVAFLAGS@ \ - -fclasspath= -fbootclasspath=$(BOOTCLASSPATH) \ - --encoding=UTF-8 \ - -Wno-deprecated - -BUILT_SOURCES = classes.stamp -noinst_LTLIBRARIES = libsax-gcj.la -libsax_gcj_la_SOURCES = sax.jar -libsax_gcj_la_GCJFLAGS = -findirect-dispatch -fbootstrap-classes $(AM_GCJFLAGS) -source_files = \ -org/xml/sax/SAXNotSupportedException.java \ -org/xml/sax/helpers/NamespaceSupport.java \ -org/xml/sax/helpers/AttributesImpl.java \ -org/xml/sax/helpers/LocatorImpl.java \ -org/xml/sax/helpers/DefaultHandler.java \ -org/xml/sax/helpers/AttributeListImpl.java \ -org/xml/sax/helpers/ParserFactory.java \ -org/xml/sax/helpers/NewInstance.java \ -org/xml/sax/helpers/XMLFilterImpl.java \ -org/xml/sax/helpers/ParserAdapter.java \ -org/xml/sax/helpers/XMLReaderAdapter.java \ -org/xml/sax/helpers/XMLReaderFactory.java \ -org/xml/sax/HandlerBase.java \ -org/xml/sax/SAXException.java \ -org/xml/sax/ContentHandler.java \ -org/xml/sax/SAXNotRecognizedException.java \ -org/xml/sax/ErrorHandler.java \ -org/xml/sax/AttributeList.java \ -org/xml/sax/Locator.java \ -org/xml/sax/Attributes.java \ -org/xml/sax/SAXParseException.java \ -org/xml/sax/XMLFilter.java \ -org/xml/sax/EntityResolver.java \ -org/xml/sax/XMLReader.java \ -org/xml/sax/ext/Locator2.java \ -org/xml/sax/ext/LexicalHandler.java \ -org/xml/sax/ext/Attributes2Impl.java \ -org/xml/sax/ext/DeclHandler.java \ -org/xml/sax/ext/Attributes2.java \ -org/xml/sax/ext/EntityResolver2.java \ -org/xml/sax/ext/Locator2Impl.java \ -org/xml/sax/ext/DefaultHandler2.java \ -org/xml/sax/InputSource.java \ -org/xml/sax/DocumentHandler.java \ -org/xml/sax/DTDHandler.java \ -org/xml/sax/Parser.java - -all: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) all-am - -.SUFFIXES: -.SUFFIXES: .jar .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign external/sax/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --foreign external/sax/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -clean-noinstLTLIBRARIES: - -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) - @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ - dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ - test "$$dir" != "$$p" || dir=.; \ - echo "rm -f \"$${dir}/so_locations\""; \ - rm -f "$${dir}/so_locations"; \ - done -libsax-gcj.la: $(libsax_gcj_la_OBJECTS) $(libsax_gcj_la_DEPENDENCIES) - $(GCJLINK) $(libsax_gcj_la_LDFLAGS) $(libsax_gcj_la_OBJECTS) $(libsax_gcj_la_LIBADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libsax_gcj_la-sax.Plo@am__quote@ - -.jar.o: -@am__fastdepGCJ_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`; \ -@am__fastdepGCJ_TRUE@ if $(GCJCOMPILE) -MT $@ -MD -MP -MF "$$depbase.Tpo" -c -o $@ $<; \ -@am__fastdepGCJ_TRUE@ then mv -f "$$depbase.Tpo" "$$depbase.Po"; else rm -f "$$depbase.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepGCJ_FALSE@ $(GCJCOMPILE) -c -o $@ $< - -.jar.obj: -@am__fastdepGCJ_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`; \ -@am__fastdepGCJ_TRUE@ if $(GCJCOMPILE) -MT $@ -MD -MP -MF "$$depbase.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ -@am__fastdepGCJ_TRUE@ then mv -f "$$depbase.Tpo" "$$depbase.Po"; else rm -f "$$depbase.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepGCJ_FALSE@ $(GCJCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` - -.jar.lo: -@am__fastdepGCJ_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`; \ -@am__fastdepGCJ_TRUE@ if $(LTGCJCOMPILE) -MT $@ -MD -MP -MF "$$depbase.Tpo" -c -o $@ $<; \ -@am__fastdepGCJ_TRUE@ then mv -f "$$depbase.Tpo" "$$depbase.Plo"; else rm -f "$$depbase.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepGCJ_FALSE@ $(LTGCJCOMPILE) -c -o $@ $< - -libsax_gcj_la-sax.lo: sax.jar -@am__fastdepGCJ_TRUE@ if $(LIBTOOL) --mode=compile $(GCJ) $(libsax_gcj_la_GCJFLAGS) $(GCJFLAGS) -MT libsax_gcj_la-sax.lo -MD -MP -MF "$(DEPDIR)/libsax_gcj_la-sax.Tpo" -c -o libsax_gcj_la-sax.lo `test -f 'sax.jar' || echo '$(srcdir)/'`sax.jar; \ -@am__fastdepGCJ_TRUE@ then mv -f "$(DEPDIR)/libsax_gcj_la-sax.Tpo" "$(DEPDIR)/libsax_gcj_la-sax.Plo"; else rm -f "$(DEPDIR)/libsax_gcj_la-sax.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ source='sax.jar' object='libsax_gcj_la-sax.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepGCJ_FALSE@ $(LIBTOOL) --mode=compile $(GCJ) $(libsax_gcj_la_GCJFLAGS) $(GCJFLAGS) -c -o libsax_gcj_la-sax.lo `test -f 'sax.jar' || echo '$(srcdir)/'`sax.jar - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -distclean-libtool: - -rm -f libtool -uninstall-info-am: - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ - fi -ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ - if test -d $$d/$$file; then \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ - fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ - else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) check-am -all-am: Makefile $(LTLIBRARIES) -installdirs: -install: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." - -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) -clean: clean-am - -clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ - mostlyclean-am - -distclean: distclean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-libtool distclean-tags - -dvi: dvi-am - -dvi-am: - -html: html-am - -info: info-am - -info-am: - -install-data-am: - -install-exec-am: - -install-info: install-info-am - -install-man: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool mostlyclean-local - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-info-am - -.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES ctags distclean \ - distclean-compile distclean-generic distclean-libtool \ - distclean-tags distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-exec \ - install-exec-am install-info install-info-am install-man \ - install-strip installcheck installcheck-am installdirs \ - maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ - mostlyclean-local pdf pdf-am ps ps-am tags uninstall \ - uninstall-am uninstall-info-am - - -sax.jar: classes.stamp - find org -name '*.class' -print | $(ZIP) -cfME@ $@ - -classes.stamp: $(source_files) - here=`pwd`; cd $(srcdir); \ - $(GCJ_WITH_FLAGS) -C -d $$here $(source_files) - echo > classes.stamp - -mostlyclean-local: - -find . -name '*.class' | xargs rm - -rm classes.stamp sax.jar -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/libjava/external/sax/README b/libjava/external/sax/README deleted file mode 100644 index 4b39d236423..00000000000 --- a/libjava/external/sax/README +++ /dev/null @@ -1,71 +0,0 @@ -Simple API for XML (SAX), a standard application interface for processing XML. -SAX is not maintained as part of GNU Classpath, but is used with GNU Classpath. - -Last imported version sax2r3 final from http://www.saxproject.org/ - -All files are distributed with the following short notice: - - NO WARRANTY! This class is in the Public Domain. - -The www.saxproject.org explains: - - Copyright Status - - SAX is free! - - In fact, it's not possible to own a license to SAX, since it's been - placed in the public domain. - - No Warranty - - Because SAX is released to the public domain, there is no warranty - for the design or for the software implementation, to the extent - permitted by applicable law. Except when otherwise stated in writing - the copyright holders and/or other parties provide SAX "as is" without - warranty of any kind, either expressed or implied, including, but not - limited to, the implied warranties of merchantability and fitness for - a particular purpose. The entire risk as to the quality and - performance of SAX is with you. Should SAX prove defective, you assume - the cost of all necessary servicing, repair or correction. - - In no event unless required by applicable law or agreed to in - writing will any copyright holder, or any other party who may modify - and/or redistribute SAX, be liable to you for damages, including any - general, special, incidental or consequential damages arising out of - the use or inability to use SAX (including but not limited to loss of - data or data being rendered inaccurate or losses sustained by you or - third parties or a failure of the SAX to operate with any other - programs), even if such holder or other party has been advised of the - possibility of such damages. - - Copyright Disclaimers - - This page includes statements to that effect by David Megginson, who - would have been able to claim copyright for the original work. - - SAX 1.0 - - Version 1.0 of the Simple API for XML (SAX), created collectively by - the membership of the XML-DEV mailing list, is hereby released into - the public domain. - - No one owns SAX: you may use it freely in both commercial and - non-commercial applications, bundle it with your software - distribution, include it on a CD-ROM, list the source code in a book, - mirror the documentation at your own web site, or use it in any other - way you see fit. - - David Megginson, sax@megginson.com - 1998-05-11 - - SAX 2.0 - - I hereby abandon any property rights to SAX 2.0 (the Simple API for - XML), and release all of the SAX 2.0 source code, compiled code, and - documentation contained in this distribution into the Public - Domain. SAX comes with NO WARRANTY or guarantee of fitness for any - purpose. - - David Megginson, david@megginson.com - 2000-05-05 - diff --git a/libjava/external/sax/org/xml/sax/AttributeList.java b/libjava/external/sax/org/xml/sax/AttributeList.java deleted file mode 100644 index 7d8e9beec37..00000000000 --- a/libjava/external/sax/org/xml/sax/AttributeList.java +++ /dev/null @@ -1,193 +0,0 @@ -// SAX Attribute List Interface. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: AttributeList.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - -/** - * Interface for an element's attribute specifications. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This is the original SAX1 interface for reporting an element's - * attributes. Unlike the new {@link org.xml.sax.Attributes Attributes} - * interface, it does not support Namespace-related information.

- * - *

When an attribute list is supplied as part of a - * {@link org.xml.sax.DocumentHandler#startElement startElement} - * event, the list will return valid results only during the - * scope of the event; once the event handler returns control - * to the parser, the attribute list is invalid. To save a - * persistent copy of the attribute list, use the SAX1 - * {@link org.xml.sax.helpers.AttributeListImpl AttributeListImpl} - * helper class.

- * - *

An attribute list includes only attributes that have been - * specified or defaulted: #IMPLIED attributes will not be included.

- * - *

There are two ways for the SAX application to obtain information - * from the AttributeList. First, it can iterate through the entire - * list:

- * - *
- * public void startElement (String name, AttributeList atts) {
- *   for (int i = 0; i < atts.getLength(); i++) {
- *     String name = atts.getName(i);
- *     String type = atts.getType(i);
- *     String value = atts.getValue(i);
- *     [...]
- *   }
- * }
- * 
- * - *

(Note that the result of getLength() will be zero if there - * are no attributes.) - * - *

As an alternative, the application can request the value or - * type of specific attributes:

- * - *
- * public void startElement (String name, AttributeList atts) {
- *   String identifier = atts.getValue("id");
- *   String label = atts.getValue("label");
- *   [...]
- * }
- * 
- * - * @deprecated This interface has been replaced by the SAX2 - * {@link org.xml.sax.Attributes Attributes} - * interface, which includes Namespace support. - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.DocumentHandler#startElement startElement - * @see org.xml.sax.helpers.AttributeListImpl AttributeListImpl - */ -public interface AttributeList { - - - //////////////////////////////////////////////////////////////////// - // Iteration methods. - //////////////////////////////////////////////////////////////////// - - - /** - * Return the number of attributes in this list. - * - *

The SAX parser may provide attributes in any - * arbitrary order, regardless of the order in which they were - * declared or specified. The number of attributes may be - * zero.

- * - * @return The number of attributes in the list. - */ - public abstract int getLength (); - - - /** - * Return the name of an attribute in this list (by position). - * - *

The names must be unique: the SAX parser shall not include the - * same attribute twice. Attributes without values (those declared - * #IMPLIED without a value specified in the start tag) will be - * omitted from the list.

- * - *

If the attribute name has a namespace prefix, the prefix - * will still be attached.

- * - * @param i The index of the attribute in the list (starting at 0). - * @return The name of the indexed attribute, or null - * if the index is out of range. - * @see #getLength - */ - public abstract String getName (int i); - - - /** - * Return the type of an attribute in the list (by position). - * - *

The attribute type is one of the strings "CDATA", "ID", - * "IDREF", "IDREFS", "NMTOKEN", "NMTOKENS", "ENTITY", "ENTITIES", - * or "NOTATION" (always in upper case).

- * - *

If the parser has not read a declaration for the attribute, - * or if the parser does not report attribute types, then it must - * return the value "CDATA" as stated in the XML 1.0 Recommentation - * (clause 3.3.3, "Attribute-Value Normalization").

- * - *

For an enumerated attribute that is not a notation, the - * parser will report the type as "NMTOKEN".

- * - * @param i The index of the attribute in the list (starting at 0). - * @return The attribute type as a string, or - * null if the index is out of range. - * @see #getLength - * @see #getType(java.lang.String) - */ - public abstract String getType (int i); - - - /** - * Return the value of an attribute in the list (by position). - * - *

If the attribute value is a list of tokens (IDREFS, - * ENTITIES, or NMTOKENS), the tokens will be concatenated - * into a single string separated by whitespace.

- * - * @param i The index of the attribute in the list (starting at 0). - * @return The attribute value as a string, or - * null if the index is out of range. - * @see #getLength - * @see #getValue(java.lang.String) - */ - public abstract String getValue (int i); - - - - //////////////////////////////////////////////////////////////////// - // Lookup methods. - //////////////////////////////////////////////////////////////////// - - - /** - * Return the type of an attribute in the list (by name). - * - *

The return value is the same as the return value for - * getType(int).

- * - *

If the attribute name has a namespace prefix in the document, - * the application must include the prefix here.

- * - * @param name The name of the attribute. - * @return The attribute type as a string, or null if no - * such attribute exists. - * @see #getType(int) - */ - public abstract String getType (String name); - - - /** - * Return the value of an attribute in the list (by name). - * - *

The return value is the same as the return value for - * getValue(int).

- * - *

If the attribute name has a namespace prefix in the document, - * the application must include the prefix here.

- * - * @param name the name of the attribute to return - * @return The attribute value as a string, or null if - * no such attribute exists. - * @see #getValue(int) - */ - public abstract String getValue (String name); - -} - -// end of AttributeList.java diff --git a/libjava/external/sax/org/xml/sax/Attributes.java b/libjava/external/sax/org/xml/sax/Attributes.java deleted file mode 100644 index 51735908936..00000000000 --- a/libjava/external/sax/org/xml/sax/Attributes.java +++ /dev/null @@ -1,257 +0,0 @@ -// Attributes.java - attribute list with Namespace support -// http://www.saxproject.org -// Written by David Megginson -// NO WARRANTY! This class is in the public domain. -// $Id: Attributes.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - - -/** - * Interface for a list of XML attributes. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This interface allows access to a list of attributes in - * three different ways:

- * - *
    - *
  1. by attribute index;
  2. - *
  3. by Namespace-qualified name; or
  4. - *
  5. by qualified (prefixed) name.
  6. - *
- * - *

The list will not contain attributes that were declared - * #IMPLIED but not specified in the start tag. It will also not - * contain attributes used as Namespace declarations (xmlns*) unless - * the http://xml.org/sax/features/namespace-prefixes - * feature is set to true (it is false by - * default). - * Because SAX2 conforms to the original "Namespaces in XML" - * recommendation, it normally does not - * give namespace declaration attributes a namespace URI. - *

- * - *

Some SAX2 parsers may support using an optional feature flag - * (http://xml.org/sax/features/xmlns-uris) to request - * that those attributes be given URIs, conforming to a later - * backwards-incompatible revision of that recommendation. (The - * attribute's "local name" will be the prefix, or "xmlns" when - * defining a default element namespace.) For portability, handler - * code should always resolve that conflict, rather than requiring - * parsers that can change the setting of that feature flag.

- * - *

If the namespace-prefixes feature (see above) is - * false, access by qualified name may not be available; if - * the http://xml.org/sax/features/namespaces feature is - * false, access by Namespace-qualified names may not be - * available.

- * - *

This interface replaces the now-deprecated SAX1 {@link - * org.xml.sax.AttributeList AttributeList} interface, which does not - * contain Namespace support. In addition to Namespace support, it - * adds the getIndex methods (below).

- * - *

The order of attributes in the list is unspecified, and will - * vary from implementation to implementation.

- * - * @since SAX 2.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.helpers.AttributesImpl - * @see org.xml.sax.ext.DeclHandler#attributeDecl - */ -public interface Attributes -{ - - - //////////////////////////////////////////////////////////////////// - // Indexed access. - //////////////////////////////////////////////////////////////////// - - - /** - * Return the number of attributes in the list. - * - *

Once you know the number of attributes, you can iterate - * through the list.

- * - * @return The number of attributes in the list. - * @see #getURI(int) - * @see #getLocalName(int) - * @see #getQName(int) - * @see #getType(int) - * @see #getValue(int) - */ - public abstract int getLength (); - - - /** - * Look up an attribute's Namespace URI by index. - * - * @param index The attribute index (zero-based). - * @return The Namespace URI, or the empty string if none - * is available, or null if the index is out of - * range. - * @see #getLength - */ - public abstract String getURI (int index); - - - /** - * Look up an attribute's local name by index. - * - * @param index The attribute index (zero-based). - * @return The local name, or the empty string if Namespace - * processing is not being performed, or null - * if the index is out of range. - * @see #getLength - */ - public abstract String getLocalName (int index); - - - /** - * Look up an attribute's XML qualified (prefixed) name by index. - * - * @param index The attribute index (zero-based). - * @return The XML qualified name, or the empty string - * if none is available, or null if the index - * is out of range. - * @see #getLength - */ - public abstract String getQName (int index); - - - /** - * Look up an attribute's type by index. - * - *

The attribute type is one of the strings "CDATA", "ID", - * "IDREF", "IDREFS", "NMTOKEN", "NMTOKENS", "ENTITY", "ENTITIES", - * or "NOTATION" (always in upper case).

- * - *

If the parser has not read a declaration for the attribute, - * or if the parser does not report attribute types, then it must - * return the value "CDATA" as stated in the XML 1.0 Recommendation - * (clause 3.3.3, "Attribute-Value Normalization").

- * - *

For an enumerated attribute that is not a notation, the - * parser will report the type as "NMTOKEN".

- * - * @param index The attribute index (zero-based). - * @return The attribute's type as a string, or null if the - * index is out of range. - * @see #getLength - */ - public abstract String getType (int index); - - - /** - * Look up an attribute's value by index. - * - *

If the attribute value is a list of tokens (IDREFS, - * ENTITIES, or NMTOKENS), the tokens will be concatenated - * into a single string with each token separated by a - * single space.

- * - * @param index The attribute index (zero-based). - * @return The attribute's value as a string, or null if the - * index is out of range. - * @see #getLength - */ - public abstract String getValue (int index); - - - - //////////////////////////////////////////////////////////////////// - // Name-based query. - //////////////////////////////////////////////////////////////////// - - - /** - * Look up the index of an attribute by Namespace name. - * - * @param uri The Namespace URI, or the empty string if - * the name has no Namespace URI. - * @param localName The attribute's local name. - * @return The index of the attribute, or -1 if it does not - * appear in the list. - */ - public int getIndex (String uri, String localName); - - - /** - * Look up the index of an attribute by XML qualified (prefixed) name. - * - * @param qName The qualified (prefixed) name. - * @return The index of the attribute, or -1 if it does not - * appear in the list. - */ - public int getIndex (String qName); - - - /** - * Look up an attribute's type by Namespace name. - * - *

See {@link #getType(int) getType(int)} for a description - * of the possible types.

- * - * @param uri The Namespace URI, or the empty String if the - * name has no Namespace URI. - * @param localName The local name of the attribute. - * @return The attribute type as a string, or null if the - * attribute is not in the list or if Namespace - * processing is not being performed. - */ - public abstract String getType (String uri, String localName); - - - /** - * Look up an attribute's type by XML qualified (prefixed) name. - * - *

See {@link #getType(int) getType(int)} for a description - * of the possible types.

- * - * @param qName The XML qualified name. - * @return The attribute type as a string, or null if the - * attribute is not in the list or if qualified names - * are not available. - */ - public abstract String getType (String qName); - - - /** - * Look up an attribute's value by Namespace name. - * - *

See {@link #getValue(int) getValue(int)} for a description - * of the possible values.

- * - * @param uri The Namespace URI, or the empty String if the - * name has no Namespace URI. - * @param localName The local name of the attribute. - * @return The attribute value as a string, or null if the - * attribute is not in the list. - */ - public abstract String getValue (String uri, String localName); - - - /** - * Look up an attribute's value by XML qualified (prefixed) name. - * - *

See {@link #getValue(int) getValue(int)} for a description - * of the possible values.

- * - * @param qName The XML qualified name. - * @return The attribute value as a string, or null if the - * attribute is not in the list or if qualified names - * are not available. - */ - public abstract String getValue (String qName); - -} - -// end of Attributes.java diff --git a/libjava/external/sax/org/xml/sax/ContentHandler.java b/libjava/external/sax/org/xml/sax/ContentHandler.java deleted file mode 100644 index c0df614108d..00000000000 --- a/libjava/external/sax/org/xml/sax/ContentHandler.java +++ /dev/null @@ -1,419 +0,0 @@ -// ContentHandler.java - handle main document content. -// http://www.saxproject.org -// Written by David Megginson -// NO WARRANTY! This class is in the public domain. -// $Id: ContentHandler.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - - -/** - * Receive notification of the logical content of a document. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This is the main interface that most SAX applications - * implement: if the application needs to be informed of basic parsing - * events, it implements this interface and registers an instance with - * the SAX parser using the {@link org.xml.sax.XMLReader#setContentHandler - * setContentHandler} method. The parser uses the instance to report - * basic document-related events like the start and end of elements - * and character data.

- * - *

The order of events in this interface is very important, and - * mirrors the order of information in the document itself. For - * example, all of an element's content (character data, processing - * instructions, and/or subelements) will appear, in order, between - * the startElement event and the corresponding endElement event.

- * - *

This interface is similar to the now-deprecated SAX 1.0 - * DocumentHandler interface, but it adds support for Namespaces - * and for reporting skipped entities (in non-validating XML - * processors).

- * - *

Implementors should note that there is also a - * ContentHandler class in the java.net - * package; that means that it's probably a bad idea to do

- * - *
import java.net.*;
- * import org.xml.sax.*;
- * 
- * - *

In fact, "import ...*" is usually a sign of sloppy programming - * anyway, so the user should consider this a feature rather than a - * bug.

- * - * @since SAX 2.0 - * @author David Megginson - * @version 2.0.1+ (sax2r3pre1) - * @see org.xml.sax.XMLReader - * @see org.xml.sax.DTDHandler - * @see org.xml.sax.ErrorHandler - */ -public interface ContentHandler -{ - - /** - * Receive an object for locating the origin of SAX document events. - * - *

SAX parsers are strongly encouraged (though not absolutely - * required) to supply a locator: if it does so, it must supply - * the locator to the application by invoking this method before - * invoking any of the other methods in the ContentHandler - * interface.

- * - *

The locator allows the application to determine the end - * position of any document-related event, even if the parser is - * not reporting an error. Typically, the application will - * use this information for reporting its own errors (such as - * character content that does not match an application's - * business rules). The information returned by the locator - * is probably not sufficient for use with a search engine.

- * - *

Note that the locator will return correct information only - * during the invocation SAX event callbacks after - * {@link #startDocument startDocument} returns and before - * {@link #endDocument endDocument} is called. The - * application should not attempt to use it at any other time.

- * - * @param locator an object that can return the location of - * any SAX document event - * @see org.xml.sax.Locator - */ - public void setDocumentLocator (Locator locator); - - - /** - * Receive notification of the beginning of a document. - * - *

The SAX parser will invoke this method only once, before any - * other event callbacks (except for {@link #setDocumentLocator - * setDocumentLocator}).

- * - * @throws org.xml.sax.SAXException any SAX exception, possibly - * wrapping another exception - * @see #endDocument - */ - public void startDocument () - throws SAXException; - - - /** - * Receive notification of the end of a document. - * - *

There is an apparent contradiction between the - * documentation for this method and the documentation for {@link - * org.xml.sax.ErrorHandler#fatalError}. Until this ambiguity is - * resolved in a future major release, clients should make no - * assumptions about whether endDocument() will or will not be - * invoked when the parser has reported a fatalError() or thrown - * an exception.

- * - *

The SAX parser will invoke this method only once, and it will - * be the last method invoked during the parse. The parser shall - * not invoke this method until it has either abandoned parsing - * (because of an unrecoverable error) or reached the end of - * input.

- * - * @throws org.xml.sax.SAXException any SAX exception, possibly - * wrapping another exception - * @see #startDocument - */ - public void endDocument() - throws SAXException; - - - /** - * Begin the scope of a prefix-URI Namespace mapping. - * - *

The information from this event is not necessary for - * normal Namespace processing: the SAX XML reader will - * automatically replace prefixes for element and attribute - * names when the http://xml.org/sax/features/namespaces - * feature is true (the default).

- * - *

There are cases, however, when applications need to - * use prefixes in character data or in attribute values, - * where they cannot safely be expanded automatically; the - * start/endPrefixMapping event supplies the information - * to the application to expand prefixes in those contexts - * itself, if necessary.

- * - *

Note that start/endPrefixMapping events are not - * guaranteed to be properly nested relative to each other: - * all startPrefixMapping events will occur immediately before the - * corresponding {@link #startElement startElement} event, - * and all {@link #endPrefixMapping endPrefixMapping} - * events will occur immediately after the corresponding - * {@link #endElement endElement} event, - * but their order is not otherwise - * guaranteed.

- * - *

There should never be start/endPrefixMapping events for the - * "xml" prefix, since it is predeclared and immutable.

- * - * @param prefix the Namespace prefix being declared. - * An empty string is used for the default element namespace, - * which has no prefix. - * @param uri the Namespace URI the prefix is mapped to - * @throws org.xml.sax.SAXException the client may throw - * an exception during processing - * @see #endPrefixMapping - * @see #startElement - */ - public void startPrefixMapping (String prefix, String uri) - throws SAXException; - - - /** - * End the scope of a prefix-URI mapping. - * - *

See {@link #startPrefixMapping startPrefixMapping} for - * details. These events will always occur immediately after the - * corresponding {@link #endElement endElement} event, but the order of - * {@link #endPrefixMapping endPrefixMapping} events is not otherwise - * guaranteed.

- * - * @param prefix the prefix that was being mapped. - * This is the empty string when a default mapping scope ends. - * @throws org.xml.sax.SAXException the client may throw - * an exception during processing - * @see #startPrefixMapping - * @see #endElement - */ - public void endPrefixMapping (String prefix) - throws SAXException; - - - /** - * Receive notification of the beginning of an element. - * - *

The Parser will invoke this method at the beginning of every - * element in the XML document; there will be a corresponding - * {@link #endElement endElement} event for every startElement event - * (even when the element is empty). All of the element's content will be - * reported, in order, before the corresponding endElement - * event.

- * - *

This event allows up to three name components for each - * element:

- * - *
    - *
  1. the Namespace URI;
  2. - *
  3. the local name; and
  4. - *
  5. the qualified (prefixed) name.
  6. - *
- * - *

Any or all of these may be provided, depending on the - * values of the http://xml.org/sax/features/namespaces - * and the http://xml.org/sax/features/namespace-prefixes - * properties:

- * - *
    - *
  • the Namespace URI and local name are required when - * the namespaces property is true (the default), and are - * optional when the namespaces property is false (if one is - * specified, both must be);
  • - *
  • the qualified name is required when the namespace-prefixes property - * is true, and is optional when the namespace-prefixes property - * is false (the default).
  • - *
- * - *

Note that the attribute list provided will contain only - * attributes with explicit values (specified or defaulted): - * #IMPLIED attributes will be omitted. The attribute list - * will contain attributes used for Namespace declarations - * (xmlns* attributes) only if the - * http://xml.org/sax/features/namespace-prefixes - * property is true (it is false by default, and support for a - * true value is optional).

- * - *

Like {@link #characters characters()}, attribute values may have - * characters that need more than one char value.

- * - * @param uri the Namespace URI, or the empty string if the - * element has no Namespace URI or if Namespace - * processing is not being performed - * @param localName the local name (without prefix), or the - * empty string if Namespace processing is not being - * performed - * @param qName the qualified name (with prefix), or the - * empty string if qualified names are not available - * @param atts the attributes attached to the element. If - * there are no attributes, it shall be an empty - * Attributes object. The value of this object after - * startElement returns is undefined - * @throws org.xml.sax.SAXException any SAX exception, possibly - * wrapping another exception - * @see #endElement - * @see org.xml.sax.Attributes - * @see org.xml.sax.helpers.AttributesImpl - */ - public void startElement (String uri, String localName, - String qName, Attributes atts) - throws SAXException; - - - /** - * Receive notification of the end of an element. - * - *

The SAX parser will invoke this method at the end of every - * element in the XML document; there will be a corresponding - * {@link #startElement startElement} event for every endElement - * event (even when the element is empty).

- * - *

For information on the names, see startElement.

- * - * @param uri the Namespace URI, or the empty string if the - * element has no Namespace URI or if Namespace - * processing is not being performed - * @param localName the local name (without prefix), or the - * empty string if Namespace processing is not being - * performed - * @param qName the qualified XML name (with prefix), or the - * empty string if qualified names are not available - * @throws org.xml.sax.SAXException any SAX exception, possibly - * wrapping another exception - */ - public void endElement (String uri, String localName, - String qName) - throws SAXException; - - - /** - * Receive notification of character data. - * - *

The Parser will call this method to report each chunk of - * character data. SAX parsers may return all contiguous character - * data in a single chunk, or they may split it into several - * chunks; however, all of the characters in any single event - * must come from the same external entity so that the Locator - * provides useful information.

- * - *

The application must not attempt to read from the array - * outside of the specified range.

- * - *

Individual characters may consist of more than one Java - * char value. There are two important cases where this - * happens, because characters can't be represented in just sixteen bits. - * In one case, characters are represented in a Surrogate Pair, - * using two special Unicode values. Such characters are in the so-called - * "Astral Planes", with a code point above U+FFFF. A second case involves - * composite characters, such as a base character combining with one or - * more accent characters.

- * - *

Your code should not assume that algorithms using - * char-at-a-time idioms will be working in character - * units; in some cases they will split characters. This is relevant - * wherever XML permits arbitrary characters, such as attribute values, - * processing instruction data, and comments as well as in data reported - * from this method. It's also generally relevant whenever Java code - * manipulates internationalized text; the issue isn't unique to XML.

- * - *

Note that some parsers will report whitespace in element - * content using the {@link #ignorableWhitespace ignorableWhitespace} - * method rather than this one (validating parsers must - * do so).

- * - * @param ch the characters from the XML document - * @param start the start position in the array - * @param length the number of characters to read from the array - * @throws org.xml.sax.SAXException any SAX exception, possibly - * wrapping another exception - * @see #ignorableWhitespace - * @see org.xml.sax.Locator - */ - public void characters (char ch[], int start, int length) - throws SAXException; - - - /** - * Receive notification of ignorable whitespace in element content. - * - *

Validating Parsers must use this method to report each chunk - * of whitespace in element content (see the W3C XML 1.0 - * recommendation, section 2.10): non-validating parsers may also - * use this method if they are capable of parsing and using - * content models.

- * - *

SAX parsers may return all contiguous whitespace in a single - * chunk, or they may split it into several chunks; however, all of - * the characters in any single event must come from the same - * external entity, so that the Locator provides useful - * information.

- * - *

The application must not attempt to read from the array - * outside of the specified range.

- * - * @param ch the characters from the XML document - * @param start the start position in the array - * @param length the number of characters to read from the array - * @throws org.xml.sax.SAXException any SAX exception, possibly - * wrapping another exception - * @see #characters - */ - public void ignorableWhitespace (char ch[], int start, int length) - throws SAXException; - - - /** - * Receive notification of a processing instruction. - * - *

The Parser will invoke this method once for each processing - * instruction found: note that processing instructions may occur - * before or after the main document element.

- * - *

A SAX parser must never report an XML declaration (XML 1.0, - * section 2.8) or a text declaration (XML 1.0, section 4.3.1) - * using this method.

- * - *

Like {@link #characters characters()}, processing instruction - * data may have characters that need more than one char - * value.

- * - * @param target the processing instruction target - * @param data the processing instruction data, or null if - * none was supplied. The data does not include any - * whitespace separating it from the target - * @throws org.xml.sax.SAXException any SAX exception, possibly - * wrapping another exception - */ - public void processingInstruction (String target, String data) - throws SAXException; - - - /** - * Receive notification of a skipped entity. - * This is not called for entity references within markup constructs - * such as element start tags or markup declarations. (The XML - * recommendation requires reporting skipped external entities. - * SAX also reports internal entity expansion/non-expansion, except - * within markup constructs.) - * - *

The Parser will invoke this method each time the entity is - * skipped. Non-validating processors may skip entities if they - * have not seen the declarations (because, for example, the - * entity was declared in an external DTD subset). All processors - * may skip external entities, depending on the values of the - * http://xml.org/sax/features/external-general-entities - * and the - * http://xml.org/sax/features/external-parameter-entities - * properties.

- * - * @param name the name of the skipped entity. If it is a - * parameter entity, the name will begin with '%', and if - * it is the external DTD subset, it will be the string - * "[dtd]" - * @throws org.xml.sax.SAXException any SAX exception, possibly - * wrapping another exception - */ - public void skippedEntity (String name) - throws SAXException; -} - -// end of ContentHandler.java diff --git a/libjava/external/sax/org/xml/sax/DTDHandler.java b/libjava/external/sax/org/xml/sax/DTDHandler.java deleted file mode 100644 index f894298cded..00000000000 --- a/libjava/external/sax/org/xml/sax/DTDHandler.java +++ /dev/null @@ -1,117 +0,0 @@ -// SAX DTD handler. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: DTDHandler.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - -/** - * Receive notification of basic DTD-related events. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

If a SAX application needs information about notations and - * unparsed entities, then the application implements this - * interface and registers an instance with the SAX parser using - * the parser's setDTDHandler method. The parser uses the - * instance to report notation and unparsed entity declarations to - * the application.

- * - *

Note that this interface includes only those DTD events that - * the XML recommendation requires processors to report: - * notation and unparsed entity declarations.

- * - *

The SAX parser may report these events in any order, regardless - * of the order in which the notations and unparsed entities were - * declared; however, all DTD events must be reported after the - * document handler's startDocument event, and before the first - * startElement event. - * (If the {@link org.xml.sax.ext.LexicalHandler LexicalHandler} is - * used, these events must also be reported before the endDTD event.) - *

- * - *

It is up to the application to store the information for - * future use (perhaps in a hash table or object tree). - * If the application encounters attributes of type "NOTATION", - * "ENTITY", or "ENTITIES", it can use the information that it - * obtained through this interface to find the entity and/or - * notation corresponding with the attribute value.

- * - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.XMLReader#setDTDHandler - */ -public interface DTDHandler { - - - /** - * Receive notification of a notation declaration event. - * - *

It is up to the application to record the notation for later - * reference, if necessary; - * notations may appear as attribute values and in unparsed entity - * declarations, and are sometime used with processing instruction - * target names.

- * - *

At least one of publicId and systemId must be non-null. - * If a system identifier is present, and it is a URL, the SAX - * parser must resolve it fully before passing it to the - * application through this event.

- * - *

There is no guarantee that the notation declaration will be - * reported before any unparsed entities that use it.

- * - * @param name The notation name. - * @param publicId The notation's public identifier, or null if - * none was given. - * @param systemId The notation's system identifier, or null if - * none was given. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see #unparsedEntityDecl - * @see org.xml.sax.Attributes - */ - public abstract void notationDecl (String name, - String publicId, - String systemId) - throws SAXException; - - - /** - * Receive notification of an unparsed entity declaration event. - * - *

Note that the notation name corresponds to a notation - * reported by the {@link #notationDecl notationDecl} event. - * It is up to the application to record the entity for later - * reference, if necessary; - * unparsed entities may appear as attribute values. - *

- * - *

If the system identifier is a URL, the parser must resolve it - * fully before passing it to the application.

- * - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @param name The unparsed entity's name. - * @param publicId The entity's public identifier, or null if none - * was given. - * @param systemId The entity's system identifier. - * @param notationName The name of the associated notation. - * @see #notationDecl - * @see org.xml.sax.Attributes - */ - public abstract void unparsedEntityDecl (String name, - String publicId, - String systemId, - String notationName) - throws SAXException; - -} - -// end of DTDHandler.java diff --git a/libjava/external/sax/org/xml/sax/DocumentHandler.java b/libjava/external/sax/org/xml/sax/DocumentHandler.java deleted file mode 100644 index 08429b6bcf4..00000000000 --- a/libjava/external/sax/org/xml/sax/DocumentHandler.java +++ /dev/null @@ -1,232 +0,0 @@ -// SAX document handler. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: DocumentHandler.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - -/** - * Receive notification of general document events. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This was the main event-handling interface for SAX1; in - * SAX2, it has been replaced by {@link org.xml.sax.ContentHandler - * ContentHandler}, which provides Namespace support and reporting - * of skipped entities. This interface is included in SAX2 only - * to support legacy SAX1 applications.

- * - *

The order of events in this interface is very important, and - * mirrors the order of information in the document itself. For - * example, all of an element's content (character data, processing - * instructions, and/or subelements) will appear, in order, between - * the startElement event and the corresponding endElement event.

- * - *

Application writers who do not want to implement the entire - * interface can derive a class from HandlerBase, which implements - * the default functionality; parser writers can instantiate - * HandlerBase to obtain a default handler. The application can find - * the location of any document event using the Locator interface - * supplied by the Parser through the setDocumentLocator method.

- * - * @deprecated This interface has been replaced by the SAX2 - * {@link org.xml.sax.ContentHandler ContentHandler} - * interface, which includes Namespace support. - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.Parser#setDocumentHandler - * @see org.xml.sax.Locator - * @see org.xml.sax.HandlerBase - */ -public interface DocumentHandler { - - - /** - * Receive an object for locating the origin of SAX document events. - * - *

SAX parsers are strongly encouraged (though not absolutely - * required) to supply a locator: if it does so, it must supply - * the locator to the application by invoking this method before - * invoking any of the other methods in the DocumentHandler - * interface.

- * - *

The locator allows the application to determine the end - * position of any document-related event, even if the parser is - * not reporting an error. Typically, the application will - * use this information for reporting its own errors (such as - * character content that does not match an application's - * business rules). The information returned by the locator - * is probably not sufficient for use with a search engine.

- * - *

Note that the locator will return correct information only - * during the invocation of the events in this interface. The - * application should not attempt to use it at any other time.

- * - * @param locator An object that can return the location of - * any SAX document event. - * @see org.xml.sax.Locator - */ - public abstract void setDocumentLocator (Locator locator); - - - /** - * Receive notification of the beginning of a document. - * - *

The SAX parser will invoke this method only once, before any - * other methods in this interface or in DTDHandler (except for - * setDocumentLocator).

- * - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - */ - public abstract void startDocument () - throws SAXException; - - - /** - * Receive notification of the end of a document. - * - *

The SAX parser will invoke this method only once, and it will - * be the last method invoked during the parse. The parser shall - * not invoke this method until it has either abandoned parsing - * (because of an unrecoverable error) or reached the end of - * input.

- * - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - */ - public abstract void endDocument () - throws SAXException; - - - /** - * Receive notification of the beginning of an element. - * - *

The Parser will invoke this method at the beginning of every - * element in the XML document; there will be a corresponding - * endElement() event for every startElement() event (even when the - * element is empty). All of the element's content will be - * reported, in order, before the corresponding endElement() - * event.

- * - *

If the element name has a namespace prefix, the prefix will - * still be attached. Note that the attribute list provided will - * contain only attributes with explicit values (specified or - * defaulted): #IMPLIED attributes will be omitted.

- * - * @param name The element type name. - * @param atts The attributes attached to the element, if any. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see #endElement - * @see org.xml.sax.AttributeList - */ - public abstract void startElement (String name, AttributeList atts) - throws SAXException; - - - /** - * Receive notification of the end of an element. - * - *

The SAX parser will invoke this method at the end of every - * element in the XML document; there will be a corresponding - * startElement() event for every endElement() event (even when the - * element is empty).

- * - *

If the element name has a namespace prefix, the prefix will - * still be attached to the name.

- * - * @param name The element type name - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - */ - public abstract void endElement (String name) - throws SAXException; - - - /** - * Receive notification of character data. - * - *

The Parser will call this method to report each chunk of - * character data. SAX parsers may return all contiguous character - * data in a single chunk, or they may split it into several - * chunks; however, all of the characters in any single event - * must come from the same external entity, so that the Locator - * provides useful information.

- * - *

The application must not attempt to read from the array - * outside of the specified range.

- * - *

Note that some parsers will report whitespace using the - * ignorableWhitespace() method rather than this one (validating - * parsers must do so).

- * - * @param ch The characters from the XML document. - * @param start The start position in the array. - * @param length The number of characters to read from the array. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see #ignorableWhitespace - * @see org.xml.sax.Locator - */ - public abstract void characters (char ch[], int start, int length) - throws SAXException; - - - /** - * Receive notification of ignorable whitespace in element content. - * - *

Validating Parsers must use this method to report each chunk - * of ignorable whitespace (see the W3C XML 1.0 recommendation, - * section 2.10): non-validating parsers may also use this method - * if they are capable of parsing and using content models.

- * - *

SAX parsers may return all contiguous whitespace in a single - * chunk, or they may split it into several chunks; however, all of - * the characters in any single event must come from the same - * external entity, so that the Locator provides useful - * information.

- * - *

The application must not attempt to read from the array - * outside of the specified range.

- * - * @param ch The characters from the XML document. - * @param start The start position in the array. - * @param length The number of characters to read from the array. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see #characters - */ - public abstract void ignorableWhitespace (char ch[], int start, int length) - throws SAXException; - - - /** - * Receive notification of a processing instruction. - * - *

The Parser will invoke this method once for each processing - * instruction found: note that processing instructions may occur - * before or after the main document element.

- * - *

A SAX parser should never report an XML declaration (XML 1.0, - * section 2.8) or a text declaration (XML 1.0, section 4.3.1) - * using this method.

- * - * @param target The processing instruction target. - * @param data The processing instruction data, or null if - * none was supplied. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - */ - public abstract void processingInstruction (String target, String data) - throws SAXException; - -} - -// end of DocumentHandler.java diff --git a/libjava/external/sax/org/xml/sax/EntityResolver.java b/libjava/external/sax/org/xml/sax/EntityResolver.java deleted file mode 100644 index e240ba14b48..00000000000 --- a/libjava/external/sax/org/xml/sax/EntityResolver.java +++ /dev/null @@ -1,119 +0,0 @@ -// SAX entity resolver. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: EntityResolver.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - -import java.io.IOException; - - -/** - * Basic interface for resolving entities. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

If a SAX application needs to implement customized handling - * for external entities, it must implement this interface and - * register an instance with the SAX driver using the - * {@link org.xml.sax.XMLReader#setEntityResolver setEntityResolver} - * method.

- * - *

The XML reader will then allow the application to intercept any - * external entities (including the external DTD subset and external - * parameter entities, if any) before including them.

- * - *

Many SAX applications will not need to implement this interface, - * but it will be especially useful for applications that build - * XML documents from databases or other specialised input sources, - * or for applications that use URI types other than URLs.

- * - *

The following resolver would provide the application - * with a special character stream for the entity with the system - * identifier "http://www.myhost.com/today":

- * - *
- * import org.xml.sax.EntityResolver;
- * import org.xml.sax.InputSource;
- *
- * public class MyResolver implements EntityResolver {
- *   public InputSource resolveEntity (String publicId, String systemId)
- *   {
- *     if (systemId.equals("http://www.myhost.com/today")) {
- *              // return a special input source
- *       MyReader reader = new MyReader();
- *       return new InputSource(reader);
- *     } else {
- *              // use the default behaviour
- *       return null;
- *     }
- *   }
- * }
- * 
- * - *

The application can also use this interface to redirect system - * identifiers to local URIs or to look up replacements in a catalog - * (possibly by using the public identifier).

- * - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.XMLReader#setEntityResolver - * @see org.xml.sax.InputSource - */ -public interface EntityResolver { - - - /** - * Allow the application to resolve external entities. - * - *

The parser will call this method before opening any external - * entity except the top-level document entity. Such entities include - * the external DTD subset and external parameter entities referenced - * within the DTD (in either case, only if the parser reads external - * parameter entities), and external general entities referenced - * within the document element (if the parser reads external general - * entities). The application may request that the parser locate - * the entity itself, that it use an alternative URI, or that it - * use data provided by the application (as a character or byte - * input stream).

- * - *

Application writers can use this method to redirect external - * system identifiers to secure and/or local URIs, to look up - * public identifiers in a catalogue, or to read an entity from a - * database or other input source (including, for example, a dialog - * box). Neither XML nor SAX specifies a preferred policy for using - * public or system IDs to resolve resources. However, SAX specifies - * how to interpret any InputSource returned by this method, and that - * if none is returned, then the system ID will be dereferenced as - * a URL.

- * - *

If the system identifier is a URL, the SAX parser must - * resolve it fully before reporting it to the application.

- * - * @param publicId The public identifier of the external entity - * being referenced, or null if none was supplied. - * @param systemId The system identifier of the external entity - * being referenced. - * @return An InputSource object describing the new input source, - * or null to request that the parser open a regular - * URI connection to the system identifier. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @exception java.io.IOException A Java-specific IO exception, - * possibly the result of creating a new InputStream - * or Reader for the InputSource. - * @see org.xml.sax.InputSource - */ - public abstract InputSource resolveEntity (String publicId, - String systemId) - throws SAXException, IOException; - -} - -// end of EntityResolver.java diff --git a/libjava/external/sax/org/xml/sax/ErrorHandler.java b/libjava/external/sax/org/xml/sax/ErrorHandler.java deleted file mode 100644 index 5ebe3926321..00000000000 --- a/libjava/external/sax/org/xml/sax/ErrorHandler.java +++ /dev/null @@ -1,139 +0,0 @@ -// SAX error handler. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: ErrorHandler.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - - -/** - * Basic interface for SAX error handlers. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

If a SAX application needs to implement customized error - * handling, it must implement this interface and then register an - * instance with the XML reader using the - * {@link org.xml.sax.XMLReader#setErrorHandler setErrorHandler} - * method. The parser will then report all errors and warnings - * through this interface.

- * - *

WARNING: If an application does not - * register an ErrorHandler, XML parsing errors will go unreported, - * except that SAXParseExceptions will be thrown for fatal errors. - * In order to detect validity errors, an ErrorHandler that does something - * with {@link #error error()} calls must be registered.

- * - *

For XML processing errors, a SAX driver must use this interface - * in preference to throwing an exception: it is up to the application - * to decide whether to throw an exception for different types of - * errors and warnings. Note, however, that there is no requirement that - * the parser continue to report additional errors after a call to - * {@link #fatalError fatalError}. In other words, a SAX driver class - * may throw an exception after reporting any fatalError. - * Also parsers may throw appropriate exceptions for non-XML errors. - * For example, {@link XMLReader#parse XMLReader.parse()} would throw - * an IOException for errors accessing entities or the document.

- * - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1+ (sax2r3pre1) - * @see org.xml.sax.XMLReader#setErrorHandler - * @see org.xml.sax.SAXParseException - */ -public interface ErrorHandler { - - - /** - * Receive notification of a warning. - * - *

SAX parsers will use this method to report conditions that - * are not errors or fatal errors as defined by the XML - * recommendation. The default behaviour is to take no - * action.

- * - *

The SAX parser must continue to provide normal parsing events - * after invoking this method: it should still be possible for the - * application to process the document through to the end.

- * - *

Filters may use this method to report other, non-XML warnings - * as well.

- * - * @param exception The warning information encapsulated in a - * SAX parse exception. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.SAXParseException - */ - public abstract void warning (SAXParseException exception) - throws SAXException; - - - /** - * Receive notification of a recoverable error. - * - *

This corresponds to the definition of "error" in section 1.2 - * of the W3C XML 1.0 Recommendation. For example, a validating - * parser would use this callback to report the violation of a - * validity constraint. The default behaviour is to take no - * action.

- * - *

The SAX parser must continue to provide normal parsing - * events after invoking this method: it should still be possible - * for the application to process the document through to the end. - * If the application cannot do so, then the parser should report - * a fatal error even if the XML recommendation does not require - * it to do so.

- * - *

Filters may use this method to report other, non-XML errors - * as well.

- * - * @param exception The error information encapsulated in a - * SAX parse exception. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.SAXParseException - */ - public abstract void error (SAXParseException exception) - throws SAXException; - - - /** - * Receive notification of a non-recoverable error. - * - *

There is an apparent contradiction between the - * documentation for this method and the documentation for {@link - * org.xml.sax.ContentHandler#endDocument}. Until this ambiguity - * is resolved in a future major release, clients should make no - * assumptions about whether endDocument() will or will not be - * invoked when the parser has reported a fatalError() or thrown - * an exception.

- * - *

This corresponds to the definition of "fatal error" in - * section 1.2 of the W3C XML 1.0 Recommendation. For example, a - * parser would use this callback to report the violation of a - * well-formedness constraint.

- * - *

The application must assume that the document is unusable - * after the parser has invoked this method, and should continue - * (if at all) only for the sake of collecting additional error - * messages: in fact, SAX parsers are free to stop reporting any - * other events once this method has been invoked.

- * - * @param exception The error information encapsulated in a - * SAX parse exception. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.SAXParseException - */ - public abstract void fatalError (SAXParseException exception) - throws SAXException; - -} - -// end of ErrorHandler.java diff --git a/libjava/external/sax/org/xml/sax/HandlerBase.java b/libjava/external/sax/org/xml/sax/HandlerBase.java deleted file mode 100644 index 7d6ce73616a..00000000000 --- a/libjava/external/sax/org/xml/sax/HandlerBase.java +++ /dev/null @@ -1,369 +0,0 @@ -// SAX default handler base class. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: HandlerBase.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - -/** - * Default base class for handlers. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This class implements the default behaviour for four SAX1 - * interfaces: EntityResolver, DTDHandler, DocumentHandler, - * and ErrorHandler. It is now obsolete, but is included in SAX2 to - * support legacy SAX1 applications. SAX2 applications should use - * the {@link org.xml.sax.helpers.DefaultHandler DefaultHandler} - * class instead.

- * - *

Application writers can extend this class when they need to - * implement only part of an interface; parser writers can - * instantiate this class to provide default handlers when the - * application has not supplied its own.

- * - *

Note that the use of this class is optional.

- * - * @deprecated This class works with the deprecated - * {@link org.xml.sax.DocumentHandler DocumentHandler} - * interface. It has been replaced by the SAX2 - * {@link org.xml.sax.helpers.DefaultHandler DefaultHandler} - * class. - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.EntityResolver - * @see org.xml.sax.DTDHandler - * @see org.xml.sax.DocumentHandler - * @see org.xml.sax.ErrorHandler - */ -public class HandlerBase - implements EntityResolver, DTDHandler, DocumentHandler, ErrorHandler -{ - - - //////////////////////////////////////////////////////////////////// - // Default implementation of the EntityResolver interface. - //////////////////////////////////////////////////////////////////// - - /** - * Resolve an external entity. - * - *

Always return null, so that the parser will use the system - * identifier provided in the XML document. This method implements - * the SAX default behaviour: application writers can override it - * in a subclass to do special translations such as catalog lookups - * or URI redirection.

- * - * @param publicId The public identifer, or null if none is - * available. - * @param systemId The system identifier provided in the XML - * document. - * @return The new input source, or null to require the - * default behaviour. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.EntityResolver#resolveEntity - */ - public InputSource resolveEntity (String publicId, String systemId) - throws SAXException - { - return null; - } - - - - //////////////////////////////////////////////////////////////////// - // Default implementation of DTDHandler interface. - //////////////////////////////////////////////////////////////////// - - - /** - * Receive notification of a notation declaration. - * - *

By default, do nothing. Application writers may override this - * method in a subclass if they wish to keep track of the notations - * declared in a document.

- * - * @param name The notation name. - * @param publicId The notation public identifier, or null if not - * available. - * @param systemId The notation system identifier. - * @see org.xml.sax.DTDHandler#notationDecl - */ - public void notationDecl (String name, String publicId, String systemId) - { - // no op - } - - - /** - * Receive notification of an unparsed entity declaration. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to keep track of the unparsed entities - * declared in a document.

- * - * @param name The entity name. - * @param publicId The entity public identifier, or null if not - * available. - * @param systemId The entity system identifier. - * @param notationName The name of the associated notation. - * @see org.xml.sax.DTDHandler#unparsedEntityDecl - */ - public void unparsedEntityDecl (String name, String publicId, - String systemId, String notationName) - { - // no op - } - - - - //////////////////////////////////////////////////////////////////// - // Default implementation of DocumentHandler interface. - //////////////////////////////////////////////////////////////////// - - - /** - * Receive a Locator object for document events. - * - *

By default, do nothing. Application writers may override this - * method in a subclass if they wish to store the locator for use - * with other document events.

- * - * @param locator A locator for all SAX document events. - * @see org.xml.sax.DocumentHandler#setDocumentLocator - * @see org.xml.sax.Locator - */ - public void setDocumentLocator (Locator locator) - { - // no op - } - - - /** - * Receive notification of the beginning of the document. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to take specific actions at the beginning - * of a document (such as allocating the root node of a tree or - * creating an output file).

- * - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.DocumentHandler#startDocument - */ - public void startDocument () - throws SAXException - { - // no op - } - - - /** - * Receive notification of the end of the document. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to take specific actions at the beginning - * of a document (such as finalising a tree or closing an output - * file).

- * - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.DocumentHandler#endDocument - */ - public void endDocument () - throws SAXException - { - // no op - } - - - /** - * Receive notification of the start of an element. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to take specific actions at the start of - * each element (such as allocating a new tree node or writing - * output to a file).

- * - * @param name The element type name. - * @param attributes The specified or defaulted attributes. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.DocumentHandler#startElement - */ - public void startElement (String name, AttributeList attributes) - throws SAXException - { - // no op - } - - - /** - * Receive notification of the end of an element. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to take specific actions at the end of - * each element (such as finalising a tree node or writing - * output to a file).

- * - * @param name the element name - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.DocumentHandler#endElement - */ - public void endElement (String name) - throws SAXException - { - // no op - } - - - /** - * Receive notification of character data inside an element. - * - *

By default, do nothing. Application writers may override this - * method to take specific actions for each chunk of character data - * (such as adding the data to a node or buffer, or printing it to - * a file).

- * - * @param ch The characters. - * @param start The start position in the character array. - * @param length The number of characters to use from the - * character array. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.DocumentHandler#characters - */ - public void characters (char ch[], int start, int length) - throws SAXException - { - // no op - } - - - /** - * Receive notification of ignorable whitespace in element content. - * - *

By default, do nothing. Application writers may override this - * method to take specific actions for each chunk of ignorable - * whitespace (such as adding data to a node or buffer, or printing - * it to a file).

- * - * @param ch The whitespace characters. - * @param start The start position in the character array. - * @param length The number of characters to use from the - * character array. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.DocumentHandler#ignorableWhitespace - */ - public void ignorableWhitespace (char ch[], int start, int length) - throws SAXException - { - // no op - } - - - /** - * Receive notification of a processing instruction. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to take specific actions for each - * processing instruction, such as setting status variables or - * invoking other methods.

- * - * @param target The processing instruction target. - * @param data The processing instruction data, or null if - * none is supplied. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.DocumentHandler#processingInstruction - */ - public void processingInstruction (String target, String data) - throws SAXException - { - // no op - } - - - - //////////////////////////////////////////////////////////////////// - // Default implementation of the ErrorHandler interface. - //////////////////////////////////////////////////////////////////// - - - /** - * Receive notification of a parser warning. - * - *

The default implementation does nothing. Application writers - * may override this method in a subclass to take specific actions - * for each warning, such as inserting the message in a log file or - * printing it to the console.

- * - * @param e The warning information encoded as an exception. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ErrorHandler#warning - * @see org.xml.sax.SAXParseException - */ - public void warning (SAXParseException e) - throws SAXException - { - // no op - } - - - /** - * Receive notification of a recoverable parser error. - * - *

The default implementation does nothing. Application writers - * may override this method in a subclass to take specific actions - * for each error, such as inserting the message in a log file or - * printing it to the console.

- * - * @param e The warning information encoded as an exception. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ErrorHandler#warning - * @see org.xml.sax.SAXParseException - */ - public void error (SAXParseException e) - throws SAXException - { - // no op - } - - - /** - * Report a fatal XML parsing error. - * - *

The default implementation throws a SAXParseException. - * Application writers may override this method in a subclass if - * they need to take specific actions for each fatal error (such as - * collecting all of the errors into a single report): in any case, - * the application must stop all regular processing when this - * method is invoked, since the document is no longer reliable, and - * the parser may no longer report parsing events.

- * - * @param e The error information encoded as an exception. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ErrorHandler#fatalError - * @see org.xml.sax.SAXParseException - */ - public void fatalError (SAXParseException e) - throws SAXException - { - throw e; - } - -} - -// end of HandlerBase.java diff --git a/libjava/external/sax/org/xml/sax/InputSource.java b/libjava/external/sax/org/xml/sax/InputSource.java deleted file mode 100644 index 3737b63712d..00000000000 --- a/libjava/external/sax/org/xml/sax/InputSource.java +++ /dev/null @@ -1,336 +0,0 @@ -// SAX input source. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: InputSource.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - -import java.io.Reader; -import java.io.InputStream; - -/** - * A single input source for an XML entity. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This class allows a SAX application to encapsulate information - * about an input source in a single object, which may include - * a public identifier, a system identifier, a byte stream (possibly - * with a specified encoding), and/or a character stream.

- * - *

There are two places that the application can deliver an - * input source to the parser: as the argument to the Parser.parse - * method, or as the return value of the EntityResolver.resolveEntity - * method.

- * - *

The SAX parser will use the InputSource object to determine how - * to read XML input. If there is a character stream available, the - * parser will read that stream directly, disregarding any text - * encoding declaration found in that stream. - * If there is no character stream, but there is - * a byte stream, the parser will use that byte stream, using the - * encoding specified in the InputSource or else (if no encoding is - * specified) autodetecting the character encoding using an algorithm - * such as the one in the XML specification. If neither a character - * stream nor a - * byte stream is available, the parser will attempt to open a URI - * connection to the resource identified by the system - * identifier.

- * - *

An InputSource object belongs to the application: the SAX parser - * shall never modify it in any way (it may modify a copy if - * necessary). However, standard processing of both byte and - * character streams is to close them on as part of end-of-parse cleanup, - * so applications should not attempt to re-use such streams after they - * have been handed to a parser.

- * - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.XMLReader#parse(org.xml.sax.InputSource) - * @see org.xml.sax.EntityResolver#resolveEntity - * @see java.io.InputStream - * @see java.io.Reader - */ -public class InputSource { - - /** - * Zero-argument default constructor. - * - * @see #setPublicId - * @see #setSystemId - * @see #setByteStream - * @see #setCharacterStream - * @see #setEncoding - */ - public InputSource () - { - } - - - /** - * Create a new input source with a system identifier. - * - *

Applications may use setPublicId to include a - * public identifier as well, or setEncoding to specify - * the character encoding, if known.

- * - *

If the system identifier is a URL, it must be fully - * resolved (it may not be a relative URL).

- * - * @param systemId The system identifier (URI). - * @see #setPublicId - * @see #setSystemId - * @see #setByteStream - * @see #setEncoding - * @see #setCharacterStream - */ - public InputSource (String systemId) - { - setSystemId(systemId); - } - - - /** - * Create a new input source with a byte stream. - * - *

Application writers should use setSystemId() to provide a base - * for resolving relative URIs, may use setPublicId to include a - * public identifier, and may use setEncoding to specify the object's - * character encoding.

- * - * @param byteStream The raw byte stream containing the document. - * @see #setPublicId - * @see #setSystemId - * @see #setEncoding - * @see #setByteStream - * @see #setCharacterStream - */ - public InputSource (InputStream byteStream) - { - setByteStream(byteStream); - } - - - /** - * Create a new input source with a character stream. - * - *

Application writers should use setSystemId() to provide a base - * for resolving relative URIs, and may use setPublicId to include a - * public identifier.

- * - *

The character stream shall not include a byte order mark.

- * - * @see #setPublicId - * @see #setSystemId - * @see #setByteStream - * @see #setCharacterStream - */ - public InputSource (Reader characterStream) - { - setCharacterStream(characterStream); - } - - - /** - * Set the public identifier for this input source. - * - *

The public identifier is always optional: if the application - * writer includes one, it will be provided as part of the - * location information.

- * - * @param publicId The public identifier as a string. - * @see #getPublicId - * @see org.xml.sax.Locator#getPublicId - * @see org.xml.sax.SAXParseException#getPublicId - */ - public void setPublicId (String publicId) - { - this.publicId = publicId; - } - - - /** - * Get the public identifier for this input source. - * - * @return The public identifier, or null if none was supplied. - * @see #setPublicId - */ - public String getPublicId () - { - return publicId; - } - - - /** - * Set the system identifier for this input source. - * - *

The system identifier is optional if there is a byte stream - * or a character stream, but it is still useful to provide one, - * since the application can use it to resolve relative URIs - * and can include it in error messages and warnings (the parser - * will attempt to open a connection to the URI only if - * there is no byte stream or character stream specified).

- * - *

If the application knows the character encoding of the - * object pointed to by the system identifier, it can register - * the encoding using the setEncoding method.

- * - *

If the system identifier is a URL, it must be fully - * resolved (it may not be a relative URL).

- * - * @param systemId The system identifier as a string. - * @see #setEncoding - * @see #getSystemId - * @see org.xml.sax.Locator#getSystemId - * @see org.xml.sax.SAXParseException#getSystemId - */ - public void setSystemId (String systemId) - { - this.systemId = systemId; - } - - - /** - * Get the system identifier for this input source. - * - *

The getEncoding method will return the character encoding - * of the object pointed to, or null if unknown.

- * - *

If the system ID is a URL, it will be fully resolved.

- * - * @return The system identifier, or null if none was supplied. - * @see #setSystemId - * @see #getEncoding - */ - public String getSystemId () - { - return systemId; - } - - - /** - * Set the byte stream for this input source. - * - *

The SAX parser will ignore this if there is also a character - * stream specified, but it will use a byte stream in preference - * to opening a URI connection itself.

- * - *

If the application knows the character encoding of the - * byte stream, it should set it with the setEncoding method.

- * - * @param byteStream A byte stream containing an XML document or - * other entity. - * @see #setEncoding - * @see #getByteStream - * @see #getEncoding - * @see java.io.InputStream - */ - public void setByteStream (InputStream byteStream) - { - this.byteStream = byteStream; - } - - - /** - * Get the byte stream for this input source. - * - *

The getEncoding method will return the character - * encoding for this byte stream, or null if unknown.

- * - * @return The byte stream, or null if none was supplied. - * @see #getEncoding - * @see #setByteStream - */ - public InputStream getByteStream () - { - return byteStream; - } - - - /** - * Set the character encoding, if known. - * - *

The encoding must be a string acceptable for an - * XML encoding declaration (see section 4.3.3 of the XML 1.0 - * recommendation).

- * - *

This method has no effect when the application provides a - * character stream.

- * - * @param encoding A string describing the character encoding. - * @see #setSystemId - * @see #setByteStream - * @see #getEncoding - */ - public void setEncoding (String encoding) - { - this.encoding = encoding; - } - - - /** - * Get the character encoding for a byte stream or URI. - * This value will be ignored when the application provides a - * character stream. - * - * @return The encoding, or null if none was supplied. - * @see #setByteStream - * @see #getSystemId - * @see #getByteStream - */ - public String getEncoding () - { - return encoding; - } - - - /** - * Set the character stream for this input source. - * - *

If there is a character stream specified, the SAX parser - * will ignore any byte stream and will not attempt to open - * a URI connection to the system identifier.

- * - * @param characterStream The character stream containing the - * XML document or other entity. - * @see #getCharacterStream - * @see java.io.Reader - */ - public void setCharacterStream (Reader characterStream) - { - this.characterStream = characterStream; - } - - - /** - * Get the character stream for this input source. - * - * @return The character stream, or null if none was supplied. - * @see #setCharacterStream - */ - public Reader getCharacterStream () - { - return characterStream; - } - - - - //////////////////////////////////////////////////////////////////// - // Internal state. - //////////////////////////////////////////////////////////////////// - - private String publicId; - private String systemId; - private InputStream byteStream; - private String encoding; - private Reader characterStream; - -} - -// end of InputSource.java diff --git a/libjava/external/sax/org/xml/sax/Locator.java b/libjava/external/sax/org/xml/sax/Locator.java deleted file mode 100644 index 63947df7ac7..00000000000 --- a/libjava/external/sax/org/xml/sax/Locator.java +++ /dev/null @@ -1,136 +0,0 @@ -// SAX locator interface for document events. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: Locator.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - - -/** - * Interface for associating a SAX event with a document location. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

If a SAX parser provides location information to the SAX - * application, it does so by implementing this interface and then - * passing an instance to the application using the content - * handler's {@link org.xml.sax.ContentHandler#setDocumentLocator - * setDocumentLocator} method. The application can use the - * object to obtain the location of any other SAX event - * in the XML source document.

- * - *

Note that the results returned by the object will be valid only - * during the scope of each callback method: the application - * will receive unpredictable results if it attempts to use the - * locator at any other time, or after parsing completes.

- * - *

SAX parsers are not required to supply a locator, but they are - * very strongly encouraged to do so. If the parser supplies a - * locator, it must do so before reporting any other document events. - * If no locator has been set by the time the application receives - * the {@link org.xml.sax.ContentHandler#startDocument startDocument} - * event, the application should assume that a locator is not - * available.

- * - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.ContentHandler#setDocumentLocator - */ -public interface Locator { - - - /** - * Return the public identifier for the current document event. - * - *

The return value is the public identifier of the document - * entity or of the external parsed entity in which the markup - * triggering the event appears.

- * - * @return A string containing the public identifier, or - * null if none is available. - * @see #getSystemId - */ - public abstract String getPublicId (); - - - /** - * Return the system identifier for the current document event. - * - *

The return value is the system identifier of the document - * entity or of the external parsed entity in which the markup - * triggering the event appears.

- * - *

If the system identifier is a URL, the parser must resolve it - * fully before passing it to the application. For example, a file - * name must always be provided as a file:... URL, and other - * kinds of relative URI are also resolved against their bases.

- * - * @return A string containing the system identifier, or null - * if none is available. - * @see #getPublicId - */ - public abstract String getSystemId (); - - - /** - * Return the line number where the current document event ends. - * Lines are delimited by line ends, which are defined in - * the XML specification. - * - *

Warning: The return value from the method - * is intended only as an approximation for the sake of diagnostics; - * it is not intended to provide sufficient information - * to edit the character content of the original XML document. - * In some cases, these "line" numbers match what would be displayed - * as columns, and in others they may not match the source text - * due to internal entity expansion.

- * - *

The return value is an approximation of the line number - * in the document entity or external parsed entity where the - * markup triggering the event appears.

- * - *

If possible, the SAX driver should provide the line position - * of the first character after the text associated with the document - * event. The first line is line 1.

- * - * @return The line number, or -1 if none is available. - * @see #getColumnNumber - */ - public abstract int getLineNumber (); - - - /** - * Return the column number where the current document event ends. - * This is one-based number of Java char values since - * the last line end. - * - *

Warning: The return value from the method - * is intended only as an approximation for the sake of diagnostics; - * it is not intended to provide sufficient information - * to edit the character content of the original XML document. - * For example, when lines contain combining character sequences, wide - * characters, surrogate pairs, or bi-directional text, the value may - * not correspond to the column in a text editor's display.

- * - *

The return value is an approximation of the column number - * in the document entity or external parsed entity where the - * markup triggering the event appears.

- * - *

If possible, the SAX driver should provide the line position - * of the first character after the text associated with the document - * event. The first column in each line is column 1.

- * - * @return The column number, or -1 if none is available. - * @see #getLineNumber - */ - public abstract int getColumnNumber (); - -} - -// end of Locator.java diff --git a/libjava/external/sax/org/xml/sax/Parser.java b/libjava/external/sax/org/xml/sax/Parser.java deleted file mode 100644 index 5866eb09ce1..00000000000 --- a/libjava/external/sax/org/xml/sax/Parser.java +++ /dev/null @@ -1,209 +0,0 @@ -// SAX parser interface. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: Parser.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - -import java.io.IOException; -import java.util.Locale; - - -/** - * Basic interface for SAX (Simple API for XML) parsers. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This was the main event supplier interface for SAX1; it has - * been replaced in SAX2 by {@link org.xml.sax.XMLReader XMLReader}, - * which includes Namespace support and sophisticated configurability - * and extensibility.

- * - *

All SAX1 parsers must implement this basic interface: it allows - * applications to register handlers for different types of events - * and to initiate a parse from a URI, or a character stream.

- * - *

All SAX1 parsers must also implement a zero-argument constructor - * (though other constructors are also allowed).

- * - *

SAX1 parsers are reusable but not re-entrant: the application - * may reuse a parser object (possibly with a different input source) - * once the first parse has completed successfully, but it may not - * invoke the parse() methods recursively within a parse.

- * - * @deprecated This interface has been replaced by the SAX2 - * {@link org.xml.sax.XMLReader XMLReader} - * interface, which includes Namespace support. - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.EntityResolver - * @see org.xml.sax.DTDHandler - * @see org.xml.sax.DocumentHandler - * @see org.xml.sax.ErrorHandler - * @see org.xml.sax.HandlerBase - * @see org.xml.sax.InputSource - */ -public interface Parser -{ - - /** - * Allow an application to request a locale for errors and warnings. - * - *

SAX parsers are not required to provide localisation for errors - * and warnings; if they cannot support the requested locale, - * however, they must throw a SAX exception. Applications may - * not request a locale change in the middle of a parse.

- * - * @param locale A Java Locale object. - * @exception org.xml.sax.SAXException Throws an exception - * (using the previous or default locale) if the - * requested locale is not supported. - * @see org.xml.sax.SAXException - * @see org.xml.sax.SAXParseException - */ - public abstract void setLocale (Locale locale) - throws SAXException; - - - /** - * Allow an application to register a custom entity resolver. - * - *

If the application does not register an entity resolver, the - * SAX parser will resolve system identifiers and open connections - * to entities itself (this is the default behaviour implemented in - * HandlerBase).

- * - *

Applications may register a new or different entity resolver - * in the middle of a parse, and the SAX parser must begin using - * the new resolver immediately.

- * - * @param resolver The object for resolving entities. - * @see EntityResolver - * @see HandlerBase - */ - public abstract void setEntityResolver (EntityResolver resolver); - - - /** - * Allow an application to register a DTD event handler. - * - *

If the application does not register a DTD handler, all DTD - * events reported by the SAX parser will be silently - * ignored (this is the default behaviour implemented by - * HandlerBase).

- * - *

Applications may register a new or different - * handler in the middle of a parse, and the SAX parser must - * begin using the new handler immediately.

- * - * @param handler The DTD handler. - * @see DTDHandler - * @see HandlerBase - */ - public abstract void setDTDHandler (DTDHandler handler); - - - /** - * Allow an application to register a document event handler. - * - *

If the application does not register a document handler, all - * document events reported by the SAX parser will be silently - * ignored (this is the default behaviour implemented by - * HandlerBase).

- * - *

Applications may register a new or different handler in the - * middle of a parse, and the SAX parser must begin using the new - * handler immediately.

- * - * @param handler The document handler. - * @see DocumentHandler - * @see HandlerBase - */ - public abstract void setDocumentHandler (DocumentHandler handler); - - - /** - * Allow an application to register an error event handler. - * - *

If the application does not register an error event handler, - * all error events reported by the SAX parser will be silently - * ignored, except for fatalError, which will throw a SAXException - * (this is the default behaviour implemented by HandlerBase).

- * - *

Applications may register a new or different handler in the - * middle of a parse, and the SAX parser must begin using the new - * handler immediately.

- * - * @param handler The error handler. - * @see ErrorHandler - * @see SAXException - * @see HandlerBase - */ - public abstract void setErrorHandler (ErrorHandler handler); - - - /** - * Parse an XML document. - * - *

The application can use this method to instruct the SAX parser - * to begin parsing an XML document from any valid input - * source (a character stream, a byte stream, or a URI).

- * - *

Applications may not invoke this method while a parse is in - * progress (they should create a new Parser instead for each - * additional XML document). Once a parse is complete, an - * application may reuse the same Parser object, possibly with a - * different input source.

- * - * @param source The input source for the top-level of the - * XML document. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @exception java.io.IOException An IO exception from the parser, - * possibly from a byte stream or character stream - * supplied by the application. - * @see org.xml.sax.InputSource - * @see #parse(java.lang.String) - * @see #setEntityResolver - * @see #setDTDHandler - * @see #setDocumentHandler - * @see #setErrorHandler - */ - public abstract void parse (InputSource source) - throws SAXException, IOException; - - - /** - * Parse an XML document from a system identifier (URI). - * - *

This method is a shortcut for the common case of reading a - * document from a system identifier. It is the exact - * equivalent of the following:

- * - *
-     * parse(new InputSource(systemId));
-     * 
- * - *

If the system identifier is a URL, it must be fully resolved - * by the application before it is passed to the parser.

- * - * @param systemId The system identifier (URI). - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @exception java.io.IOException An IO exception from the parser, - * possibly from a byte stream or character stream - * supplied by the application. - * @see #parse(org.xml.sax.InputSource) - */ - public abstract void parse (String systemId) - throws SAXException, IOException; - -} - -// end of Parser.java diff --git a/libjava/external/sax/org/xml/sax/SAXException.java b/libjava/external/sax/org/xml/sax/SAXException.java deleted file mode 100644 index b3c23e9aedb..00000000000 --- a/libjava/external/sax/org/xml/sax/SAXException.java +++ /dev/null @@ -1,153 +0,0 @@ -// SAX exception class. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: SAXException.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - -/** - * Encapsulate a general SAX error or warning. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This class can contain basic error or warning information from - * either the XML parser or the application: a parser writer or - * application writer can subclass it to provide additional - * functionality. SAX handlers may throw this exception or - * any exception subclassed from it.

- * - *

If the application needs to pass through other types of - * exceptions, it must wrap those exceptions in a SAXException - * or an exception derived from a SAXException.

- * - *

If the parser or application needs to include information about a - * specific location in an XML document, it should use the - * {@link org.xml.sax.SAXParseException SAXParseException} subclass.

- * - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.SAXParseException - */ -public class SAXException extends Exception { - - - /** - * Create a new SAXException. - */ - public SAXException () - { - super(); - this.exception = null; - } - - - /** - * Create a new SAXException. - * - * @param message The error or warning message. - */ - public SAXException (String message) { - super(message); - this.exception = null; - } - - - /** - * Create a new SAXException wrapping an existing exception. - * - *

The existing exception will be embedded in the new - * one, and its message will become the default message for - * the SAXException.

- * - * @param e The exception to be wrapped in a SAXException. - */ - public SAXException (Exception e) - { - super(); - this.exception = e; - } - - - /** - * Create a new SAXException from an existing exception. - * - *

The existing exception will be embedded in the new - * one, but the new exception will have its own message.

- * - * @param message The detail message. - * @param e The exception to be wrapped in a SAXException. - */ - public SAXException (String message, Exception e) - { - super(message); - this.exception = e; - } - - - /** - * Return a detail message for this exception. - * - *

If there is an embedded exception, and if the SAXException - * has no detail message of its own, this method will return - * the detail message from the embedded exception.

- * - * @return The error or warning message. - */ - public String getMessage () - { - String message = super.getMessage(); - - if (message == null && exception != null) { - return exception.getMessage(); - } else { - return message; - } - } - - - /** - * Return the embedded exception, if any. - * - * @return The embedded exception, or null if there is none. - */ - public Exception getException () - { - return exception; - } - - - /** - * Override toString to pick up any embedded exception. - * - * @return A string representation of this exception. - */ - public String toString () - { - if (exception != null) { - return exception.toString(); - } else { - return super.toString(); - } - } - - - - ////////////////////////////////////////////////////////////////////// - // Internal state. - ////////////////////////////////////////////////////////////////////// - - - /** - * @serial The embedded exception if tunnelling, or null. - */ - private Exception exception; - -} - -// end of SAXException.java diff --git a/libjava/external/sax/org/xml/sax/SAXNotRecognizedException.java b/libjava/external/sax/org/xml/sax/SAXNotRecognizedException.java deleted file mode 100644 index dc411b105ce..00000000000 --- a/libjava/external/sax/org/xml/sax/SAXNotRecognizedException.java +++ /dev/null @@ -1,53 +0,0 @@ -// SAXNotRecognizedException.java - unrecognized feature or value. -// http://www.saxproject.org -// Written by David Megginson -// NO WARRANTY! This class is in the Public Domain. -// $Id: SAXNotRecognizedException.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - - -/** - * Exception class for an unrecognized identifier. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

An XMLReader will throw this exception when it finds an - * unrecognized feature or property identifier; SAX applications and - * extensions may use this class for other, similar purposes.

- * - * @since SAX 2.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.SAXNotSupportedException - */ -public class SAXNotRecognizedException extends SAXException -{ - - /** - * Default constructor. - */ - public SAXNotRecognizedException () - { - super(); - } - - - /** - * Construct a new exception with the given message. - * - * @param message The text message of the exception. - */ - public SAXNotRecognizedException (String message) - { - super(message); - } - -} - -// end of SAXNotRecognizedException.java diff --git a/libjava/external/sax/org/xml/sax/SAXNotSupportedException.java b/libjava/external/sax/org/xml/sax/SAXNotSupportedException.java deleted file mode 100644 index 232ce8026de..00000000000 --- a/libjava/external/sax/org/xml/sax/SAXNotSupportedException.java +++ /dev/null @@ -1,53 +0,0 @@ -// SAXNotSupportedException.java - unsupported feature or value. -// http://www.saxproject.org -// Written by David Megginson -// NO WARRANTY! This class is in the Public Domain. -// $Id: SAXNotSupportedException.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - -/** - * Exception class for an unsupported operation. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

An XMLReader will throw this exception when it recognizes a - * feature or property identifier, but cannot perform the requested - * operation (setting a state or value). Other SAX2 applications and - * extensions may use this class for similar purposes.

- * - * @since SAX 2.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.SAXNotRecognizedException - */ -public class SAXNotSupportedException extends SAXException -{ - - /** - * Construct a new exception with no message. - */ - public SAXNotSupportedException () - { - super(); - } - - - /** - * Construct a new exception with the given message. - * - * @param message The text message of the exception. - */ - public SAXNotSupportedException (String message) - { - super(message); - } - -} - -// end of SAXNotSupportedException.java diff --git a/libjava/external/sax/org/xml/sax/SAXParseException.java b/libjava/external/sax/org/xml/sax/SAXParseException.java deleted file mode 100644 index c49ff095be3..00000000000 --- a/libjava/external/sax/org/xml/sax/SAXParseException.java +++ /dev/null @@ -1,269 +0,0 @@ -// SAX exception class. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: SAXParseException.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - -/** - * Encapsulate an XML parse error or warning. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This exception may include information for locating the error - * in the original XML document, as if it came from a {@link Locator} - * object. Note that although the application - * will receive a SAXParseException as the argument to the handlers - * in the {@link org.xml.sax.ErrorHandler ErrorHandler} interface, - * the application is not actually required to throw the exception; - * instead, it can simply read the information in it and take a - * different action.

- * - *

Since this exception is a subclass of {@link org.xml.sax.SAXException - * SAXException}, it inherits the ability to wrap another exception.

- * - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.SAXException - * @see org.xml.sax.Locator - * @see org.xml.sax.ErrorHandler - */ -public class SAXParseException extends SAXException { - - - ////////////////////////////////////////////////////////////////////// - // Constructors. - ////////////////////////////////////////////////////////////////////// - - - /** - * Create a new SAXParseException from a message and a Locator. - * - *

This constructor is especially useful when an application is - * creating its own exception from within a {@link org.xml.sax.ContentHandler - * ContentHandler} callback.

- * - * @param message The error or warning message. - * @param locator The locator object for the error or warning (may be - * null). - * @see org.xml.sax.Locator - */ - public SAXParseException (String message, Locator locator) { - super(message); - if (locator != null) { - init(locator.getPublicId(), locator.getSystemId(), - locator.getLineNumber(), locator.getColumnNumber()); - } else { - init(null, null, -1, -1); - } - } - - - /** - * Wrap an existing exception in a SAXParseException. - * - *

This constructor is especially useful when an application is - * creating its own exception from within a {@link org.xml.sax.ContentHandler - * ContentHandler} callback, and needs to wrap an existing exception that is not a - * subclass of {@link org.xml.sax.SAXException SAXException}.

- * - * @param message The error or warning message, or null to - * use the message from the embedded exception. - * @param locator The locator object for the error or warning (may be - * null). - * @param e Any exception. - * @see org.xml.sax.Locator - */ - public SAXParseException (String message, Locator locator, - Exception e) { - super(message, e); - if (locator != null) { - init(locator.getPublicId(), locator.getSystemId(), - locator.getLineNumber(), locator.getColumnNumber()); - } else { - init(null, null, -1, -1); - } - } - - - /** - * Create a new SAXParseException. - * - *

This constructor is most useful for parser writers.

- * - *

All parameters except the message are as if - * they were provided by a {@link Locator}. For example, if the - * system identifier is a URL (including relative filename), the - * caller must resolve it fully before creating the exception.

- * - * - * @param message The error or warning message. - * @param publicId The public identifier of the entity that generated - * the error or warning. - * @param systemId The system identifier of the entity that generated - * the error or warning. - * @param lineNumber The line number of the end of the text that - * caused the error or warning. - * @param columnNumber The column number of the end of the text that - * cause the error or warning. - */ - public SAXParseException (String message, String publicId, String systemId, - int lineNumber, int columnNumber) - { - super(message); - init(publicId, systemId, lineNumber, columnNumber); - } - - - /** - * Create a new SAXParseException with an embedded exception. - * - *

This constructor is most useful for parser writers who - * need to wrap an exception that is not a subclass of - * {@link org.xml.sax.SAXException SAXException}.

- * - *

All parameters except the message and exception are as if - * they were provided by a {@link Locator}. For example, if the - * system identifier is a URL (including relative filename), the - * caller must resolve it fully before creating the exception.

- * - * @param message The error or warning message, or null to use - * the message from the embedded exception. - * @param publicId The public identifier of the entity that generated - * the error or warning. - * @param systemId The system identifier of the entity that generated - * the error or warning. - * @param lineNumber The line number of the end of the text that - * caused the error or warning. - * @param columnNumber The column number of the end of the text that - * cause the error or warning. - * @param e Another exception to embed in this one. - */ - public SAXParseException (String message, String publicId, String systemId, - int lineNumber, int columnNumber, Exception e) - { - super(message, e); - init(publicId, systemId, lineNumber, columnNumber); - } - - - /** - * Internal initialization method. - * - * @param publicId The public identifier of the entity which generated the exception, - * or null. - * @param systemId The system identifier of the entity which generated the exception, - * or null. - * @param lineNumber The line number of the error, or -1. - * @param columnNumber The column number of the error, or -1. - */ - private void init (String publicId, String systemId, - int lineNumber, int columnNumber) - { - this.publicId = publicId; - this.systemId = systemId; - this.lineNumber = lineNumber; - this.columnNumber = columnNumber; - } - - - /** - * Get the public identifier of the entity where the exception occurred. - * - * @return A string containing the public identifier, or null - * if none is available. - * @see org.xml.sax.Locator#getPublicId - */ - public String getPublicId () - { - return this.publicId; - } - - - /** - * Get the system identifier of the entity where the exception occurred. - * - *

If the system identifier is a URL, it will have been resolved - * fully.

- * - * @return A string containing the system identifier, or null - * if none is available. - * @see org.xml.sax.Locator#getSystemId - */ - public String getSystemId () - { - return this.systemId; - } - - - /** - * The line number of the end of the text where the exception occurred. - * - *

The first line is line 1.

- * - * @return An integer representing the line number, or -1 - * if none is available. - * @see org.xml.sax.Locator#getLineNumber - */ - public int getLineNumber () - { - return this.lineNumber; - } - - - /** - * The column number of the end of the text where the exception occurred. - * - *

The first column in a line is position 1.

- * - * @return An integer representing the column number, or -1 - * if none is available. - * @see org.xml.sax.Locator#getColumnNumber - */ - public int getColumnNumber () - { - return this.columnNumber; - } - - - ////////////////////////////////////////////////////////////////////// - // Internal state. - ////////////////////////////////////////////////////////////////////// - - - /** - * @serial The public identifier, or null. - * @see #getPublicId - */ - private String publicId; - - - /** - * @serial The system identifier, or null. - * @see #getSystemId - */ - private String systemId; - - - /** - * @serial The line number, or -1. - * @see #getLineNumber - */ - private int lineNumber; - - - /** - * @serial The column number, or -1. - * @see #getColumnNumber - */ - private int columnNumber; - -} - -// end of SAXParseException.java diff --git a/libjava/external/sax/org/xml/sax/XMLFilter.java b/libjava/external/sax/org/xml/sax/XMLFilter.java deleted file mode 100644 index 363328e2d55..00000000000 --- a/libjava/external/sax/org/xml/sax/XMLFilter.java +++ /dev/null @@ -1,65 +0,0 @@ -// XMLFilter.java - filter SAX2 events. -// http://www.saxproject.org -// Written by David Megginson -// NO WARRANTY! This class is in the Public Domain. -// $Id: XMLFilter.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - - -/** - * Interface for an XML filter. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

An XML filter is like an XML reader, except that it obtains its - * events from another XML reader rather than a primary source like - * an XML document or database. Filters can modify a stream of - * events as they pass on to the final application.

- * - *

The XMLFilterImpl helper class provides a convenient base - * for creating SAX2 filters, by passing on all {@link org.xml.sax.EntityResolver - * EntityResolver}, {@link org.xml.sax.DTDHandler DTDHandler}, - * {@link org.xml.sax.ContentHandler ContentHandler} and {@link org.xml.sax.ErrorHandler - * ErrorHandler} events automatically.

- * - * @since SAX 2.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.helpers.XMLFilterImpl - */ -public interface XMLFilter extends XMLReader -{ - - /** - * Set the parent reader. - * - *

This method allows the application to link the filter to - * a parent reader (which may be another filter). The argument - * may not be null.

- * - * @param parent The parent reader. - */ - public abstract void setParent (XMLReader parent); - - - /** - * Get the parent reader. - * - *

This method allows the application to query the parent - * reader (which may be another filter). It is generally a - * bad idea to perform any operations on the parent reader - * directly: they should all pass through this filter.

- * - * @return The parent filter, or null if none has been set. - */ - public abstract XMLReader getParent (); - -} - -// end of XMLFilter.java diff --git a/libjava/external/sax/org/xml/sax/XMLReader.java b/libjava/external/sax/org/xml/sax/XMLReader.java deleted file mode 100644 index 92d0a94e3d1..00000000000 --- a/libjava/external/sax/org/xml/sax/XMLReader.java +++ /dev/null @@ -1,404 +0,0 @@ -// XMLReader.java - read an XML document. -// http://www.saxproject.org -// Written by David Megginson -// NO WARRANTY! This class is in the Public Domain. -// $Id: XMLReader.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax; - -import java.io.IOException; - - -/** - * Interface for reading an XML document using callbacks. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

Note: despite its name, this interface does - * not extend the standard Java {@link java.io.Reader Reader} - * interface, because reading XML is a fundamentally different activity - * than reading character data.

- * - *

XMLReader is the interface that an XML parser's SAX2 driver must - * implement. This interface allows an application to set and - * query features and properties in the parser, to register - * event handlers for document processing, and to initiate - * a document parse.

- * - *

All SAX interfaces are assumed to be synchronous: the - * {@link #parse parse} methods must not return until parsing - * is complete, and readers must wait for an event-handler callback - * to return before reporting the next event.

- * - *

This interface replaces the (now deprecated) SAX 1.0 {@link - * org.xml.sax.Parser Parser} interface. The XMLReader interface - * contains two important enhancements over the old Parser - * interface (as well as some minor ones):

- * - *
    - *
  1. it adds a standard way to query and set features and - * properties; and
  2. - *
  3. it adds Namespace support, which is required for many - * higher-level XML standards.
  4. - *
- * - *

There are adapters available to convert a SAX1 Parser to - * a SAX2 XMLReader and vice-versa.

- * - * @since SAX 2.0 - * @author David Megginson - * @version 2.0.1+ (sax2r3pre1) - * @see org.xml.sax.XMLFilter - * @see org.xml.sax.helpers.ParserAdapter - * @see org.xml.sax.helpers.XMLReaderAdapter - */ -public interface XMLReader -{ - - - //////////////////////////////////////////////////////////////////// - // Configuration. - //////////////////////////////////////////////////////////////////// - - - /** - * Look up the value of a feature flag. - * - *

The feature name is any fully-qualified URI. It is - * possible for an XMLReader to recognize a feature name but - * temporarily be unable to return its value. - * Some feature values may be available only in specific - * contexts, such as before, during, or after a parse. - * Also, some feature values may not be programmatically accessible. - * (In the case of an adapter for SAX1 {@link Parser}, there is no - * implementation-independent way to expose whether the underlying - * parser is performing validation, expanding external entities, - * and so forth.)

- * - *

All XMLReaders are required to recognize the - * http://xml.org/sax/features/namespaces and the - * http://xml.org/sax/features/namespace-prefixes feature names.

- * - *

Typical usage is something like this:

- * - *
-     * XMLReader r = new MySAXDriver();
-     *
-     *                         // try to activate validation
-     * try {
-     *   r.setFeature("http://xml.org/sax/features/validation", true);
-     * } catch (SAXException e) {
-     *   System.err.println("Cannot activate validation."); 
-     * }
-     *
-     *                         // register event handlers
-     * r.setContentHandler(new MyContentHandler());
-     * r.setErrorHandler(new MyErrorHandler());
-     *
-     *                         // parse the first document
-     * try {
-     *   r.parse("http://www.foo.com/mydoc.xml");
-     * } catch (IOException e) {
-     *   System.err.println("I/O exception reading XML document");
-     * } catch (SAXException e) {
-     *   System.err.println("XML exception reading document.");
-     * }
-     * 
- * - *

Implementors are free (and encouraged) to invent their own features, - * using names built on their own URIs.

- * - * @param name The feature name, which is a fully-qualified URI. - * @return The current value of the feature (true or false). - * @exception org.xml.sax.SAXNotRecognizedException If the feature - * value can't be assigned or retrieved. - * @exception org.xml.sax.SAXNotSupportedException When the - * XMLReader recognizes the feature name but - * cannot determine its value at this time. - * @see #setFeature - */ - public boolean getFeature (String name) - throws SAXNotRecognizedException, SAXNotSupportedException; - - - /** - * Set the value of a feature flag. - * - *

The feature name is any fully-qualified URI. It is - * possible for an XMLReader to expose a feature value but - * to be unable to change the current value. - * Some feature values may be immutable or mutable only - * in specific contexts, such as before, during, or after - * a parse.

- * - *

All XMLReaders are required to support setting - * http://xml.org/sax/features/namespaces to true and - * http://xml.org/sax/features/namespace-prefixes to false.

- * - * @param name The feature name, which is a fully-qualified URI. - * @param value The requested value of the feature (true or false). - * @exception org.xml.sax.SAXNotRecognizedException If the feature - * value can't be assigned or retrieved. - * @exception org.xml.sax.SAXNotSupportedException When the - * XMLReader recognizes the feature name but - * cannot set the requested value. - * @see #getFeature - */ - public void setFeature (String name, boolean value) - throws SAXNotRecognizedException, SAXNotSupportedException; - - - /** - * Look up the value of a property. - * - *

The property name is any fully-qualified URI. It is - * possible for an XMLReader to recognize a property name but - * temporarily be unable to return its value. - * Some property values may be available only in specific - * contexts, such as before, during, or after a parse.

- * - *

XMLReaders are not required to recognize any specific - * property names, though an initial core set is documented for - * SAX2.

- * - *

Implementors are free (and encouraged) to invent their own properties, - * using names built on their own URIs.

- * - * @param name The property name, which is a fully-qualified URI. - * @return The current value of the property. - * @exception org.xml.sax.SAXNotRecognizedException If the property - * value can't be assigned or retrieved. - * @exception org.xml.sax.SAXNotSupportedException When the - * XMLReader recognizes the property name but - * cannot determine its value at this time. - * @see #setProperty - */ - public Object getProperty (String name) - throws SAXNotRecognizedException, SAXNotSupportedException; - - - /** - * Set the value of a property. - * - *

The property name is any fully-qualified URI. It is - * possible for an XMLReader to recognize a property name but - * to be unable to change the current value. - * Some property values may be immutable or mutable only - * in specific contexts, such as before, during, or after - * a parse.

- * - *

XMLReaders are not required to recognize setting - * any specific property names, though a core set is defined by - * SAX2.

- * - *

This method is also the standard mechanism for setting - * extended handlers.

- * - * @param name The property name, which is a fully-qualified URI. - * @param value The requested value for the property. - * @exception org.xml.sax.SAXNotRecognizedException If the property - * value can't be assigned or retrieved. - * @exception org.xml.sax.SAXNotSupportedException When the - * XMLReader recognizes the property name but - * cannot set the requested value. - */ - public void setProperty (String name, Object value) - throws SAXNotRecognizedException, SAXNotSupportedException; - - - - //////////////////////////////////////////////////////////////////// - // Event handlers. - //////////////////////////////////////////////////////////////////// - - - /** - * Allow an application to register an entity resolver. - * - *

If the application does not register an entity resolver, - * the XMLReader will perform its own default resolution.

- * - *

Applications may register a new or different resolver in the - * middle of a parse, and the SAX parser must begin using the new - * resolver immediately.

- * - * @param resolver The entity resolver. - * @see #getEntityResolver - */ - public void setEntityResolver (EntityResolver resolver); - - - /** - * Return the current entity resolver. - * - * @return The current entity resolver, or null if none - * has been registered. - * @see #setEntityResolver - */ - public EntityResolver getEntityResolver (); - - - /** - * Allow an application to register a DTD event handler. - * - *

If the application does not register a DTD handler, all DTD - * events reported by the SAX parser will be silently ignored.

- * - *

Applications may register a new or different handler in the - * middle of a parse, and the SAX parser must begin using the new - * handler immediately.

- * - * @param handler The DTD handler. - * @see #getDTDHandler - */ - public void setDTDHandler (DTDHandler handler); - - - /** - * Return the current DTD handler. - * - * @return The current DTD handler, or null if none - * has been registered. - * @see #setDTDHandler - */ - public DTDHandler getDTDHandler (); - - - /** - * Allow an application to register a content event handler. - * - *

If the application does not register a content handler, all - * content events reported by the SAX parser will be silently - * ignored.

- * - *

Applications may register a new or different handler in the - * middle of a parse, and the SAX parser must begin using the new - * handler immediately.

- * - * @param handler The content handler. - * @see #getContentHandler - */ - public void setContentHandler (ContentHandler handler); - - - /** - * Return the current content handler. - * - * @return The current content handler, or null if none - * has been registered. - * @see #setContentHandler - */ - public ContentHandler getContentHandler (); - - - /** - * Allow an application to register an error event handler. - * - *

If the application does not register an error handler, all - * error events reported by the SAX parser will be silently - * ignored; however, normal processing may not continue. It is - * highly recommended that all SAX applications implement an - * error handler to avoid unexpected bugs.

- * - *

Applications may register a new or different handler in the - * middle of a parse, and the SAX parser must begin using the new - * handler immediately.

- * - * @param handler The error handler. - * @see #getErrorHandler - */ - public void setErrorHandler (ErrorHandler handler); - - - /** - * Return the current error handler. - * - * @return The current error handler, or null if none - * has been registered. - * @see #setErrorHandler - */ - public ErrorHandler getErrorHandler (); - - - - //////////////////////////////////////////////////////////////////// - // Parsing. - //////////////////////////////////////////////////////////////////// - - /** - * Parse an XML document. - * - *

The application can use this method to instruct the XML - * reader to begin parsing an XML document from any valid input - * source (a character stream, a byte stream, or a URI).

- * - *

Applications may not invoke this method while a parse is in - * progress (they should create a new XMLReader instead for each - * nested XML document). Once a parse is complete, an - * application may reuse the same XMLReader object, possibly with a - * different input source. - * Configuration of the XMLReader object (such as handler bindings and - * values established for feature flags and properties) is unchanged - * by completion of a parse, unless the definition of that aspect of - * the configuration explicitly specifies other behavior. - * (For example, feature flags or properties exposing - * characteristics of the document being parsed.) - *

- * - *

During the parse, the XMLReader will provide information - * about the XML document through the registered event - * handlers.

- * - *

This method is synchronous: it will not return until parsing - * has ended. If a client application wants to terminate - * parsing early, it should throw an exception.

- * - * @param input The input source for the top-level of the - * XML document. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @exception java.io.IOException An IO exception from the parser, - * possibly from a byte stream or character stream - * supplied by the application. - * @see org.xml.sax.InputSource - * @see #parse(java.lang.String) - * @see #setEntityResolver - * @see #setDTDHandler - * @see #setContentHandler - * @see #setErrorHandler - */ - public void parse (InputSource input) - throws IOException, SAXException; - - - /** - * Parse an XML document from a system identifier (URI). - * - *

This method is a shortcut for the common case of reading a - * document from a system identifier. It is the exact - * equivalent of the following:

- * - *
-     * parse(new InputSource(systemId));
-     * 
- * - *

If the system identifier is a URL, it must be fully resolved - * by the application before it is passed to the parser.

- * - * @param systemId The system identifier (URI). - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @exception java.io.IOException An IO exception from the parser, - * possibly from a byte stream or character stream - * supplied by the application. - * @see #parse(org.xml.sax.InputSource) - */ - public void parse (String systemId) - throws IOException, SAXException; - -} diff --git a/libjava/external/sax/org/xml/sax/ext/Attributes2.java b/libjava/external/sax/org/xml/sax/ext/Attributes2.java deleted file mode 100644 index 5c839bd1acf..00000000000 --- a/libjava/external/sax/org/xml/sax/ext/Attributes2.java +++ /dev/null @@ -1,132 +0,0 @@ -// Attributes2.java - extended Attributes -// http://www.saxproject.org -// Public Domain: no warranty. -// $Id: Attributes2.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.ext; - -import org.xml.sax.Attributes; - - -/** - * SAX2 extension to augment the per-attribute information - * provided though {@link Attributes}. - * If an implementation supports this extension, the attributes - * provided in {@link org.xml.sax.ContentHandler#startElement - * ContentHandler.startElement() } will implement this interface, - * and the http://xml.org/sax/features/use-attributes2 - * feature flag will have the value true. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - *
- * - *

XMLReader implementations are not required to support this - * information, and it is not part of core-only SAX2 distributions.

- * - *

Note that if an attribute was defaulted (!isSpecified()) - * it will of necessity also have been declared (isDeclared()) - * in the DTD. - * Similarly if an attribute's type is anything except CDATA, then it - * must have been declared. - *

- * - * @since SAX 2.0 (extensions 1.1 alpha) - * @author David Brownell - * @version TBS - */ -public interface Attributes2 extends Attributes -{ - /** - * Returns false unless the attribute was declared in the DTD. - * This helps distinguish two kinds of attributes that SAX reports - * as CDATA: ones that were declared (and hence are usually valid), - * and those that were not (and which are never valid). - * - * @param index The attribute index (zero-based). - * @return true if the attribute was declared in the DTD, - * false otherwise. - * @exception java.lang.ArrayIndexOutOfBoundsException When the - * supplied index does not identify an attribute. - */ - public boolean isDeclared (int index); - - /** - * Returns false unless the attribute was declared in the DTD. - * This helps distinguish two kinds of attributes that SAX reports - * as CDATA: ones that were declared (and hence are usually valid), - * and those that were not (and which are never valid). - * - * @param qName The XML qualified (prefixed) name. - * @return true if the attribute was declared in the DTD, - * false otherwise. - * @exception java.lang.IllegalArgumentException When the - * supplied name does not identify an attribute. - */ - public boolean isDeclared (String qName); - - /** - * Returns false unless the attribute was declared in the DTD. - * This helps distinguish two kinds of attributes that SAX reports - * as CDATA: ones that were declared (and hence are usually valid), - * and those that were not (and which are never valid). - * - *

Remember that since DTDs do not "understand" namespaces, the - * namespace URI associated with an attribute may not have come from - * the DTD. The declaration will have applied to the attribute's - * qName. - * - * @param uri The Namespace URI, or the empty string if - * the name has no Namespace URI. - * @param localName The attribute's local name. - * @return true if the attribute was declared in the DTD, - * false otherwise. - * @exception java.lang.IllegalArgumentException When the - * supplied names do not identify an attribute. - */ - public boolean isDeclared (String uri, String localName); - - /** - * Returns true unless the attribute value was provided - * by DTD defaulting. - * - * @param index The attribute index (zero-based). - * @return true if the value was found in the XML text, - * false if the value was provided by DTD defaulting. - * @exception java.lang.ArrayIndexOutOfBoundsException When the - * supplied index does not identify an attribute. - */ - public boolean isSpecified (int index); - - /** - * Returns true unless the attribute value was provided - * by DTD defaulting. - * - *

Remember that since DTDs do not "understand" namespaces, the - * namespace URI associated with an attribute may not have come from - * the DTD. The declaration will have applied to the attribute's - * qName. - * - * @param uri The Namespace URI, or the empty string if - * the name has no Namespace URI. - * @param localName The attribute's local name. - * @return true if the value was found in the XML text, - * false if the value was provided by DTD defaulting. - * @exception java.lang.IllegalArgumentException When the - * supplied names do not identify an attribute. - */ - public boolean isSpecified (String uri, String localName); - - /** - * Returns true unless the attribute value was provided - * by DTD defaulting. - * - * @param qName The XML qualified (prefixed) name. - * @return true if the value was found in the XML text, - * false if the value was provided by DTD defaulting. - * @exception java.lang.IllegalArgumentException When the - * supplied name does not identify an attribute. - */ - public boolean isSpecified (String qName); -} diff --git a/libjava/external/sax/org/xml/sax/ext/Attributes2Impl.java b/libjava/external/sax/org/xml/sax/ext/Attributes2Impl.java deleted file mode 100644 index 485a5d6ac44..00000000000 --- a/libjava/external/sax/org/xml/sax/ext/Attributes2Impl.java +++ /dev/null @@ -1,301 +0,0 @@ -// Attributes2Impl.java - extended AttributesImpl -// http://www.saxproject.org -// Public Domain: no warranty. -// $Id: Attributes2Impl.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.ext; - -import org.xml.sax.Attributes; -import org.xml.sax.helpers.AttributesImpl; - - -/** - * SAX2 extension helper for additional Attributes information, - * implementing the {@link Attributes2} interface. - * - *

- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - *
- * - *

This is not part of core-only SAX2 distributions.

- * - *

The specified flag for each attribute will always - * be true, unless it has been set to false in the copy constructor - * or using {@link #setSpecified}. - * Similarly, the declared flag for each attribute will - * always be false, except for defaulted attributes (specified - * is false), non-CDATA attributes, or when it is set to true using - * {@link #setDeclared}. - * If you change an attribute's type by hand, you may need to modify - * its declared flag to match. - *

- * - * @since SAX 2.0 (extensions 1.1 alpha) - * @author David Brownell - * @version TBS - */ -public class Attributes2Impl extends AttributesImpl implements Attributes2 -{ - private boolean declared []; - private boolean specified []; - - - /** - * Construct a new, empty Attributes2Impl object. - */ - public Attributes2Impl () { } - - - /** - * Copy an existing Attributes or Attributes2 object. - * If the object implements Attributes2, values of the - * specified and declared flags for each - * attribute are copied. - * Otherwise the flag values are defaulted to assume no DTD was used, - * unless there is evidence to the contrary (such as attributes with - * type other than CDATA, which must have been declared). - * - *

This constructor is especially useful inside a - * {@link org.xml.sax.ContentHandler#startElement startElement} event.

- * - * @param atts The existing Attributes object. - */ - public Attributes2Impl (Attributes atts) - { - super (atts); - } - - - //////////////////////////////////////////////////////////////////// - // Implementation of Attributes2 - //////////////////////////////////////////////////////////////////// - - - /** - * Returns the current value of the attribute's "declared" flag. - */ - // javadoc mostly from interface - public boolean isDeclared (int index) - { - if (index < 0 || index >= getLength ()) - throw new ArrayIndexOutOfBoundsException ( - "No attribute at index: " + index); - return declared [index]; - } - - - /** - * Returns the current value of the attribute's "declared" flag. - */ - // javadoc mostly from interface - public boolean isDeclared (String uri, String localName) - { - int index = getIndex (uri, localName); - - if (index < 0) - throw new IllegalArgumentException ( - "No such attribute: local=" + localName - + ", namespace=" + uri); - return declared [index]; - } - - - /** - * Returns the current value of the attribute's "declared" flag. - */ - // javadoc mostly from interface - public boolean isDeclared (String qName) - { - int index = getIndex (qName); - - if (index < 0) - throw new IllegalArgumentException ( - "No such attribute: " + qName); - return declared [index]; - } - - - /** - * Returns the current value of an attribute's "specified" flag. - * - * @param index The attribute index (zero-based). - * @return current flag value - * @exception java.lang.ArrayIndexOutOfBoundsException When the - * supplied index does not identify an attribute. - */ - public boolean isSpecified (int index) - { - if (index < 0 || index >= getLength ()) - throw new ArrayIndexOutOfBoundsException ( - "No attribute at index: " + index); - return specified [index]; - } - - - /** - * Returns the current value of an attribute's "specified" flag. - * - * @param uri The Namespace URI, or the empty string if - * the name has no Namespace URI. - * @param localName The attribute's local name. - * @return current flag value - * @exception java.lang.IllegalArgumentException When the - * supplied names do not identify an attribute. - */ - public boolean isSpecified (String uri, String localName) - { - int index = getIndex (uri, localName); - - if (index < 0) - throw new IllegalArgumentException ( - "No such attribute: local=" + localName - + ", namespace=" + uri); - return specified [index]; - } - - - /** - * Returns the current value of an attribute's "specified" flag. - * - * @param qName The XML qualified (prefixed) name. - * @return current flag value - * @exception java.lang.IllegalArgumentException When the - * supplied name does not identify an attribute. - */ - public boolean isSpecified (String qName) - { - int index = getIndex (qName); - - if (index < 0) - throw new IllegalArgumentException ( - "No such attribute: " + qName); - return specified [index]; - } - - - //////////////////////////////////////////////////////////////////// - // Manipulators - //////////////////////////////////////////////////////////////////// - - - /** - * Copy an entire Attributes object. The "specified" flags are - * assigned as true, and "declared" flags as false (except when - * an attribute's type is not CDATA), - * unless the object is an Attributes2 object. - * In that case those flag values are all copied. - * - * @see AttributesImpl#setAttributes - */ - public void setAttributes (Attributes atts) - { - int length = atts.getLength (); - - super.setAttributes (atts); - declared = new boolean [length]; - specified = new boolean [length]; - - if (atts instanceof Attributes2) { - Attributes2 a2 = (Attributes2) atts; - for (int i = 0; i < length; i++) { - declared [i] = a2.isDeclared (i); - specified [i] = a2.isSpecified (i); - } - } else { - for (int i = 0; i < length; i++) { - declared [i] = !"CDATA".equals (atts.getType (i)); - specified [i] = true; - } - } - } - - - /** - * Add an attribute to the end of the list, setting its - * "specified" flag to true. To set that flag's value - * to false, use {@link #setSpecified}. - * - *

Unless the attribute type is CDATA, this attribute - * is marked as being declared in the DTD. To set that flag's value - * to true for CDATA attributes, use {@link #setDeclared}. - * - * @see AttributesImpl#addAttribute - */ - public void addAttribute (String uri, String localName, String qName, - String type, String value) - { - super.addAttribute (uri, localName, qName, type, value); - - int length = getLength (); - - if (length < specified.length) { - boolean newFlags []; - - newFlags = new boolean [length]; - System.arraycopy (declared, 0, newFlags, 0, declared.length); - declared = newFlags; - - newFlags = new boolean [length]; - System.arraycopy (specified, 0, newFlags, 0, specified.length); - specified = newFlags; - } - - specified [length - 1] = true; - declared [length - 1] = !"CDATA".equals (type); - } - - - // javadoc entirely from superclass - public void removeAttribute (int index) - { - int origMax = getLength () - 1; - - super.removeAttribute (index); - if (index != origMax) { - System.arraycopy (declared, index + 1, declared, index, - origMax - index); - System.arraycopy (specified, index + 1, specified, index, - origMax - index); - } - } - - - /** - * Assign a value to the "declared" flag of a specific attribute. - * This is normally needed only for attributes of type CDATA, - * including attributes whose type is changed to or from CDATA. - * - * @param index The index of the attribute (zero-based). - * @param value The desired flag value. - * @exception java.lang.ArrayIndexOutOfBoundsException When the - * supplied index does not identify an attribute. - * @see #setType - */ - public void setDeclared (int index, boolean value) - { - if (index < 0 || index >= getLength ()) - throw new ArrayIndexOutOfBoundsException ( - "No attribute at index: " + index); - declared [index] = value; - } - - - /** - * Assign a value to the "specified" flag of a specific attribute. - * This is the only way this flag can be cleared, except clearing - * by initialization with the copy constructor. - * - * @param index The index of the attribute (zero-based). - * @param value The desired flag value. - * @exception java.lang.ArrayIndexOutOfBoundsException When the - * supplied index does not identify an attribute. - */ - public void setSpecified (int index, boolean value) - { - if (index < 0 || index >= getLength ()) - throw new ArrayIndexOutOfBoundsException ( - "No attribute at index: " + index); - specified [index] = value; - } -} diff --git a/libjava/external/sax/org/xml/sax/ext/DeclHandler.java b/libjava/external/sax/org/xml/sax/ext/DeclHandler.java deleted file mode 100644 index 1bb4dea4a41..00000000000 --- a/libjava/external/sax/org/xml/sax/ext/DeclHandler.java +++ /dev/null @@ -1,146 +0,0 @@ -// DeclHandler.java - Optional handler for DTD declaration events. -// http://www.saxproject.org -// Public Domain: no warranty. -// $Id: DeclHandler.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.ext; - -import org.xml.sax.SAXException; - - -/** - * SAX2 extension handler for DTD declaration events. - * - *

- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This is an optional extension handler for SAX2 to provide more - * complete information about DTD declarations in an XML document. - * XML readers are not required to recognize this handler, and it - * is not part of core-only SAX2 distributions.

- * - *

Note that data-related DTD declarations (unparsed entities and - * notations) are already reported through the {@link - * org.xml.sax.DTDHandler DTDHandler} interface.

- * - *

If you are using the declaration handler together with a lexical - * handler, all of the events will occur between the - * {@link org.xml.sax.ext.LexicalHandler#startDTD startDTD} and the - * {@link org.xml.sax.ext.LexicalHandler#endDTD endDTD} events.

- * - *

To set the DeclHandler for an XML reader, use the - * {@link org.xml.sax.XMLReader#setProperty setProperty} method - * with the property name - * http://xml.org/sax/properties/declaration-handler - * and an object implementing this interface (or null) as the value. - * If the reader does not report declaration events, it will throw a - * {@link org.xml.sax.SAXNotRecognizedException SAXNotRecognizedException} - * when you attempt to register the handler.

- * - * @since SAX 2.0 (extensions 1.0) - * @author David Megginson - * @version 2.0.1 (sax2r2) - */ -public interface DeclHandler -{ - - /** - * Report an element type declaration. - * - *

The content model will consist of the string "EMPTY", the - * string "ANY", or a parenthesised group, optionally followed - * by an occurrence indicator. The model will be normalized so - * that all parameter entities are fully resolved and all whitespace - * is removed,and will include the enclosing parentheses. Other - * normalization (such as removing redundant parentheses or - * simplifying occurrence indicators) is at the discretion of the - * parser.

- * - * @param name The element type name. - * @param model The content model as a normalized string. - * @exception SAXException The application may raise an exception. - */ - public abstract void elementDecl (String name, String model) - throws SAXException; - - - /** - * Report an attribute type declaration. - * - *

Only the effective (first) declaration for an attribute will - * be reported. The type will be one of the strings "CDATA", - * "ID", "IDREF", "IDREFS", "NMTOKEN", "NMTOKENS", "ENTITY", - * "ENTITIES", a parenthesized token group with - * the separator "|" and all whitespace removed, or the word - * "NOTATION" followed by a space followed by a parenthesized - * token group with all whitespace removed.

- * - *

The value will be the value as reported to applications, - * appropriately normalized and with entity and character - * references expanded.

- * - * @param eName The name of the associated element. - * @param aName The name of the attribute. - * @param type A string representing the attribute type. - * @param mode A string representing the attribute defaulting mode - * ("#IMPLIED", "#REQUIRED", or "#FIXED") or null if - * none of these applies. - * @param value A string representing the attribute's default value, - * or null if there is none. - * @exception SAXException The application may raise an exception. - */ - public abstract void attributeDecl (String eName, - String aName, - String type, - String mode, - String value) - throws SAXException; - - - /** - * Report an internal entity declaration. - * - *

Only the effective (first) declaration for each entity - * will be reported. All parameter entities in the value - * will be expanded, but general entities will not.

- * - * @param name The name of the entity. If it is a parameter - * entity, the name will begin with '%'. - * @param value The replacement text of the entity. - * @exception SAXException The application may raise an exception. - * @see #externalEntityDecl - * @see org.xml.sax.DTDHandler#unparsedEntityDecl - */ - public abstract void internalEntityDecl (String name, String value) - throws SAXException; - - - /** - * Report a parsed external entity declaration. - * - *

Only the effective (first) declaration for each entity - * will be reported.

- * - *

If the system identifier is a URL, the parser must resolve it - * fully before passing it to the application.

- * - * @param name The name of the entity. If it is a parameter - * entity, the name will begin with '%'. - * @param publicId The entity's public identifier, or null if none - * was given. - * @param systemId The entity's system identifier. - * @exception SAXException The application may raise an exception. - * @see #internalEntityDecl - * @see org.xml.sax.DTDHandler#unparsedEntityDecl - */ - public abstract void externalEntityDecl (String name, String publicId, - String systemId) - throws SAXException; - -} - -// end of DeclHandler.java diff --git a/libjava/external/sax/org/xml/sax/ext/DefaultHandler2.java b/libjava/external/sax/org/xml/sax/ext/DefaultHandler2.java deleted file mode 100644 index 2b792e9df24..00000000000 --- a/libjava/external/sax/org/xml/sax/ext/DefaultHandler2.java +++ /dev/null @@ -1,130 +0,0 @@ -// DefaultHandler2.java - extended DefaultHandler -// http://www.saxproject.org -// Public Domain: no warranty. -// $Id: DefaultHandler2.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.ext; - -import java.io.IOException; -import org.xml.sax.InputSource; -import org.xml.sax.SAXException; -import org.xml.sax.helpers.DefaultHandler; - - -/** - * This class extends the SAX2 base handler class to support the - * SAX2 {@link LexicalHandler}, {@link DeclHandler}, and - * {@link EntityResolver2} extensions. Except for overriding the - * original SAX1 {@link DefaultHandler#resolveEntity resolveEntity()} - * method the added handler methods just return. Subclassers may - * override everything on a method-by-method basis. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - *
- * - *

Note: this class might yet learn that the - * ContentHandler.setDocumentLocator() call might be passed a - * {@link Locator2} object, and that the - * ContentHandler.startElement() call might be passed a - * {@link Attributes2} object. - * - * @since SAX 2.0 (extensions 1.1 alpha) - * @author David Brownell - * @version TBS - */ -public class DefaultHandler2 extends DefaultHandler - implements LexicalHandler, DeclHandler, EntityResolver2 -{ - /** Constructs a handler which ignores all parsing events. */ - public DefaultHandler2 () { } - - - // SAX2 ext-1.0 LexicalHandler - - public void startCDATA () - throws SAXException - {} - - public void endCDATA () - throws SAXException - {} - - public void startDTD (String name, String publicId, String systemId) - throws SAXException - {} - - public void endDTD () - throws SAXException - {} - - public void startEntity (String name) - throws SAXException - {} - - public void endEntity (String name) - throws SAXException - {} - - public void comment (char ch [], int start, int length) - throws SAXException - { } - - - // SAX2 ext-1.0 DeclHandler - - public void attributeDecl (String eName, String aName, - String type, String mode, String value) - throws SAXException - {} - - public void elementDecl (String name, String model) - throws SAXException - {} - - public void externalEntityDecl (String name, - String publicId, String systemId) - throws SAXException - {} - - public void internalEntityDecl (String name, String value) - throws SAXException - {} - - // SAX2 ext-1.1 EntityResolver2 - - /** - * Tells the parser that if no external subset has been declared - * in the document text, none should be used. - */ - public InputSource getExternalSubset (String name, String baseURI) - throws SAXException, IOException - { return null; } - - /** - * Tells the parser to resolve the systemId against the baseURI - * and read the entity text from that resulting absolute URI. - * Note that because the older - * {@link DefaultHandler#resolveEntity DefaultHandler.resolveEntity()}, - * method is overridden to call this one, this method may sometimes - * be invoked with null name and baseURI, and - * with the systemId already absolutized. - */ - public InputSource resolveEntity (String name, String publicId, - String baseURI, String systemId) - throws SAXException, IOException - { return null; } - - // SAX1 EntityResolver - - /** - * Invokes - * {@link EntityResolver2#resolveEntity EntityResolver2.resolveEntity()} - * with null entity name and base URI. - * You only need to override that method to use this class. - */ - public InputSource resolveEntity (String publicId, String systemId) - throws SAXException, IOException - { return resolveEntity (null, publicId, null, systemId); } -} diff --git a/libjava/external/sax/org/xml/sax/ext/EntityResolver2.java b/libjava/external/sax/org/xml/sax/ext/EntityResolver2.java deleted file mode 100644 index 57b0d83e852..00000000000 --- a/libjava/external/sax/org/xml/sax/ext/EntityResolver2.java +++ /dev/null @@ -1,197 +0,0 @@ -// EntityResolver2.java - Extended SAX entity resolver. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: EntityResolver2.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.ext; - -import java.io.IOException; - -import org.xml.sax.EntityResolver; -import org.xml.sax.InputSource; -import org.xml.sax.XMLReader; -import org.xml.sax.SAXException; - - -/** - * Extended interface for mapping external entity references to input - * sources, or providing a missing external subset. The - * {@link XMLReader#setEntityResolver XMLReader.setEntityResolver()} method - * is used to provide implementations of this interface to parsers. - * When a parser uses the methods in this interface, the - * {@link EntityResolver2#resolveEntity EntityResolver2.resolveEntity()} - * method (in this interface) is used instead of the older (SAX 1.0) - * {@link EntityResolver#resolveEntity EntityResolver.resolveEntity()} method. - * - *

- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - *
- * - *

If a SAX application requires the customized handling which this - * interface defines for external entities, it must ensure that it uses - * an XMLReader with the - * http://xml.org/sax/features/use-entity-resolver2 feature flag - * set to true (which is its default value when the feature is - * recognized). If that flag is unrecognized, or its value is false, - * or the resolver does not implement this interface, then only the - * {@link EntityResolver} method will be used. - *

- * - *

That supports three categories of application that modify entity - * resolution. Old Style applications won't know about this interface; - * they will provide an EntityResolver. - * Transitional Mode provide an EntityResolver2 and automatically - * get the benefit of its methods in any systems (parsers or other tools) - * supporting it, due to polymorphism. - * Both Old Style and Transitional Mode applications will - * work with any SAX2 parser. - * New style applications will fail to run except on SAX2 parsers - * that support this particular feature. - * They will insist that feature flag have a value of "true", and the - * EntityResolver2 implementation they provide might throw an exception - * if the original SAX 1.0 style entity resolution method is invoked. - *

- * - * @see org.xml.sax.XMLReader#setEntityResolver - * - * @since SAX 2.0 (extensions 1.1 alpha) - * @author David Brownell - * @version TBD - */ -public interface EntityResolver2 extends EntityResolver -{ - /** - * Allows applications to provide an external subset for documents - * that don't explicitly define one. Documents with DOCTYPE declarations - * that omit an external subset can thus augment the declarations - * available for validation, entity processing, and attribute processing - * (normalization, defaulting, and reporting types including ID). - * This augmentation is reported - * through the {@link LexicalHandler#startDTD startDTD()} method as if - * the document text had originally included the external subset; - * this callback is made before any internal subset data or errors - * are reported.

- * - *

This method can also be used with documents that have no DOCTYPE - * declaration. When the root element is encountered, - * but no DOCTYPE declaration has been seen, this method is - * invoked. If it returns a value for the external subset, that root - * element is declared to be the root element, giving the effect of - * splicing a DOCTYPE declaration at the end the prolog of a document - * that could not otherwise be valid. The sequence of parser callbacks - * in that case logically resembles this:

- * - *
-     * ... comments and PIs from the prolog (as usual)
-     * startDTD ("rootName", source.getPublicId (), source.getSystemId ());
-     * startEntity ("[dtd]");
-     * ... declarations, comments, and PIs from the external subset
-     * endEntity ("[dtd]");
-     * endDTD ();
-     * ... then the rest of the document (as usual)
-     * startElement (..., "rootName", ...);
-     * 
- * - *

Note that the InputSource gets no further resolution. - * Implementations of this method may wish to invoke - * {@link #resolveEntity resolveEntity()} to gain benefits such as use - * of local caches of DTD entities. Also, this method will never be - * used by a (non-validating) processor that is not including external - * parameter entities.

- * - *

Uses for this method include facilitating data validation when - * interoperating with XML processors that would always require - * undesirable network accesses for external entities, or which for - * other reasons adopt a "no DTDs" policy. - * Non-validation motives include forcing documents to include DTDs so - * that attributes are handled consistently. - * For example, an XPath processor needs to know which attibutes have - * type "ID" before it can process a widely used type of reference.

- * - *

Warning: Returning an external subset modifies - * the input document. By providing definitions for general entities, - * it can make a malformed document appear to be well formed. - *

- * - * @param name Identifies the document root element. This name comes - * from a DOCTYPE declaration (where available) or from the actual - * root element. - * @param baseURI The document's base URI, serving as an additional - * hint for selecting the external subset. This is always an absolute - * URI, unless it is null because the XMLReader was given an InputSource - * without one. - * - * @return An InputSource object describing the new external subset - * to be used by the parser, or null to indicate that no external - * subset is provided. - * - * @exception SAXException Any SAX exception, possibly wrapping - * another exception. - * @exception IOException Probably indicating a failure to create - * a new InputStream or Reader, or an illegal URL. - */ - public InputSource getExternalSubset (String name, String baseURI) - throws SAXException, IOException; - - /** - * Allows applications to map references to external entities into input - * sources, or tell the parser it should use conventional URI resolution. - * This method is only called for external entities which have been - * properly declared. - * This method provides more flexibility than the {@link EntityResolver} - * interface, supporting implementations of more complex catalogue - * schemes such as the one defined by the OASIS XML Catalogs specification.

- * - *

Parsers configured to use this resolver method will call it - * to determine the input source to use for any external entity - * being included because of a reference in the XML text. - * That excludes the document entity, and any external entity returned - * by {@link #getExternalSubset getExternalSubset()}. - * When a (non-validating) processor is configured not to include - * a class of entities (parameter or general) through use of feature - * flags, this method is not invoked for such entities.

- * - *

Note that the entity naming scheme used here is the same one - * used in the {@link LexicalHandler}, or in the {@link - org.xml.sax.ContentHandler#skippedEntity - ContentHandler.skippedEntity()} - * method.

- * - * @param name Identifies the external entity being resolved. - * Either "[dtd]" for the external subset, or a name starting - * with "%" to indicate a parameter entity, or else the name of - * a general entity. This is never null when invoked by a SAX2 - * parser. - * @param publicId The public identifier of the external entity being - * referenced (normalized as required by the XML specification), or - * null if none was supplied. - * @param baseURI The URI with respect to which relative systemIDs - * are interpreted. This is always an absolute URI, unless it is - * null (likely because the XMLReader was given an InputSource without - * one). This URI is defined by the XML specification to be the one - * associated with the "<" starting the relevant declaration. - * @param systemId The system identifier of the external entity - * being referenced; either a relative or absolute URI. - * This is never null when invoked by a SAX2 parser; only declared - * entities, and any external subset, are resolved by such parsers. - * - * @return An InputSource object describing the new input source to - * be used by the parser. Returning null directs the parser to - * resolve the system ID against the base URI and open a connection - * to resulting URI. - * - * @exception SAXException Any SAX exception, possibly wrapping - * another exception. - * @exception IOException Probably indicating a failure to create - * a new InputStream or Reader, or an illegal URL. - */ - public InputSource resolveEntity ( - String name, - String publicId, - String baseURI, - String systemId - ) throws SAXException, IOException; -} diff --git a/libjava/external/sax/org/xml/sax/ext/LexicalHandler.java b/libjava/external/sax/org/xml/sax/ext/LexicalHandler.java deleted file mode 100644 index 076bdf857c2..00000000000 --- a/libjava/external/sax/org/xml/sax/ext/LexicalHandler.java +++ /dev/null @@ -1,212 +0,0 @@ -// LexicalHandler.java - optional handler for lexical parse events. -// http://www.saxproject.org -// Public Domain: no warranty. -// $Id: LexicalHandler.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.ext; - -import org.xml.sax.SAXException; - -/** - * SAX2 extension handler for lexical events. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This is an optional extension handler for SAX2 to provide - * lexical information about an XML document, such as comments - * and CDATA section boundaries. - * XML readers are not required to recognize this handler, and it - * is not part of core-only SAX2 distributions.

- * - *

The events in the lexical handler apply to the entire document, - * not just to the document element, and all lexical handler events - * must appear between the content handler's startDocument and - * endDocument events.

- * - *

To set the LexicalHandler for an XML reader, use the - * {@link org.xml.sax.XMLReader#setProperty setProperty} method - * with the property name - * http://xml.org/sax/properties/lexical-handler - * and an object implementing this interface (or null) as the value. - * If the reader does not report lexical events, it will throw a - * {@link org.xml.sax.SAXNotRecognizedException SAXNotRecognizedException} - * when you attempt to register the handler.

- * - * @since SAX 2.0 (extensions 1.0) - * @author David Megginson - * @version 2.0.1 (sax2r2) - */ -public interface LexicalHandler -{ - - /** - * Report the start of DTD declarations, if any. - * - *

This method is intended to report the beginning of the - * DOCTYPE declaration; if the document has no DOCTYPE declaration, - * this method will not be invoked.

- * - *

All declarations reported through - * {@link org.xml.sax.DTDHandler DTDHandler} or - * {@link org.xml.sax.ext.DeclHandler DeclHandler} events must appear - * between the startDTD and {@link #endDTD endDTD} events. - * Declarations are assumed to belong to the internal DTD subset - * unless they appear between {@link #startEntity startEntity} - * and {@link #endEntity endEntity} events. Comments and - * processing instructions from the DTD should also be reported - * between the startDTD and endDTD events, in their original - * order of (logical) occurrence; they are not required to - * appear in their correct locations relative to DTDHandler - * or DeclHandler events, however.

- * - *

Note that the start/endDTD events will appear within - * the start/endDocument events from ContentHandler and - * before the first - * {@link org.xml.sax.ContentHandler#startElement startElement} - * event.

- * - * @param name The document type name. - * @param publicId The declared public identifier for the - * external DTD subset, or null if none was declared. - * @param systemId The declared system identifier for the - * external DTD subset, or null if none was declared. - * (Note that this is not resolved against the document - * base URI.) - * @exception SAXException The application may raise an - * exception. - * @see #endDTD - * @see #startEntity - */ - public abstract void startDTD (String name, String publicId, - String systemId) - throws SAXException; - - - /** - * Report the end of DTD declarations. - * - *

This method is intended to report the end of the - * DOCTYPE declaration; if the document has no DOCTYPE declaration, - * this method will not be invoked.

- * - * @exception SAXException The application may raise an exception. - * @see #startDTD - */ - public abstract void endDTD () - throws SAXException; - - - /** - * Report the beginning of some internal and external XML entities. - * - *

The reporting of parameter entities (including - * the external DTD subset) is optional, and SAX2 drivers that - * report LexicalHandler events may not implement it; you can use the - * http://xml.org/sax/features/lexical-handler/parameter-entities - * feature to query or control the reporting of parameter entities.

- * - *

General entities are reported with their regular names, - * parameter entities have '%' prepended to their names, and - * the external DTD subset has the pseudo-entity name "[dtd]".

- * - *

When a SAX2 driver is providing these events, all other - * events must be properly nested within start/end entity - * events. There is no additional requirement that events from - * {@link org.xml.sax.ext.DeclHandler DeclHandler} or - * {@link org.xml.sax.DTDHandler DTDHandler} be properly ordered.

- * - *

Note that skipped entities will be reported through the - * {@link org.xml.sax.ContentHandler#skippedEntity skippedEntity} - * event, which is part of the ContentHandler interface.

- * - *

Because of the streaming event model that SAX uses, some - * entity boundaries cannot be reported under any - * circumstances:

- * - *
    - *
  • general entities within attribute values
  • - *
  • parameter entities within declarations
  • - *
- * - *

These will be silently expanded, with no indication of where - * the original entity boundaries were.

- * - *

Note also that the boundaries of character references (which - * are not really entities anyway) are not reported.

- * - *

All start/endEntity events must be properly nested. - * - * @param name The name of the entity. If it is a parameter - * entity, the name will begin with '%', and if it is the - * external DTD subset, it will be "[dtd]". - * @exception SAXException The application may raise an exception. - * @see #endEntity - * @see org.xml.sax.ext.DeclHandler#internalEntityDecl - * @see org.xml.sax.ext.DeclHandler#externalEntityDecl - */ - public abstract void startEntity (String name) - throws SAXException; - - - /** - * Report the end of an entity. - * - * @param name The name of the entity that is ending. - * @exception SAXException The application may raise an exception. - * @see #startEntity - */ - public abstract void endEntity (String name) - throws SAXException; - - - /** - * Report the start of a CDATA section. - * - *

The contents of the CDATA section will be reported through - * the regular {@link org.xml.sax.ContentHandler#characters - * characters} event; this event is intended only to report - * the boundary.

- * - * @exception SAXException The application may raise an exception. - * @see #endCDATA - */ - public abstract void startCDATA () - throws SAXException; - - - /** - * Report the end of a CDATA section. - * - * @exception SAXException The application may raise an exception. - * @see #startCDATA - */ - public abstract void endCDATA () - throws SAXException; - - - /** - * Report an XML comment anywhere in the document. - * - *

This callback will be used for comments inside or outside the - * document element, including comments in the external DTD - * subset (if read). Comments in the DTD must be properly - * nested inside start/endDTD and start/endEntity events (if - * used).

- * - * @param ch An array holding the characters in the comment. - * @param start The starting position in the array. - * @param length The number of characters to use from the array. - * @exception SAXException The application may raise an exception. - */ - public abstract void comment (char ch[], int start, int length) - throws SAXException; - -} - -// end of LexicalHandler.java diff --git a/libjava/external/sax/org/xml/sax/ext/Locator2.java b/libjava/external/sax/org/xml/sax/ext/Locator2.java deleted file mode 100644 index 5fe3ba7706a..00000000000 --- a/libjava/external/sax/org/xml/sax/ext/Locator2.java +++ /dev/null @@ -1,75 +0,0 @@ -// Locator2.java - extended Locator -// http://www.saxproject.org -// Public Domain: no warranty. -// $Id: Locator2.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.ext; - -import org.xml.sax.Locator; - - -/** - * SAX2 extension to augment the entity information provided - * though a {@link Locator}. - * If an implementation supports this extension, the Locator - * provided in {@link org.xml.sax.ContentHandler#setDocumentLocator - * ContentHandler.setDocumentLocator() } will implement this - * interface, and the - * http://xml.org/sax/features/use-locator2 feature - * flag will have the value true. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - *
- * - *

XMLReader implementations are not required to support this - * information, and it is not part of core-only SAX2 distributions.

- * - * @since SAX 2.0 (extensions 1.1 alpha) - * @author David Brownell - * @version TBS - */ -public interface Locator2 extends Locator -{ - /** - * Returns the version of XML used for the entity. This will - * normally be the identifier from the current entity's - * <?xml version='...' ...?> declaration, - * or be defaulted by the parser. - * - * @return Identifier for the XML version being used to interpret - * the entity's text, or null if that information is not yet - * available in the current parsing state. - */ - public String getXMLVersion (); - - /** - * Returns the name of the character encoding for the entity. - * If the encoding was declared externally (for example, in a MIME - * Content-Type header), that will be the name returned. Else if there - * was an <?xml ...encoding='...'?> declaration at - * the start of the document, that encoding name will be returned. - * Otherwise the encoding will been inferred (normally to be UTF-8, or - * some UTF-16 variant), and that inferred name will be returned. - * - *

When an {@link org.xml.sax.InputSource InputSource} is used - * to provide an entity's character stream, this method returns the - * encoding provided in that input stream. - * - *

Note that some recent W3C specifications require that text - * in some encodings be normalized, using Unicode Normalization - * Form C, before processing. Such normalization must be performed - * by applications, and would normally be triggered based on the - * value returned by this method. - * - *

Encoding names may be those used by the underlying JVM, - * and comparisons should be case-insensitive. - * - * @return Name of the character encoding being used to interpret - * * the entity's text, or null if this was not provided for a * - * character stream passed through an InputSource or is otherwise - * not yet available in the current parsing state. - */ - public String getEncoding (); -} diff --git a/libjava/external/sax/org/xml/sax/ext/Locator2Impl.java b/libjava/external/sax/org/xml/sax/ext/Locator2Impl.java deleted file mode 100644 index 52f6331b5ab..00000000000 --- a/libjava/external/sax/org/xml/sax/ext/Locator2Impl.java +++ /dev/null @@ -1,101 +0,0 @@ -// Locator2Impl.java - extended LocatorImpl -// http://www.saxproject.org -// Public Domain: no warranty. -// $Id: Locator2Impl.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.ext; - -import org.xml.sax.Locator; -import org.xml.sax.helpers.LocatorImpl; - - -/** - * SAX2 extension helper for holding additional Entity information, - * implementing the {@link Locator2} interface. - * - *

- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - *
- * - *

This is not part of core-only SAX2 distributions.

- * - * @since SAX 2.0.2 - * @author David Brownell - * @version TBS - */ -public class Locator2Impl extends LocatorImpl implements Locator2 -{ - private String encoding; - private String version; - - - /** - * Construct a new, empty Locator2Impl object. - * This will not normally be useful, since the main purpose - * of this class is to make a snapshot of an existing Locator. - */ - public Locator2Impl () { } - - /** - * Copy an existing Locator or Locator2 object. - * If the object implements Locator2, values of the - * encoding and versionstrings are copied, - * otherwise they set to null. - * - * @param locator The existing Locator object. - */ - public Locator2Impl (Locator locator) - { - super (locator); - if (locator instanceof Locator2) { - Locator2 l2 = (Locator2) locator; - - version = l2.getXMLVersion (); - encoding = l2.getEncoding (); - } - } - - //////////////////////////////////////////////////////////////////// - // Locator2 method implementations - //////////////////////////////////////////////////////////////////// - - /** - * Returns the current value of the version property. - * - * @see #setXMLVersion - */ - public String getXMLVersion () - { return version; } - - /** - * Returns the current value of the encoding property. - * - * @see #setEncoding - */ - public String getEncoding () - { return encoding; } - - - //////////////////////////////////////////////////////////////////// - // Setters - //////////////////////////////////////////////////////////////////// - - /** - * Assigns the current value of the version property. - * - * @param version the new "version" value - * @see #getXMLVersion - */ - public void setXMLVersion (String version) - { this.version = version; } - - /** - * Assigns the current value of the encoding property. - * - * @param encoding the new "encoding" value - * @see #getEncoding - */ - public void setEncoding (String encoding) - { this.encoding = encoding; } -} diff --git a/libjava/external/sax/org/xml/sax/ext/package.html b/libjava/external/sax/org/xml/sax/ext/package.html deleted file mode 100644 index 0b744800108..00000000000 --- a/libjava/external/sax/org/xml/sax/ext/package.html +++ /dev/null @@ -1,46 +0,0 @@ - - - - -

-This package contains interfaces to SAX2 facilities that -conformant SAX drivers won't necessarily support. - -

See http://www.saxproject.org -for more information about SAX.

- -

This package is independent of the SAX2 core, though the functionality -exposed generally needs to be implemented within a parser core. -That independence has several consequences:

- -
    - -
  • SAX2 drivers are not required to recognize these handlers. -
  • - -
  • You cannot assume that the class files will be present in every SAX2 -installation.
  • - -
  • This package may be updated independently of SAX2 (i.e. new -handlers and classes may be added without updating SAX2 itself).
  • - -
  • The new handlers are not implemented by the SAX2 -org.xml.sax.helpers.DefaultHandler or -org.xml.sax.helpers.XMLFilterImpl classes. -You can subclass these if you need such behavior, or -use the helper classes found here.
  • - -
  • The handlers need to be registered differently than core SAX2 -handlers.
  • - -
- -

This package, SAX2-ext, is a standardized extension to SAX2. It is -designed both to allow SAX parsers to pass certain types of information -to applications, and to serve as a simple model for other SAX2 parser -extension packages. Not all such extension packages should need to -be recognized directly by parsers, however. -As an example, most validation systems can be cleanly layered on top -of parsers supporting the standardized SAX2 interfaces.

- - diff --git a/libjava/external/sax/org/xml/sax/helpers/AttributeListImpl.java b/libjava/external/sax/org/xml/sax/helpers/AttributeListImpl.java deleted file mode 100644 index ca859fb1450..00000000000 --- a/libjava/external/sax/org/xml/sax/helpers/AttributeListImpl.java +++ /dev/null @@ -1,312 +0,0 @@ -// SAX default implementation for AttributeList. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: AttributeListImpl.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.helpers; - -import org.xml.sax.AttributeList; - -import java.util.Vector; - - -/** - * Default implementation for AttributeList. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

AttributeList implements the deprecated SAX1 {@link - * org.xml.sax.AttributeList AttributeList} interface, and has been - * replaced by the new SAX2 {@link org.xml.sax.helpers.AttributesImpl - * AttributesImpl} interface.

- * - *

This class provides a convenience implementation of the SAX - * {@link org.xml.sax.AttributeList AttributeList} interface. This - * implementation is useful both for SAX parser writers, who can use - * it to provide attributes to the application, and for SAX application - * writers, who can use it to create a persistent copy of an element's - * attribute specifications:

- * - *
- * private AttributeList myatts;
- *
- * public void startElement (String name, AttributeList atts)
- * {
- *              // create a persistent copy of the attribute list
- *              // for use outside this method
- *   myatts = new AttributeListImpl(atts);
- *   [...]
- * }
- * 
- * - *

Please note that SAX parsers are not required to use this - * class to provide an implementation of AttributeList; it is - * supplied only as an optional convenience. In particular, - * parser writers are encouraged to invent more efficient - * implementations.

- * - * @deprecated This class implements a deprecated interface, - * {@link org.xml.sax.AttributeList AttributeList}; - * that interface has been replaced by - * {@link org.xml.sax.Attributes Attributes}, - * which is implemented in the - * {@link org.xml.sax.helpers.AttributesImpl - * AttributesImpl} helper class. - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.AttributeList - * @see org.xml.sax.DocumentHandler#startElement - */ -public class AttributeListImpl implements AttributeList -{ - - /** - * Create an empty attribute list. - * - *

This constructor is most useful for parser writers, who - * will use it to create a single, reusable attribute list that - * can be reset with the clear method between elements.

- * - * @see #addAttribute - * @see #clear - */ - public AttributeListImpl () - { - } - - - /** - * Construct a persistent copy of an existing attribute list. - * - *

This constructor is most useful for application writers, - * who will use it to create a persistent copy of an existing - * attribute list.

- * - * @param atts The attribute list to copy - * @see org.xml.sax.DocumentHandler#startElement - */ - public AttributeListImpl (AttributeList atts) - { - setAttributeList(atts); - } - - - - //////////////////////////////////////////////////////////////////// - // Methods specific to this class. - //////////////////////////////////////////////////////////////////// - - - /** - * Set the attribute list, discarding previous contents. - * - *

This method allows an application writer to reuse an - * attribute list easily.

- * - * @param atts The attribute list to copy. - */ - public void setAttributeList (AttributeList atts) - { - int count = atts.getLength(); - - clear(); - - for (int i = 0; i < count; i++) { - addAttribute(atts.getName(i), atts.getType(i), atts.getValue(i)); - } - } - - - /** - * Add an attribute to an attribute list. - * - *

This method is provided for SAX parser writers, to allow them - * to build up an attribute list incrementally before delivering - * it to the application.

- * - * @param name The attribute name. - * @param type The attribute type ("NMTOKEN" for an enumeration). - * @param value The attribute value (must not be null). - * @see #removeAttribute - * @see org.xml.sax.DocumentHandler#startElement - */ - public void addAttribute (String name, String type, String value) - { - names.addElement(name); - types.addElement(type); - values.addElement(value); - } - - - /** - * Remove an attribute from the list. - * - *

SAX application writers can use this method to filter an - * attribute out of an AttributeList. Note that invoking this - * method will change the length of the attribute list and - * some of the attribute's indices.

- * - *

If the requested attribute is not in the list, this is - * a no-op.

- * - * @param name The attribute name. - * @see #addAttribute - */ - public void removeAttribute (String name) - { - int i = names.indexOf(name); - - if (i >= 0) { - names.removeElementAt(i); - types.removeElementAt(i); - values.removeElementAt(i); - } - } - - - /** - * Clear the attribute list. - * - *

SAX parser writers can use this method to reset the attribute - * list between DocumentHandler.startElement events. Normally, - * it will make sense to reuse the same AttributeListImpl object - * rather than allocating a new one each time.

- * - * @see org.xml.sax.DocumentHandler#startElement - */ - public void clear () - { - names.removeAllElements(); - types.removeAllElements(); - values.removeAllElements(); - } - - - - //////////////////////////////////////////////////////////////////// - // Implementation of org.xml.sax.AttributeList - //////////////////////////////////////////////////////////////////// - - - /** - * Return the number of attributes in the list. - * - * @return The number of attributes in the list. - * @see org.xml.sax.AttributeList#getLength - */ - public int getLength () - { - return names.size(); - } - - - /** - * Get the name of an attribute (by position). - * - * @param i The position of the attribute in the list. - * @return The attribute name as a string, or null if there - * is no attribute at that position. - * @see org.xml.sax.AttributeList#getName(int) - */ - public String getName (int i) - { - if (i < 0) { - return null; - } - try { - return (String)names.elementAt(i); - } catch (ArrayIndexOutOfBoundsException e) { - return null; - } - } - - - /** - * Get the type of an attribute (by position). - * - * @param i The position of the attribute in the list. - * @return The attribute type as a string ("NMTOKEN" for an - * enumeration, and "CDATA" if no declaration was - * read), or null if there is no attribute at - * that position. - * @see org.xml.sax.AttributeList#getType(int) - */ - public String getType (int i) - { - if (i < 0) { - return null; - } - try { - return (String)types.elementAt(i); - } catch (ArrayIndexOutOfBoundsException e) { - return null; - } - } - - - /** - * Get the value of an attribute (by position). - * - * @param i The position of the attribute in the list. - * @return The attribute value as a string, or null if - * there is no attribute at that position. - * @see org.xml.sax.AttributeList#getValue(int) - */ - public String getValue (int i) - { - if (i < 0) { - return null; - } - try { - return (String)values.elementAt(i); - } catch (ArrayIndexOutOfBoundsException e) { - return null; - } - } - - - /** - * Get the type of an attribute (by name). - * - * @param name The attribute name. - * @return The attribute type as a string ("NMTOKEN" for an - * enumeration, and "CDATA" if no declaration was - * read). - * @see org.xml.sax.AttributeList#getType(java.lang.String) - */ - public String getType (String name) - { - return getType(names.indexOf(name)); - } - - - /** - * Get the value of an attribute (by name). - * - * @param name The attribute name. - * @see org.xml.sax.AttributeList#getValue(java.lang.String) - */ - public String getValue (String name) - { - return getValue(names.indexOf(name)); - } - - - - //////////////////////////////////////////////////////////////////// - // Internal state. - //////////////////////////////////////////////////////////////////// - - Vector names = new Vector(); - Vector types = new Vector(); - Vector values = new Vector(); - -} - -// end of AttributeListImpl.java diff --git a/libjava/external/sax/org/xml/sax/helpers/AttributesImpl.java b/libjava/external/sax/org/xml/sax/helpers/AttributesImpl.java deleted file mode 100644 index 8753968ba0a..00000000000 --- a/libjava/external/sax/org/xml/sax/helpers/AttributesImpl.java +++ /dev/null @@ -1,618 +0,0 @@ -// AttributesImpl.java - default implementation of Attributes. -// http://www.saxproject.org -// Written by David Megginson -// NO WARRANTY! This class is in the public domain. -// $Id: AttributesImpl.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.helpers; - -import org.xml.sax.Attributes; - - -/** - * Default implementation of the Attributes interface. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This class provides a default implementation of the SAX2 - * {@link org.xml.sax.Attributes Attributes} interface, with the - * addition of manipulators so that the list can be modified or - * reused.

- * - *

There are two typical uses of this class:

- * - *
    - *
  1. to take a persistent snapshot of an Attributes object - * in a {@link org.xml.sax.ContentHandler#startElement startElement} event; or
  2. - *
  3. to construct or modify an Attributes object in a SAX2 driver or filter.
  4. - *
- * - *

This class replaces the now-deprecated SAX1 {@link - * org.xml.sax.helpers.AttributeListImpl AttributeListImpl} - * class; in addition to supporting the updated Attributes - * interface rather than the deprecated {@link org.xml.sax.AttributeList - * AttributeList} interface, it also includes a much more efficient - * implementation using a single array rather than a set of Vectors.

- * - * @since SAX 2.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - */ -public class AttributesImpl implements Attributes -{ - - - //////////////////////////////////////////////////////////////////// - // Constructors. - //////////////////////////////////////////////////////////////////// - - - /** - * Construct a new, empty AttributesImpl object. - */ - public AttributesImpl () - { - length = 0; - data = null; - } - - - /** - * Copy an existing Attributes object. - * - *

This constructor is especially useful inside a - * {@link org.xml.sax.ContentHandler#startElement startElement} event.

- * - * @param atts The existing Attributes object. - */ - public AttributesImpl (Attributes atts) - { - setAttributes(atts); - } - - - - //////////////////////////////////////////////////////////////////// - // Implementation of org.xml.sax.Attributes. - //////////////////////////////////////////////////////////////////// - - - /** - * Return the number of attributes in the list. - * - * @return The number of attributes in the list. - * @see org.xml.sax.Attributes#getLength - */ - public int getLength () - { - return length; - } - - - /** - * Return an attribute's Namespace URI. - * - * @param index The attribute's index (zero-based). - * @return The Namespace URI, the empty string if none is - * available, or null if the index is out of range. - * @see org.xml.sax.Attributes#getURI - */ - public String getURI (int index) - { - if (index >= 0 && index < length) { - return data[index*5]; - } else { - return null; - } - } - - - /** - * Return an attribute's local name. - * - * @param index The attribute's index (zero-based). - * @return The attribute's local name, the empty string if - * none is available, or null if the index if out of range. - * @see org.xml.sax.Attributes#getLocalName - */ - public String getLocalName (int index) - { - if (index >= 0 && index < length) { - return data[index*5+1]; - } else { - return null; - } - } - - - /** - * Return an attribute's qualified (prefixed) name. - * - * @param index The attribute's index (zero-based). - * @return The attribute's qualified name, the empty string if - * none is available, or null if the index is out of bounds. - * @see org.xml.sax.Attributes#getQName - */ - public String getQName (int index) - { - if (index >= 0 && index < length) { - return data[index*5+2]; - } else { - return null; - } - } - - - /** - * Return an attribute's type by index. - * - * @param index The attribute's index (zero-based). - * @return The attribute's type, "CDATA" if the type is unknown, or null - * if the index is out of bounds. - * @see org.xml.sax.Attributes#getType(int) - */ - public String getType (int index) - { - if (index >= 0 && index < length) { - return data[index*5+3]; - } else { - return null; - } - } - - - /** - * Return an attribute's value by index. - * - * @param index The attribute's index (zero-based). - * @return The attribute's value or null if the index is out of bounds. - * @see org.xml.sax.Attributes#getValue(int) - */ - public String getValue (int index) - { - if (index >= 0 && index < length) { - return data[index*5+4]; - } else { - return null; - } - } - - - /** - * Look up an attribute's index by Namespace name. - * - *

In many cases, it will be more efficient to look up the name once and - * use the index query methods rather than using the name query methods - * repeatedly.

- * - * @param uri The attribute's Namespace URI, or the empty - * string if none is available. - * @param localName The attribute's local name. - * @return The attribute's index, or -1 if none matches. - * @see org.xml.sax.Attributes#getIndex(java.lang.String,java.lang.String) - */ - public int getIndex (String uri, String localName) - { - int max = length * 5; - for (int i = 0; i < max; i += 5) { - if (data[i].equals(uri) && data[i+1].equals(localName)) { - return i / 5; - } - } - return -1; - } - - - /** - * Look up an attribute's index by qualified (prefixed) name. - * - * @param qName The qualified name. - * @return The attribute's index, or -1 if none matches. - * @see org.xml.sax.Attributes#getIndex(java.lang.String) - */ - public int getIndex (String qName) - { - int max = length * 5; - for (int i = 0; i < max; i += 5) { - if (data[i+2].equals(qName)) { - return i / 5; - } - } - return -1; - } - - - /** - * Look up an attribute's type by Namespace-qualified name. - * - * @param uri The Namespace URI, or the empty string for a name - * with no explicit Namespace URI. - * @param localName The local name. - * @return The attribute's type, or null if there is no - * matching attribute. - * @see org.xml.sax.Attributes#getType(java.lang.String,java.lang.String) - */ - public String getType (String uri, String localName) - { - int max = length * 5; - for (int i = 0; i < max; i += 5) { - if (data[i].equals(uri) && data[i+1].equals(localName)) { - return data[i+3]; - } - } - return null; - } - - - /** - * Look up an attribute's type by qualified (prefixed) name. - * - * @param qName The qualified name. - * @return The attribute's type, or null if there is no - * matching attribute. - * @see org.xml.sax.Attributes#getType(java.lang.String) - */ - public String getType (String qName) - { - int max = length * 5; - for (int i = 0; i < max; i += 5) { - if (data[i+2].equals(qName)) { - return data[i+3]; - } - } - return null; - } - - - /** - * Look up an attribute's value by Namespace-qualified name. - * - * @param uri The Namespace URI, or the empty string for a name - * with no explicit Namespace URI. - * @param localName The local name. - * @return The attribute's value, or null if there is no - * matching attribute. - * @see org.xml.sax.Attributes#getValue(java.lang.String,java.lang.String) - */ - public String getValue (String uri, String localName) - { - int max = length * 5; - for (int i = 0; i < max; i += 5) { - if (data[i].equals(uri) && data[i+1].equals(localName)) { - return data[i+4]; - } - } - return null; - } - - - /** - * Look up an attribute's value by qualified (prefixed) name. - * - * @param qName The qualified name. - * @return The attribute's value, or null if there is no - * matching attribute. - * @see org.xml.sax.Attributes#getValue(java.lang.String) - */ - public String getValue (String qName) - { - int max = length * 5; - for (int i = 0; i < max; i += 5) { - if (data[i+2].equals(qName)) { - return data[i+4]; - } - } - return null; - } - - - - //////////////////////////////////////////////////////////////////// - // Manipulators. - //////////////////////////////////////////////////////////////////// - - - /** - * Clear the attribute list for reuse. - * - *

Note that little memory is freed by this call: - * the current array is kept so it can be - * reused.

- */ - public void clear () - { - if (data != null) { - for (int i = 0; i < (length * 5); i++) - data [i] = null; - } - length = 0; - } - - - /** - * Copy an entire Attributes object. - * - *

It may be more efficient to reuse an existing object - * rather than constantly allocating new ones.

- * - * @param atts The attributes to copy. - */ - public void setAttributes (Attributes atts) - { - clear(); - length = atts.getLength(); - if (length > 0) { - data = new String[length*5]; - for (int i = 0; i < length; i++) { - data[i*5] = atts.getURI(i); - data[i*5+1] = atts.getLocalName(i); - data[i*5+2] = atts.getQName(i); - data[i*5+3] = atts.getType(i); - data[i*5+4] = atts.getValue(i); - } - } - } - - - /** - * Add an attribute to the end of the list. - * - *

For the sake of speed, this method does no checking - * to see if the attribute is already in the list: that is - * the responsibility of the application.

- * - * @param uri The Namespace URI, or the empty string if - * none is available or Namespace processing is not - * being performed. - * @param localName The local name, or the empty string if - * Namespace processing is not being performed. - * @param qName The qualified (prefixed) name, or the empty string - * if qualified names are not available. - * @param type The attribute type as a string. - * @param value The attribute value. - */ - public void addAttribute (String uri, String localName, String qName, - String type, String value) - { - ensureCapacity(length+1); - data[length*5] = uri; - data[length*5+1] = localName; - data[length*5+2] = qName; - data[length*5+3] = type; - data[length*5+4] = value; - length++; - } - - - /** - * Set an attribute in the list. - * - *

For the sake of speed, this method does no checking - * for name conflicts or well-formedness: such checks are the - * responsibility of the application.

- * - * @param index The index of the attribute (zero-based). - * @param uri The Namespace URI, or the empty string if - * none is available or Namespace processing is not - * being performed. - * @param localName The local name, or the empty string if - * Namespace processing is not being performed. - * @param qName The qualified name, or the empty string - * if qualified names are not available. - * @param type The attribute type as a string. - * @param value The attribute value. - * @exception java.lang.ArrayIndexOutOfBoundsException When the - * supplied index does not point to an attribute - * in the list. - */ - public void setAttribute (int index, String uri, String localName, - String qName, String type, String value) - { - if (index >= 0 && index < length) { - data[index*5] = uri; - data[index*5+1] = localName; - data[index*5+2] = qName; - data[index*5+3] = type; - data[index*5+4] = value; - } else { - badIndex(index); - } - } - - - /** - * Remove an attribute from the list. - * - * @param index The index of the attribute (zero-based). - * @exception java.lang.ArrayIndexOutOfBoundsException When the - * supplied index does not point to an attribute - * in the list. - */ - public void removeAttribute (int index) - { - if (index >= 0 && index < length) { - if (index < length - 1) { - System.arraycopy(data, (index+1)*5, data, index*5, - (length-index-1)*5); - } - index = (length - 1) * 5; - data [index++] = null; - data [index++] = null; - data [index++] = null; - data [index++] = null; - data [index] = null; - length--; - } else { - badIndex(index); - } - } - - - /** - * Set the Namespace URI of a specific attribute. - * - * @param index The index of the attribute (zero-based). - * @param uri The attribute's Namespace URI, or the empty - * string for none. - * @exception java.lang.ArrayIndexOutOfBoundsException When the - * supplied index does not point to an attribute - * in the list. - */ - public void setURI (int index, String uri) - { - if (index >= 0 && index < length) { - data[index*5] = uri; - } else { - badIndex(index); - } - } - - - /** - * Set the local name of a specific attribute. - * - * @param index The index of the attribute (zero-based). - * @param localName The attribute's local name, or the empty - * string for none. - * @exception java.lang.ArrayIndexOutOfBoundsException When the - * supplied index does not point to an attribute - * in the list. - */ - public void setLocalName (int index, String localName) - { - if (index >= 0 && index < length) { - data[index*5+1] = localName; - } else { - badIndex(index); - } - } - - - /** - * Set the qualified name of a specific attribute. - * - * @param index The index of the attribute (zero-based). - * @param qName The attribute's qualified name, or the empty - * string for none. - * @exception java.lang.ArrayIndexOutOfBoundsException When the - * supplied index does not point to an attribute - * in the list. - */ - public void setQName (int index, String qName) - { - if (index >= 0 && index < length) { - data[index*5+2] = qName; - } else { - badIndex(index); - } - } - - - /** - * Set the type of a specific attribute. - * - * @param index The index of the attribute (zero-based). - * @param type The attribute's type. - * @exception java.lang.ArrayIndexOutOfBoundsException When the - * supplied index does not point to an attribute - * in the list. - */ - public void setType (int index, String type) - { - if (index >= 0 && index < length) { - data[index*5+3] = type; - } else { - badIndex(index); - } - } - - - /** - * Set the value of a specific attribute. - * - * @param index The index of the attribute (zero-based). - * @param value The attribute's value. - * @exception java.lang.ArrayIndexOutOfBoundsException When the - * supplied index does not point to an attribute - * in the list. - */ - public void setValue (int index, String value) - { - if (index >= 0 && index < length) { - data[index*5+4] = value; - } else { - badIndex(index); - } - } - - - - //////////////////////////////////////////////////////////////////// - // Internal methods. - //////////////////////////////////////////////////////////////////// - - - /** - * Ensure the internal array's capacity. - * - * @param n The minimum number of attributes that the array must - * be able to hold. - */ - private void ensureCapacity (int n) { - if (n <= 0) { - return; - } - int max; - if (data == null || data.length == 0) { - max = 25; - } - else if (data.length >= n * 5) { - return; - } - else { - max = data.length; - } - while (max < n * 5) { - max *= 2; - } - - String newData[] = new String[max]; - if (length > 0) { - System.arraycopy(data, 0, newData, 0, length*5); - } - data = newData; - } - - - /** - * Report a bad array index in a manipulator. - * - * @param index The index to report. - * @exception java.lang.ArrayIndexOutOfBoundsException Always. - */ - private void badIndex (int index) - throws ArrayIndexOutOfBoundsException - { - String msg = - "Attempt to modify attribute at illegal index: " + index; - throw new ArrayIndexOutOfBoundsException(msg); - } - - - - //////////////////////////////////////////////////////////////////// - // Internal state. - //////////////////////////////////////////////////////////////////// - - int length; - String data []; - -} - -// end of AttributesImpl.java - diff --git a/libjava/external/sax/org/xml/sax/helpers/DefaultHandler.java b/libjava/external/sax/org/xml/sax/helpers/DefaultHandler.java deleted file mode 100644 index e01c3be403d..00000000000 --- a/libjava/external/sax/org/xml/sax/helpers/DefaultHandler.java +++ /dev/null @@ -1,467 +0,0 @@ -// DefaultHandler.java - default implementation of the core handlers. -// http://www.saxproject.org -// Written by David Megginson -// NO WARRANTY! This class is in the public domain. -// $Id: DefaultHandler.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.helpers; - -import java.io.IOException; - -import org.xml.sax.InputSource; -import org.xml.sax.Locator; -import org.xml.sax.Attributes; -import org.xml.sax.EntityResolver; -import org.xml.sax.DTDHandler; -import org.xml.sax.ContentHandler; -import org.xml.sax.ErrorHandler; -import org.xml.sax.SAXException; -import org.xml.sax.SAXParseException; - - -/** - * Default base class for SAX2 event handlers. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This class is available as a convenience base class for SAX2 - * applications: it provides default implementations for all of the - * callbacks in the four core SAX2 handler classes:

- * - *
    - *
  • {@link org.xml.sax.EntityResolver EntityResolver}
  • - *
  • {@link org.xml.sax.DTDHandler DTDHandler}
  • - *
  • {@link org.xml.sax.ContentHandler ContentHandler}
  • - *
  • {@link org.xml.sax.ErrorHandler ErrorHandler}
  • - *
- * - *

Application writers can extend this class when they need to - * implement only part of an interface; parser writers can - * instantiate this class to provide default handlers when the - * application has not supplied its own.

- * - *

This class replaces the deprecated SAX1 - * {@link org.xml.sax.HandlerBase HandlerBase} class.

- * - * @since SAX 2.0 - * @author David Megginson, - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.EntityResolver - * @see org.xml.sax.DTDHandler - * @see org.xml.sax.ContentHandler - * @see org.xml.sax.ErrorHandler - */ -public class DefaultHandler - implements EntityResolver, DTDHandler, ContentHandler, ErrorHandler -{ - - - //////////////////////////////////////////////////////////////////// - // Default implementation of the EntityResolver interface. - //////////////////////////////////////////////////////////////////// - - /** - * Resolve an external entity. - * - *

Always return null, so that the parser will use the system - * identifier provided in the XML document. This method implements - * the SAX default behaviour: application writers can override it - * in a subclass to do special translations such as catalog lookups - * or URI redirection.

- * - * @param publicId The public identifer, or null if none is - * available. - * @param systemId The system identifier provided in the XML - * document. - * @return The new input source, or null to require the - * default behaviour. - * @exception java.io.IOException If there is an error setting - * up the new input source. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.EntityResolver#resolveEntity - */ - public InputSource resolveEntity (String publicId, String systemId) - throws IOException, SAXException - { - return null; - } - - - - //////////////////////////////////////////////////////////////////// - // Default implementation of DTDHandler interface. - //////////////////////////////////////////////////////////////////// - - - /** - * Receive notification of a notation declaration. - * - *

By default, do nothing. Application writers may override this - * method in a subclass if they wish to keep track of the notations - * declared in a document.

- * - * @param name The notation name. - * @param publicId The notation public identifier, or null if not - * available. - * @param systemId The notation system identifier. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.DTDHandler#notationDecl - */ - public void notationDecl (String name, String publicId, String systemId) - throws SAXException - { - // no op - } - - - /** - * Receive notification of an unparsed entity declaration. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to keep track of the unparsed entities - * declared in a document.

- * - * @param name The entity name. - * @param publicId The entity public identifier, or null if not - * available. - * @param systemId The entity system identifier. - * @param notationName The name of the associated notation. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.DTDHandler#unparsedEntityDecl - */ - public void unparsedEntityDecl (String name, String publicId, - String systemId, String notationName) - throws SAXException - { - // no op - } - - - - //////////////////////////////////////////////////////////////////// - // Default implementation of ContentHandler interface. - //////////////////////////////////////////////////////////////////// - - - /** - * Receive a Locator object for document events. - * - *

By default, do nothing. Application writers may override this - * method in a subclass if they wish to store the locator for use - * with other document events.

- * - * @param locator A locator for all SAX document events. - * @see org.xml.sax.ContentHandler#setDocumentLocator - * @see org.xml.sax.Locator - */ - public void setDocumentLocator (Locator locator) - { - // no op - } - - - /** - * Receive notification of the beginning of the document. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to take specific actions at the beginning - * of a document (such as allocating the root node of a tree or - * creating an output file).

- * - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ContentHandler#startDocument - */ - public void startDocument () - throws SAXException - { - // no op - } - - - /** - * Receive notification of the end of the document. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to take specific actions at the end - * of a document (such as finalising a tree or closing an output - * file).

- * - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ContentHandler#endDocument - */ - public void endDocument () - throws SAXException - { - // no op - } - - - /** - * Receive notification of the start of a Namespace mapping. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to take specific actions at the start of - * each Namespace prefix scope (such as storing the prefix mapping).

- * - * @param prefix The Namespace prefix being declared. - * @param uri The Namespace URI mapped to the prefix. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ContentHandler#startPrefixMapping - */ - public void startPrefixMapping (String prefix, String uri) - throws SAXException - { - // no op - } - - - /** - * Receive notification of the end of a Namespace mapping. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to take specific actions at the end of - * each prefix mapping.

- * - * @param prefix The Namespace prefix being declared. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ContentHandler#endPrefixMapping - */ - public void endPrefixMapping (String prefix) - throws SAXException - { - // no op - } - - - /** - * Receive notification of the start of an element. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to take specific actions at the start of - * each element (such as allocating a new tree node or writing - * output to a file).

- * - * @param uri The Namespace URI, or the empty string if the - * element has no Namespace URI or if Namespace - * processing is not being performed. - * @param localName The local name (without prefix), or the - * empty string if Namespace processing is not being - * performed. - * @param qName The qualified name (with prefix), or the - * empty string if qualified names are not available. - * @param attributes The attributes attached to the element. If - * there are no attributes, it shall be an empty - * Attributes object. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ContentHandler#startElement - */ - public void startElement (String uri, String localName, - String qName, Attributes attributes) - throws SAXException - { - // no op - } - - - /** - * Receive notification of the end of an element. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to take specific actions at the end of - * each element (such as finalising a tree node or writing - * output to a file).

- * - * @param uri The Namespace URI, or the empty string if the - * element has no Namespace URI or if Namespace - * processing is not being performed. - * @param localName The local name (without prefix), or the - * empty string if Namespace processing is not being - * performed. - * @param qName The qualified name (with prefix), or the - * empty string if qualified names are not available. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ContentHandler#endElement - */ - public void endElement (String uri, String localName, String qName) - throws SAXException - { - // no op - } - - - /** - * Receive notification of character data inside an element. - * - *

By default, do nothing. Application writers may override this - * method to take specific actions for each chunk of character data - * (such as adding the data to a node or buffer, or printing it to - * a file).

- * - * @param ch The characters. - * @param start The start position in the character array. - * @param length The number of characters to use from the - * character array. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ContentHandler#characters - */ - public void characters (char ch[], int start, int length) - throws SAXException - { - // no op - } - - - /** - * Receive notification of ignorable whitespace in element content. - * - *

By default, do nothing. Application writers may override this - * method to take specific actions for each chunk of ignorable - * whitespace (such as adding data to a node or buffer, or printing - * it to a file).

- * - * @param ch The whitespace characters. - * @param start The start position in the character array. - * @param length The number of characters to use from the - * character array. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ContentHandler#ignorableWhitespace - */ - public void ignorableWhitespace (char ch[], int start, int length) - throws SAXException - { - // no op - } - - - /** - * Receive notification of a processing instruction. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to take specific actions for each - * processing instruction, such as setting status variables or - * invoking other methods.

- * - * @param target The processing instruction target. - * @param data The processing instruction data, or null if - * none is supplied. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ContentHandler#processingInstruction - */ - public void processingInstruction (String target, String data) - throws SAXException - { - // no op - } - - - /** - * Receive notification of a skipped entity. - * - *

By default, do nothing. Application writers may override this - * method in a subclass to take specific actions for each - * processing instruction, such as setting status variables or - * invoking other methods.

- * - * @param name The name of the skipped entity. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ContentHandler#processingInstruction - */ - public void skippedEntity (String name) - throws SAXException - { - // no op - } - - - - //////////////////////////////////////////////////////////////////// - // Default implementation of the ErrorHandler interface. - //////////////////////////////////////////////////////////////////// - - - /** - * Receive notification of a parser warning. - * - *

The default implementation does nothing. Application writers - * may override this method in a subclass to take specific actions - * for each warning, such as inserting the message in a log file or - * printing it to the console.

- * - * @param e The warning information encoded as an exception. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ErrorHandler#warning - * @see org.xml.sax.SAXParseException - */ - public void warning (SAXParseException e) - throws SAXException - { - // no op - } - - - /** - * Receive notification of a recoverable parser error. - * - *

The default implementation does nothing. Application writers - * may override this method in a subclass to take specific actions - * for each error, such as inserting the message in a log file or - * printing it to the console.

- * - * @param e The warning information encoded as an exception. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ErrorHandler#warning - * @see org.xml.sax.SAXParseException - */ - public void error (SAXParseException e) - throws SAXException - { - // no op - } - - - /** - * Report a fatal XML parsing error. - * - *

The default implementation throws a SAXParseException. - * Application writers may override this method in a subclass if - * they need to take specific actions for each fatal error (such as - * collecting all of the errors into a single report): in any case, - * the application must stop all regular processing when this - * method is invoked, since the document is no longer reliable, and - * the parser may no longer report parsing events.

- * - * @param e The error information encoded as an exception. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @see org.xml.sax.ErrorHandler#fatalError - * @see org.xml.sax.SAXParseException - */ - public void fatalError (SAXParseException e) - throws SAXException - { - throw e; - } - -} - -// end of DefaultHandler.java diff --git a/libjava/external/sax/org/xml/sax/helpers/LocatorImpl.java b/libjava/external/sax/org/xml/sax/helpers/LocatorImpl.java deleted file mode 100644 index 6fa4857277c..00000000000 --- a/libjava/external/sax/org/xml/sax/helpers/LocatorImpl.java +++ /dev/null @@ -1,214 +0,0 @@ -// SAX default implementation for Locator. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: LocatorImpl.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.helpers; - -import org.xml.sax.Locator; - - -/** - * Provide an optional convenience implementation of Locator. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This class is available mainly for application writers, who - * can use it to make a persistent snapshot of a locator at any - * point during a document parse:

- * - *
- * Locator locator;
- * Locator startloc;
- *
- * public void setLocator (Locator locator)
- * {
- *         // note the locator
- *   this.locator = locator;
- * }
- *
- * public void startDocument ()
- * {
- *         // save the location of the start of the document
- *         // for future use.
- *   Locator startloc = new LocatorImpl(locator);
- * }
- *
- * - *

Normally, parser writers will not use this class, since it - * is more efficient to provide location information only when - * requested, rather than constantly updating a Locator object.

- * - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.Locator Locator - */ -public class LocatorImpl implements Locator -{ - - - /** - * Zero-argument constructor. - * - *

This will not normally be useful, since the main purpose - * of this class is to make a snapshot of an existing Locator.

- */ - public LocatorImpl () - { - } - - - /** - * Copy constructor. - * - *

Create a persistent copy of the current state of a locator. - * When the original locator changes, this copy will still keep - * the original values (and it can be used outside the scope of - * DocumentHandler methods).

- * - * @param locator The locator to copy. - */ - public LocatorImpl (Locator locator) - { - setPublicId(locator.getPublicId()); - setSystemId(locator.getSystemId()); - setLineNumber(locator.getLineNumber()); - setColumnNumber(locator.getColumnNumber()); - } - - - - //////////////////////////////////////////////////////////////////// - // Implementation of org.xml.sax.Locator - //////////////////////////////////////////////////////////////////// - - - /** - * Return the saved public identifier. - * - * @return The public identifier as a string, or null if none - * is available. - * @see org.xml.sax.Locator#getPublicId - * @see #setPublicId - */ - public String getPublicId () - { - return publicId; - } - - - /** - * Return the saved system identifier. - * - * @return The system identifier as a string, or null if none - * is available. - * @see org.xml.sax.Locator#getSystemId - * @see #setSystemId - */ - public String getSystemId () - { - return systemId; - } - - - /** - * Return the saved line number (1-based). - * - * @return The line number as an integer, or -1 if none is available. - * @see org.xml.sax.Locator#getLineNumber - * @see #setLineNumber - */ - public int getLineNumber () - { - return lineNumber; - } - - - /** - * Return the saved column number (1-based). - * - * @return The column number as an integer, or -1 if none is available. - * @see org.xml.sax.Locator#getColumnNumber - * @see #setColumnNumber - */ - public int getColumnNumber () - { - return columnNumber; - } - - - - //////////////////////////////////////////////////////////////////// - // Setters for the properties (not in org.xml.sax.Locator) - //////////////////////////////////////////////////////////////////// - - - /** - * Set the public identifier for this locator. - * - * @param publicId The new public identifier, or null - * if none is available. - * @see #getPublicId - */ - public void setPublicId (String publicId) - { - this.publicId = publicId; - } - - - /** - * Set the system identifier for this locator. - * - * @param systemId The new system identifier, or null - * if none is available. - * @see #getSystemId - */ - public void setSystemId (String systemId) - { - this.systemId = systemId; - } - - - /** - * Set the line number for this locator (1-based). - * - * @param lineNumber The line number, or -1 if none is available. - * @see #getLineNumber - */ - public void setLineNumber (int lineNumber) - { - this.lineNumber = lineNumber; - } - - - /** - * Set the column number for this locator (1-based). - * - * @param columnNumber The column number, or -1 if none is available. - * @see #getColumnNumber - */ - public void setColumnNumber (int columnNumber) - { - this.columnNumber = columnNumber; - } - - - - //////////////////////////////////////////////////////////////////// - // Internal state. - //////////////////////////////////////////////////////////////////// - - private String publicId; - private String systemId; - private int lineNumber; - private int columnNumber; - -} - -// end of LocatorImpl.java diff --git a/libjava/external/sax/org/xml/sax/helpers/NamespaceSupport.java b/libjava/external/sax/org/xml/sax/helpers/NamespaceSupport.java deleted file mode 100644 index 52472fa6e03..00000000000 --- a/libjava/external/sax/org/xml/sax/helpers/NamespaceSupport.java +++ /dev/null @@ -1,836 +0,0 @@ -// NamespaceSupport.java - generic Namespace support for SAX. -// http://www.saxproject.org -// Written by David Megginson -// This class is in the Public Domain. NO WARRANTY! -// $Id: NamespaceSupport.java,v 1.1 2005/02/02 00:41:54 tromey Exp $ - -package org.xml.sax.helpers; - -import java.util.EmptyStackException; -import java.util.Enumeration; -import java.util.Hashtable; -import java.util.Vector; - - -/** - * Encapsulate Namespace logic for use by applications using SAX, - * or internally by SAX drivers. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This class encapsulates the logic of Namespace processing: it - * tracks the declarations currently in force for each context and - * automatically processes qualified XML names into their Namespace - * parts; it can also be used in reverse for generating XML qnames - * from Namespaces.

- * - *

Namespace support objects are reusable, but the reset method - * must be invoked between each session.

- * - *

Here is a simple session:

- * - *
- * String parts[] = new String[3];
- * NamespaceSupport support = new NamespaceSupport();
- *
- * support.pushContext();
- * support.declarePrefix("", "http://www.w3.org/1999/xhtml");
- * support.declarePrefix("dc", "http://www.purl.org/dc#");
- *
- * parts = support.processName("p", parts, false);
- * System.out.println("Namespace URI: " + parts[0]);
- * System.out.println("Local name: " + parts[1]);
- * System.out.println("Raw name: " + parts[2]);
- *
- * parts = support.processName("dc:title", parts, false);
- * System.out.println("Namespace URI: " + parts[0]);
- * System.out.println("Local name: " + parts[1]);
- * System.out.println("Raw name: " + parts[2]);
- *
- * support.popContext();
- * 
- * - *

Note that this class is optimized for the use case where most - * elements do not contain Namespace declarations: if the same - * prefix/URI mapping is repeated for each context (for example), this - * class will be somewhat less efficient.

- * - *

Although SAX drivers (parsers) may choose to use this class to - * implement namespace handling, they are not required to do so. - * Applications must track namespace information themselves if they - * want to use namespace information. - * - * @since SAX 2.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - */ -public class NamespaceSupport -{ - - - //////////////////////////////////////////////////////////////////// - // Constants. - //////////////////////////////////////////////////////////////////// - - - /** - * The XML Namespace URI as a constant. - * The value is http://www.w3.org/XML/1998/namespace - * as defined in the "Namespaces in XML" * recommendation. - * - *

This is the Namespace URI that is automatically mapped - * to the "xml" prefix.

- */ - public final static String XMLNS = - "http://www.w3.org/XML/1998/namespace"; - - - /** - * The namespace declaration URI as a constant. - * The value is http://www.w3.org/xmlns/2000/, as defined - * in a backwards-incompatible erratum to the "Namespaces in XML" - * recommendation. Because that erratum postdated SAX2, SAX2 defaults - * to the original recommendation, and does not normally use this URI. - * - * - *

This is the Namespace URI that is optionally applied to - * xmlns and xmlns:* attributes, which are used to - * declare namespaces.

- * - * @since SAX 2.1alpha - * @see #setNamespaceDeclUris - * @see #isNamespaceDeclUris - */ - public final static String NSDECL = - "http://www.w3.org/xmlns/2000/"; - - - /** - * An empty enumeration. - */ - // GCJ LOCAL: work around gcj bug by making this package-private - final static Enumeration EMPTY_ENUMERATION = - new Vector().elements(); - - - //////////////////////////////////////////////////////////////////// - // Constructor. - //////////////////////////////////////////////////////////////////// - - - /** - * Create a new Namespace support object. - */ - public NamespaceSupport () - { - reset(); - } - - - - //////////////////////////////////////////////////////////////////// - // Context management. - //////////////////////////////////////////////////////////////////// - - - /** - * Reset this Namespace support object for reuse. - * - *

It is necessary to invoke this method before reusing the - * Namespace support object for a new session. If namespace - * declaration URIs are to be supported, that flag must also - * be set to a non-default value. - *

- * - * @see #setNamespaceDeclUris - */ - public void reset () - { - contexts = new Context[32]; - namespaceDeclUris = false; - contextPos = 0; - contexts[contextPos] = currentContext = new Context(); - currentContext.declarePrefix("xml", XMLNS); - } - - - /** - * Start a new Namespace context. - * The new context will automatically inherit - * the declarations of its parent context, but it will also keep - * track of which declarations were made within this context. - * - *

Event callback code should start a new context once per element. - * This means being ready to call this in either of two places. - * For elements that don't include namespace declarations, the - * ContentHandler.startElement() callback is the right place. - * For elements with such a declaration, it'd done in the first - * ContentHandler.startPrefixMapping() callback. - * A boolean flag can be used to - * track whether a context has been started yet. When either of - * those methods is called, it checks the flag to see if a new context - * needs to be started. If so, it starts the context and sets the - * flag. After ContentHandler.startElement() - * does that, it always clears the flag. - * - *

Normally, SAX drivers would push a new context at the beginning - * of each XML element. Then they perform a first pass over the - * attributes to process all namespace declarations, making - * ContentHandler.startPrefixMapping() callbacks. - * Then a second pass is made, to determine the namespace-qualified - * names for all attributes and for the element name. - * Finally all the information for the - * ContentHandler.startElement() callback is available, - * so it can then be made. - * - *

The Namespace support object always starts with a base context - * already in force: in this context, only the "xml" prefix is - * declared.

- * - * @see org.xml.sax.ContentHandler - * @see #popContext - */ - public void pushContext () - { - int max = contexts.length; - - contexts [contextPos].declsOK = false; - contextPos++; - - // Extend the array if necessary - if (contextPos >= max) { - Context newContexts[] = new Context[max*2]; - System.arraycopy(contexts, 0, newContexts, 0, max); - max *= 2; - contexts = newContexts; - } - - // Allocate the context if necessary. - currentContext = contexts[contextPos]; - if (currentContext == null) { - contexts[contextPos] = currentContext = new Context(); - } - - // Set the parent, if any. - if (contextPos > 0) { - currentContext.setParent(contexts[contextPos - 1]); - } - } - - - /** - * Revert to the previous Namespace context. - * - *

Normally, you should pop the context at the end of each - * XML element. After popping the context, all Namespace prefix - * mappings that were previously in force are restored.

- * - *

You must not attempt to declare additional Namespace - * prefixes after popping a context, unless you push another - * context first.

- * - * @see #pushContext - */ - public void popContext () - { - contexts[contextPos].clear(); - contextPos--; - if (contextPos < 0) { - throw new EmptyStackException(); - } - currentContext = contexts[contextPos]; - } - - - - //////////////////////////////////////////////////////////////////// - // Operations within a context. - //////////////////////////////////////////////////////////////////// - - - /** - * Declare a Namespace prefix. All prefixes must be declared - * before they are referenced. For example, a SAX driver (parser) - * would scan an element's attributes - * in two passes: first for namespace declarations, - * then a second pass using {@link #processName processName()} to - * interpret prefixes against (potentially redefined) prefixes. - * - *

This method declares a prefix in the current Namespace - * context; the prefix will remain in force until this context - * is popped, unless it is shadowed in a descendant context.

- * - *

To declare the default element Namespace, use the empty string as - * the prefix.

- * - *

Note that you must not declare a prefix after - * you've pushed and popped another Namespace context, or - * treated the declarations phase as complete by processing - * a prefixed name.

- * - *

Note that there is an asymmetry in this library: {@link - * #getPrefix getPrefix} will not return the "" prefix, - * even if you have declared a default element namespace. - * To check for a default namespace, - * you have to look it up explicitly using {@link #getURI getURI}. - * This asymmetry exists to make it easier to look up prefixes - * for attribute names, where the default prefix is not allowed.

- * - * @param prefix The prefix to declare, or the empty string to - * indicate the default element namespace. This may never have - * the value "xml" or "xmlns". - * @param uri The Namespace URI to associate with the prefix. - * @return true if the prefix was legal, false otherwise - * - * @see #processName - * @see #getURI - * @see #getPrefix - */ - public boolean declarePrefix (String prefix, String uri) - { - if (prefix.equals("xml") || prefix.equals("xmlns")) { - return false; - } else { - currentContext.declarePrefix(prefix, uri); - return true; - } - } - - - /** - * Process a raw XML qualified name, after all declarations in the - * current context have been handled by {@link #declarePrefix - * declarePrefix()}. - * - *

This method processes a raw XML qualified name in the - * current context by removing the prefix and looking it up among - * the prefixes currently declared. The return value will be the - * array supplied by the caller, filled in as follows:

- * - *
- *
parts[0]
- *
The Namespace URI, or an empty string if none is - * in use.
- *
parts[1]
- *
The local name (without prefix).
- *
parts[2]
- *
The original raw name.
- *
- * - *

All of the strings in the array will be internalized. If - * the raw name has a prefix that has not been declared, then - * the return value will be null.

- * - *

Note that attribute names are processed differently than - * element names: an unprefixed element name will receive the - * default Namespace (if any), while an unprefixed attribute name - * will not.

- * - * @param qName The XML qualified name to be processed. - * @param parts An array supplied by the caller, capable of - * holding at least three members. - * @param isAttribute A flag indicating whether this is an - * attribute name (true) or an element name (false). - * @return The supplied array holding three internalized strings - * representing the Namespace URI (or empty string), the - * local name, and the XML qualified name; or null if there - * is an undeclared prefix. - * @see #declarePrefix - * @see java.lang.String#intern */ - public String [] processName (String qName, String parts[], - boolean isAttribute) - { - String myParts[] = currentContext.processName(qName, isAttribute); - if (myParts == null) { - return null; - } else { - parts[0] = myParts[0]; - parts[1] = myParts[1]; - parts[2] = myParts[2]; - return parts; - } - } - - - /** - * Look up a prefix and get the currently-mapped Namespace URI. - * - *

This method looks up the prefix in the current context. - * Use the empty string ("") for the default Namespace.

- * - * @param prefix The prefix to look up. - * @return The associated Namespace URI, or null if the prefix - * is undeclared in this context. - * @see #getPrefix - * @see #getPrefixes - */ - public String getURI (String prefix) - { - return currentContext.getURI(prefix); - } - - - /** - * Return an enumeration of all prefixes whose declarations are - * active in the current context. - * This includes declarations from parent contexts that have - * not been overridden. - * - *

Note: if there is a default prefix, it will not be - * returned in this enumeration; check for the default prefix - * using the {@link #getURI getURI} with an argument of "".

- * - * @return An enumeration of prefixes (never empty). - * @see #getDeclaredPrefixes - * @see #getURI - */ - public Enumeration getPrefixes () - { - return currentContext.getPrefixes(); - } - - - /** - * Return one of the prefixes mapped to a Namespace URI. - * - *

If more than one prefix is currently mapped to the same - * URI, this method will make an arbitrary selection; if you - * want all of the prefixes, use the {@link #getPrefixes} - * method instead.

- * - *

Note: this will never return the empty (default) prefix; - * to check for a default prefix, use the {@link #getURI getURI} - * method with an argument of "".

- * - * @param uri the namespace URI - * @return one of the prefixes currently mapped to the URI supplied, - * or null if none is mapped or if the URI is assigned to - * the default namespace - * @see #getPrefixes(java.lang.String) - * @see #getURI - */ - public String getPrefix (String uri) - { - return currentContext.getPrefix(uri); - } - - - /** - * Return an enumeration of all prefixes for a given URI whose - * declarations are active in the current context. - * This includes declarations from parent contexts that have - * not been overridden. - * - *

This method returns prefixes mapped to a specific Namespace - * URI. The xml: prefix will be included. If you want only one - * prefix that's mapped to the Namespace URI, and you don't care - * which one you get, use the {@link #getPrefix getPrefix} - * method instead.

- * - *

Note: the empty (default) prefix is never included - * in this enumeration; to check for the presence of a default - * Namespace, use the {@link #getURI getURI} method with an - * argument of "".

- * - * @param uri The Namespace URI. - * @return An enumeration of prefixes (never empty). - * @see #getPrefix - * @see #getDeclaredPrefixes - * @see #getURI - */ - public Enumeration getPrefixes (String uri) - { - Vector prefixes = new Vector(); - Enumeration allPrefixes = getPrefixes(); - while (allPrefixes.hasMoreElements()) { - String prefix = (String)allPrefixes.nextElement(); - if (uri.equals(getURI(prefix))) { - prefixes.addElement(prefix); - } - } - return prefixes.elements(); - } - - - /** - * Return an enumeration of all prefixes declared in this context. - * - *

The empty (default) prefix will be included in this - * enumeration; note that this behaviour differs from that of - * {@link #getPrefix} and {@link #getPrefixes}.

- * - * @return An enumeration of all prefixes declared in this - * context. - * @see #getPrefixes - * @see #getURI - */ - public Enumeration getDeclaredPrefixes () - { - return currentContext.getDeclaredPrefixes(); - } - - /** - * Controls whether namespace declaration attributes are placed - * into the {@link #NSDECL NSDECL} namespace - * by {@link #processName processName()}. This may only be - * changed before any contexts have been pushed. - * - * @since SAX 2.1alpha - * - * @exception IllegalStateException when attempting to set this - * after any context has been pushed. - */ - public void setNamespaceDeclUris (boolean value) - { - if (contextPos != 0) - throw new IllegalStateException (); - if (value == namespaceDeclUris) - return; - namespaceDeclUris = value; - if (value) - currentContext.declarePrefix ("xmlns", NSDECL); - else { - contexts[contextPos] = currentContext = new Context(); - currentContext.declarePrefix("xml", XMLNS); - } - } - - /** - * Returns true if namespace declaration attributes are placed into - * a namespace. This behavior is not the default. - * - * @since SAX 2.1alpha - */ - public boolean isNamespaceDeclUris () - { return namespaceDeclUris; } - - - - //////////////////////////////////////////////////////////////////// - // Internal state. - //////////////////////////////////////////////////////////////////// - - private Context contexts[]; - private Context currentContext; - private int contextPos; - private boolean namespaceDeclUris; - - - //////////////////////////////////////////////////////////////////// - // Internal classes. - //////////////////////////////////////////////////////////////////// - - /** - * Internal class for a single Namespace context. - * - *

This module caches and reuses Namespace contexts, - * so the number allocated - * will be equal to the element depth of the document, not to the total - * number of elements (i.e. 5-10 rather than tens of thousands). - * Also, data structures used to represent contexts are shared when - * possible (child contexts without declarations) to further reduce - * the amount of memory that's consumed. - *

- */ - final class Context { - - /** - * Create the root-level Namespace context. - */ - Context () - { - copyTables(); - } - - - /** - * (Re)set the parent of this Namespace context. - * The context must either have been freshly constructed, - * or must have been cleared. - * - * @param context The parent Namespace context object. - */ - void setParent (Context parent) - { - this.parent = parent; - declarations = null; - prefixTable = parent.prefixTable; - uriTable = parent.uriTable; - elementNameTable = parent.elementNameTable; - attributeNameTable = parent.attributeNameTable; - defaultNS = parent.defaultNS; - declSeen = false; - declsOK = true; - } - - /** - * Makes associated state become collectible, - * invalidating this context. - * {@link #setParent} must be called before - * this context may be used again. - */ - void clear () - { - parent = null; - prefixTable = null; - uriTable = null; - elementNameTable = null; - attributeNameTable = null; - defaultNS = null; - } - - - /** - * Declare a Namespace prefix for this context. - * - * @param prefix The prefix to declare. - * @param uri The associated Namespace URI. - * @see org.xml.sax.helpers.NamespaceSupport#declarePrefix - */ - void declarePrefix (String prefix, String uri) - { - // Lazy processing... - if (!declsOK) - throw new IllegalStateException ( - "can't declare any more prefixes in this context"); - if (!declSeen) { - copyTables(); - } - if (declarations == null) { - declarations = new Vector(); - } - - prefix = prefix.intern(); - uri = uri.intern(); - if ("".equals(prefix)) { - if ("".equals(uri)) { - defaultNS = null; - } else { - defaultNS = uri; - } - } else { - prefixTable.put(prefix, uri); - uriTable.put(uri, prefix); // may wipe out another prefix - } - declarations.addElement(prefix); - } - - - /** - * Process an XML qualified name in this context. - * - * @param qName The XML qualified name. - * @param isAttribute true if this is an attribute name. - * @return An array of three strings containing the - * URI part (or empty string), the local part, - * and the raw name, all internalized, or null - * if there is an undeclared prefix. - * @see org.xml.sax.helpers.NamespaceSupport#processName - */ - String [] processName (String qName, boolean isAttribute) - { - String name[]; - Hashtable table; - - // detect errors in call sequence - declsOK = false; - - // Select the appropriate table. - if (isAttribute) { - table = attributeNameTable; - } else { - table = elementNameTable; - } - - // Start by looking in the cache, and - // return immediately if the name - // is already known in this content - name = (String[])table.get(qName); - if (name != null) { - return name; - } - - // We haven't seen this name in this - // context before. Maybe in the parent - // context, but we can't assume prefix - // bindings are the same. - name = new String[3]; - name[2] = qName.intern(); - int index = qName.indexOf(':'); - - - // No prefix. - if (index == -1) { - if (isAttribute) { - if (qName == "xmlns" && namespaceDeclUris) - name[0] = NSDECL; - else - name[0] = ""; - } else if (defaultNS == null) { - name[0] = ""; - } else { - name[0] = defaultNS; - } - name[1] = name[2]; - } - - // Prefix - else { - String prefix = qName.substring(0, index); - String local = qName.substring(index+1); - String uri; - if ("".equals(prefix)) { - uri = defaultNS; - } else { - uri = (String)prefixTable.get(prefix); - } - if (uri == null - || (!isAttribute && "xmlns".equals (prefix))) { - return null; - } - name[0] = uri; - name[1] = local.intern(); - } - - // Save in the cache for future use. - // (Could be shared with parent context...) - table.put(name[2], name); - return name; - } - - - /** - * Look up the URI associated with a prefix in this context. - * - * @param prefix The prefix to look up. - * @return The associated Namespace URI, or null if none is - * declared. - * @see org.xml.sax.helpers.NamespaceSupport#getURI - */ - String getURI (String prefix) - { - if ("".equals(prefix)) { - return defaultNS; - } else if (prefixTable == null) { - return null; - } else { - return (String)prefixTable.get(prefix); - } - } - - - /** - * Look up one of the prefixes associated with a URI in this context. - * - *

Since many prefixes may be mapped to the same URI, - * the return value may be unreliable.

- * - * @param uri The URI to look up. - * @return The associated prefix, or null if none is declared. - * @see org.xml.sax.helpers.NamespaceSupport#getPrefix - */ - String getPrefix (String uri) - { - if (uriTable == null) { - return null; - } else { - return (String)uriTable.get(uri); - } - } - - - /** - * Return an enumeration of prefixes declared in this context. - * - * @return An enumeration of prefixes (possibly empty). - * @see org.xml.sax.helpers.NamespaceSupport#getDeclaredPrefixes - */ - Enumeration getDeclaredPrefixes () - { - if (declarations == null) { - return EMPTY_ENUMERATION; - } else { - return declarations.elements(); - } - } - - - /** - * Return an enumeration of all prefixes currently in force. - * - *

The default prefix, if in force, is not - * returned, and will have to be checked for separately.

- * - * @return An enumeration of prefixes (never empty). - * @see org.xml.sax.helpers.NamespaceSupport#getPrefixes - */ - Enumeration getPrefixes () - { - if (prefixTable == null) { - return EMPTY_ENUMERATION; - } else { - return prefixTable.keys(); - } - } - - - - //////////////////////////////////////////////////////////////// - // Internal methods. - //////////////////////////////////////////////////////////////// - - - /** - * Copy on write for the internal tables in this context. - * - *

This class is optimized for the normal case where most - * elements do not contain Namespace declarations.

- */ - private void copyTables () - { - if (prefixTable != null) { - prefixTable = (Hashtable)prefixTable.clone(); - } else { - prefixTable = new Hashtable(); - } - if (uriTable != null) { - uriTable = (Hashtable)uriTable.clone(); - } else { - uriTable = new Hashtable(); - } - elementNameTable = new Hashtable(); - attributeNameTable = new Hashtable(); - declSeen = true; - } - - - - //////////////////////////////////////////////////////////////// - // Protected state. - //////////////////////////////////////////////////////////////// - - Hashtable prefixTable; - Hashtable uriTable; - Hashtable elementNameTable; - Hashtable attributeNameTable; - String defaultNS = null; - boolean declsOK = true; - - - - //////////////////////////////////////////////////////////////// - // Internal state. - //////////////////////////////////////////////////////////////// - - private Vector declarations = null; - private boolean declSeen = false; - private Context parent = null; - } -} - -// end of NamespaceSupport.java diff --git a/libjava/external/sax/org/xml/sax/helpers/NewInstance.java b/libjava/external/sax/org/xml/sax/helpers/NewInstance.java deleted file mode 100644 index 70c043eb42f..00000000000 --- a/libjava/external/sax/org/xml/sax/helpers/NewInstance.java +++ /dev/null @@ -1,79 +0,0 @@ -// NewInstance.java - create a new instance of a class by name. -// http://www.saxproject.org -// Written by Edwin Goei, edwingo@apache.org -// and by David Brownell, dbrownell@users.sourceforge.net -// NO WARRANTY! This class is in the Public Domain. -// $Id: NewInstance.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.helpers; - -import java.lang.reflect.Method; -import java.lang.reflect.InvocationTargetException; - -/** - * Create a new instance of a class by name. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This class contains a static method for creating an instance of a - * class from an explicit class name. It tries to use the thread's context - * ClassLoader if possible and falls back to using - * Class.forName(String).

- * - *

This code is designed to compile and run on JDK version 1.1 and later - * including versions of Java 2.

- * - * @author Edwin Goei, David Brownell - * @version 2.0.1 (sax2r2) - */ -class NewInstance { - - /** - * Creates a new instance of the specified class name - * - * Package private so this code is not exposed at the API level. - */ - static Object newInstance (ClassLoader classLoader, String className) - throws ClassNotFoundException, IllegalAccessException, - InstantiationException - { - Class driverClass; - if (classLoader == null) { - driverClass = Class.forName(className); - } else { - driverClass = classLoader.loadClass(className); - } - return driverClass.newInstance(); - } - - /** - * Figure out which ClassLoader to use. For JDK 1.2 and later use - * the context ClassLoader. - */ - static ClassLoader getClassLoader () - { - Method m = null; - - try { - m = Thread.class.getMethod("getContextClassLoader", null); - } catch (NoSuchMethodException e) { - // Assume that we are running JDK 1.1, use the current ClassLoader - return NewInstance.class.getClassLoader(); - } - - try { - return (ClassLoader) m.invoke(Thread.currentThread(), null); - } catch (IllegalAccessException e) { - // assert(false) - throw new UnknownError(e.getMessage()); - } catch (InvocationTargetException e) { - // assert(e.getTargetException() instanceof SecurityException) - throw new UnknownError(e.getMessage()); - } - } -} diff --git a/libjava/external/sax/org/xml/sax/helpers/ParserAdapter.java b/libjava/external/sax/org/xml/sax/helpers/ParserAdapter.java deleted file mode 100644 index 748ad1c8499..00000000000 --- a/libjava/external/sax/org/xml/sax/helpers/ParserAdapter.java +++ /dev/null @@ -1,1046 +0,0 @@ -// ParserAdapter.java - adapt a SAX1 Parser to a SAX2 XMLReader. -// http://www.saxproject.org -// Written by David Megginson -// NO WARRANTY! This class is in the public domain. -// $Id: ParserAdapter.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.helpers; - -import java.io.IOException; -import java.util.Enumeration; -import java.util.Vector; - -import org.xml.sax.Parser; // deprecated -import org.xml.sax.InputSource; -import org.xml.sax.Locator; -import org.xml.sax.AttributeList; // deprecated -import org.xml.sax.EntityResolver; -import org.xml.sax.DTDHandler; -import org.xml.sax.DocumentHandler; // deprecated -import org.xml.sax.ErrorHandler; -import org.xml.sax.SAXException; -import org.xml.sax.SAXParseException; - -import org.xml.sax.XMLReader; -import org.xml.sax.Attributes; -import org.xml.sax.ContentHandler; -import org.xml.sax.SAXNotRecognizedException; -import org.xml.sax.SAXNotSupportedException; - - -/** - * Adapt a SAX1 Parser as a SAX2 XMLReader. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This class wraps a SAX1 {@link org.xml.sax.Parser Parser} - * and makes it act as a SAX2 {@link org.xml.sax.XMLReader XMLReader}, - * with feature, property, and Namespace support. Note - * that it is not possible to report {@link org.xml.sax.ContentHandler#skippedEntity - * skippedEntity} events, since SAX1 does not make that information available.

- * - *

This adapter does not test for duplicate Namespace-qualified - * attribute names.

- * - * @since SAX 2.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.helpers.XMLReaderAdapter - * @see org.xml.sax.XMLReader - * @see org.xml.sax.Parser - */ -public class ParserAdapter implements XMLReader, DocumentHandler -{ - - - //////////////////////////////////////////////////////////////////// - // Constructors. - //////////////////////////////////////////////////////////////////// - - - /** - * Construct a new parser adapter. - * - *

Use the "org.xml.sax.parser" property to locate the - * embedded SAX1 driver.

- * - * @exception SAXException If the embedded driver - * cannot be instantiated or if the - * org.xml.sax.parser property is not specified. - */ - public ParserAdapter () - throws SAXException - { - super(); - - String driver = System.getProperty("org.xml.sax.parser"); - - try { - setup(ParserFactory.makeParser()); - } catch (ClassNotFoundException e1) { - throw new - SAXException("Cannot find SAX1 driver class " + - driver, e1); - } catch (IllegalAccessException e2) { - throw new - SAXException("SAX1 driver class " + - driver + - " found but cannot be loaded", e2); - } catch (InstantiationException e3) { - throw new - SAXException("SAX1 driver class " + - driver + - " loaded but cannot be instantiated", e3); - } catch (ClassCastException e4) { - throw new - SAXException("SAX1 driver class " + - driver + - " does not implement org.xml.sax.Parser"); - } catch (NullPointerException e5) { - throw new - SAXException("System property org.xml.sax.parser not specified"); - } - } - - - /** - * Construct a new parser adapter. - * - *

Note that the embedded parser cannot be changed once the - * adapter is created; to embed a different parser, allocate - * a new ParserAdapter.

- * - * @param parser The SAX1 parser to embed. - * @exception java.lang.NullPointerException If the parser parameter - * is null. - */ - public ParserAdapter (Parser parser) - { - super(); - setup(parser); - } - - - /** - * Internal setup method. - * - * @param parser The embedded parser. - * @exception java.lang.NullPointerException If the parser parameter - * is null. - */ - private void setup (Parser parser) - { - if (parser == null) { - throw new - NullPointerException("Parser argument must not be null"); - } - this.parser = parser; - atts = new AttributesImpl(); - nsSupport = new NamespaceSupport(); - attAdapter = new AttributeListAdapter(); - } - - - - //////////////////////////////////////////////////////////////////// - // Implementation of org.xml.sax.XMLReader. - //////////////////////////////////////////////////////////////////// - - - // - // Internal constants for the sake of convenience. - // - private final static String FEATURES = "http://xml.org/sax/features/"; - private final static String NAMESPACES = FEATURES + "namespaces"; - private final static String NAMESPACE_PREFIXES = FEATURES + "namespace-prefixes"; - private final static String XMLNS_URIs = FEATURES + "xmlns-uris"; - - - /** - * Set a feature flag for the parser. - * - *

The only features recognized are namespaces and - * namespace-prefixes.

- * - * @param name The feature name, as a complete URI. - * @param value The requested feature value. - * @exception SAXNotRecognizedException If the feature - * can't be assigned or retrieved. - * @exception SAXNotSupportedException If the feature - * can't be assigned that value. - * @see org.xml.sax.XMLReader#setFeature - */ - public void setFeature (String name, boolean value) - throws SAXNotRecognizedException, SAXNotSupportedException - { - if (name.equals(NAMESPACES)) { - checkNotParsing("feature", name); - namespaces = value; - if (!namespaces && !prefixes) { - prefixes = true; - } - } else if (name.equals(NAMESPACE_PREFIXES)) { - checkNotParsing("feature", name); - prefixes = value; - if (!prefixes && !namespaces) { - namespaces = true; - } - } else if (name.equals(XMLNS_URIs)) { - checkNotParsing("feature", name); - uris = value; - } else { - throw new SAXNotRecognizedException("Feature: " + name); - } - } - - - /** - * Check a parser feature flag. - * - *

The only features recognized are namespaces and - * namespace-prefixes.

- * - * @param name The feature name, as a complete URI. - * @return The current feature value. - * @exception SAXNotRecognizedException If the feature - * value can't be assigned or retrieved. - * @exception SAXNotSupportedException If the - * feature is not currently readable. - * @see org.xml.sax.XMLReader#setFeature - */ - public boolean getFeature (String name) - throws SAXNotRecognizedException, SAXNotSupportedException - { - if (name.equals(NAMESPACES)) { - return namespaces; - } else if (name.equals(NAMESPACE_PREFIXES)) { - return prefixes; - } else if (name.equals(XMLNS_URIs)) { - return uris; - } else { - throw new SAXNotRecognizedException("Feature: " + name); - } - } - - - /** - * Set a parser property. - * - *

No properties are currently recognized.

- * - * @param name The property name. - * @param value The property value. - * @exception SAXNotRecognizedException If the property - * value can't be assigned or retrieved. - * @exception SAXNotSupportedException If the property - * can't be assigned that value. - * @see org.xml.sax.XMLReader#setProperty - */ - public void setProperty (String name, Object value) - throws SAXNotRecognizedException, SAXNotSupportedException - { - throw new SAXNotRecognizedException("Property: " + name); - } - - - /** - * Get a parser property. - * - *

No properties are currently recognized.

- * - * @param name The property name. - * @return The property value. - * @exception SAXNotRecognizedException If the property - * value can't be assigned or retrieved. - * @exception SAXNotSupportedException If the property - * value is not currently readable. - * @see org.xml.sax.XMLReader#getProperty - */ - public Object getProperty (String name) - throws SAXNotRecognizedException, SAXNotSupportedException - { - throw new SAXNotRecognizedException("Property: " + name); - } - - - /** - * Set the entity resolver. - * - * @param resolver The new entity resolver. - * @see org.xml.sax.XMLReader#setEntityResolver - */ - public void setEntityResolver (EntityResolver resolver) - { - entityResolver = resolver; - } - - - /** - * Return the current entity resolver. - * - * @return The current entity resolver, or null if none was supplied. - * @see org.xml.sax.XMLReader#getEntityResolver - */ - public EntityResolver getEntityResolver () - { - return entityResolver; - } - - - /** - * Set the DTD handler. - * - * @param handler the new DTD handler - * @see org.xml.sax.XMLReader#setEntityResolver - */ - public void setDTDHandler (DTDHandler handler) - { - dtdHandler = handler; - } - - - /** - * Return the current DTD handler. - * - * @return the current DTD handler, or null if none was supplied - * @see org.xml.sax.XMLReader#getEntityResolver - */ - public DTDHandler getDTDHandler () - { - return dtdHandler; - } - - - /** - * Set the content handler. - * - * @param handler the new content handler - * @see org.xml.sax.XMLReader#setEntityResolver - */ - public void setContentHandler (ContentHandler handler) - { - contentHandler = handler; - } - - - /** - * Return the current content handler. - * - * @return The current content handler, or null if none was supplied. - * @see org.xml.sax.XMLReader#getEntityResolver - */ - public ContentHandler getContentHandler () - { - return contentHandler; - } - - - /** - * Set the error handler. - * - * @param handler The new error handler. - * @see org.xml.sax.XMLReader#setEntityResolver - */ - public void setErrorHandler (ErrorHandler handler) - { - errorHandler = handler; - } - - - /** - * Return the current error handler. - * - * @return The current error handler, or null if none was supplied. - * @see org.xml.sax.XMLReader#getEntityResolver - */ - public ErrorHandler getErrorHandler () - { - return errorHandler; - } - - - /** - * Parse an XML document. - * - * @param systemId The absolute URL of the document. - * @exception java.io.IOException If there is a problem reading - * the raw content of the document. - * @exception SAXException If there is a problem - * processing the document. - * @see #parse(org.xml.sax.InputSource) - * @see org.xml.sax.Parser#parse(java.lang.String) - */ - public void parse (String systemId) - throws IOException, SAXException - { - parse(new InputSource(systemId)); - } - - - /** - * Parse an XML document. - * - * @param input An input source for the document. - * @exception java.io.IOException If there is a problem reading - * the raw content of the document. - * @exception SAXException If there is a problem - * processing the document. - * @see #parse(java.lang.String) - * @see org.xml.sax.Parser#parse(org.xml.sax.InputSource) - */ - public void parse (InputSource input) - throws IOException, SAXException - { - if (parsing) { - throw new SAXException("Parser is already in use"); - } - setupParser(); - parsing = true; - try { - parser.parse(input); - } finally { - parsing = false; - } - parsing = false; - } - - - - //////////////////////////////////////////////////////////////////// - // Implementation of org.xml.sax.DocumentHandler. - //////////////////////////////////////////////////////////////////// - - - /** - * Adapter implementation method; do not call. - * Adapt a SAX1 document locator event. - * - * @param locator A document locator. - * @see org.xml.sax.ContentHandler#setDocumentLocator - */ - public void setDocumentLocator (Locator locator) - { - this.locator = locator; - if (contentHandler != null) { - contentHandler.setDocumentLocator(locator); - } - } - - - /** - * Adapter implementation method; do not call. - * Adapt a SAX1 start document event. - * - * @exception SAXException The client may raise a - * processing exception. - * @see org.xml.sax.DocumentHandler#startDocument - */ - public void startDocument () - throws SAXException - { - if (contentHandler != null) { - contentHandler.startDocument(); - } - } - - - /** - * Adapter implementation method; do not call. - * Adapt a SAX1 end document event. - * - * @exception SAXException The client may raise a - * processing exception. - * @see org.xml.sax.DocumentHandler#endDocument - */ - public void endDocument () - throws SAXException - { - if (contentHandler != null) { - contentHandler.endDocument(); - } - } - - - /** - * Adapter implementation method; do not call. - * Adapt a SAX1 startElement event. - * - *

If necessary, perform Namespace processing.

- * - * @param qName The qualified (prefixed) name. - * @param qAtts The XML attribute list (with qnames). - * @exception SAXException The client may raise a - * processing exception. - */ - public void startElement (String qName, AttributeList qAtts) - throws SAXException - { - // These are exceptions from the - // first pass; they should be - // ignored if there's a second pass, - // but reported otherwise. - Vector exceptions = null; - - // If we're not doing Namespace - // processing, dispatch this quickly. - if (!namespaces) { - if (contentHandler != null) { - attAdapter.setAttributeList(qAtts); - contentHandler.startElement("", "", qName.intern(), - attAdapter); - } - return; - } - - - // OK, we're doing Namespace processing. - nsSupport.pushContext(); - int length = qAtts.getLength(); - - // First pass: handle NS decls - for (int i = 0; i < length; i++) { - String attQName = qAtts.getName(i); - - if (!attQName.startsWith("xmlns")) - continue; - // Could be a declaration... - String prefix; - int n = attQName.indexOf(':'); - - // xmlns=... - if (n == -1 && attQName.length () == 5) { - prefix = ""; - } else if (n != 5) { - // XML namespaces spec doesn't discuss "xmlnsf:oo" - // (and similarly named) attributes ... at most, warn - continue; - } else // xmlns:foo=... - prefix = attQName.substring(n+1); - - String value = qAtts.getValue(i); - if (!nsSupport.declarePrefix(prefix, value)) { - reportError("Illegal Namespace prefix: " + prefix); - continue; - } - if (contentHandler != null) - contentHandler.startPrefixMapping(prefix, value); - } - - // Second pass: copy all relevant - // attributes into the SAX2 AttributeList - // using updated prefix bindings - atts.clear(); - for (int i = 0; i < length; i++) { - String attQName = qAtts.getName(i); - String type = qAtts.getType(i); - String value = qAtts.getValue(i); - - // Declaration? - if (attQName.startsWith("xmlns")) { - String prefix; - int n = attQName.indexOf(':'); - - if (n == -1 && attQName.length () == 5) { - prefix = ""; - } else if (n != 5) { - // XML namespaces spec doesn't discuss "xmlnsf:oo" - // (and similarly named) attributes ... ignore - prefix = null; - } else { - prefix = attQName.substring(6); - } - // Yes, decl: report or prune - if (prefix != null) { - if (prefixes) { - if (uris) - // note funky case: localname can be null - // when declaring the default prefix, and - // yet the uri isn't null. - atts.addAttribute (nsSupport.XMLNS, prefix, - attQName.intern(), type, value); - else - atts.addAttribute ("", "", - attQName.intern(), type, value); - } - continue; - } - } - - // Not a declaration -- report - try { - String attName[] = processName(attQName, true, true); - atts.addAttribute(attName[0], attName[1], attName[2], - type, value); - } catch (SAXException e) { - if (exceptions == null) - exceptions = new Vector(); - exceptions.addElement(e); - atts.addAttribute("", attQName, attQName, type, value); - } - } - - // now handle the deferred exception reports - if (exceptions != null && errorHandler != null) { - for (int i = 0; i < exceptions.size(); i++) - errorHandler.error((SAXParseException) - (exceptions.elementAt(i))); - } - - // OK, finally report the event. - if (contentHandler != null) { - String name[] = processName(qName, false, false); - contentHandler.startElement(name[0], name[1], name[2], atts); - } - } - - - /** - * Adapter implementation method; do not call. - * Adapt a SAX1 end element event. - * - * @param qName The qualified (prefixed) name. - * @exception SAXException The client may raise a - * processing exception. - * @see org.xml.sax.DocumentHandler#endElement - */ - public void endElement (String qName) - throws SAXException - { - // If we're not doing Namespace - // processing, dispatch this quickly. - if (!namespaces) { - if (contentHandler != null) { - contentHandler.endElement("", "", qName.intern()); - } - return; - } - - // Split the name. - String names[] = processName(qName, false, false); - if (contentHandler != null) { - contentHandler.endElement(names[0], names[1], names[2]); - Enumeration prefixes = nsSupport.getDeclaredPrefixes(); - while (prefixes.hasMoreElements()) { - String prefix = (String)prefixes.nextElement(); - contentHandler.endPrefixMapping(prefix); - } - } - nsSupport.popContext(); - } - - - /** - * Adapter implementation method; do not call. - * Adapt a SAX1 characters event. - * - * @param ch An array of characters. - * @param start The starting position in the array. - * @param length The number of characters to use. - * @exception SAXException The client may raise a - * processing exception. - * @see org.xml.sax.DocumentHandler#characters - */ - public void characters (char ch[], int start, int length) - throws SAXException - { - if (contentHandler != null) { - contentHandler.characters(ch, start, length); - } - } - - - /** - * Adapter implementation method; do not call. - * Adapt a SAX1 ignorable whitespace event. - * - * @param ch An array of characters. - * @param start The starting position in the array. - * @param length The number of characters to use. - * @exception SAXException The client may raise a - * processing exception. - * @see org.xml.sax.DocumentHandler#ignorableWhitespace - */ - public void ignorableWhitespace (char ch[], int start, int length) - throws SAXException - { - if (contentHandler != null) { - contentHandler.ignorableWhitespace(ch, start, length); - } - } - - - /** - * Adapter implementation method; do not call. - * Adapt a SAX1 processing instruction event. - * - * @param target The processing instruction target. - * @param data The remainder of the processing instruction - * @exception SAXException The client may raise a - * processing exception. - * @see org.xml.sax.DocumentHandler#processingInstruction - */ - public void processingInstruction (String target, String data) - throws SAXException - { - if (contentHandler != null) { - contentHandler.processingInstruction(target, data); - } - } - - - - //////////////////////////////////////////////////////////////////// - // Internal utility methods. - //////////////////////////////////////////////////////////////////// - - - /** - * Initialize the parser before each run. - */ - private void setupParser () - { - // catch an illegal "nonsense" state. - if (!prefixes && !namespaces) - throw new IllegalStateException (); - - nsSupport.reset(); - if (uris) - nsSupport.setNamespaceDeclUris (true); - - if (entityResolver != null) { - parser.setEntityResolver(entityResolver); - } - if (dtdHandler != null) { - parser.setDTDHandler(dtdHandler); - } - if (errorHandler != null) { - parser.setErrorHandler(errorHandler); - } - parser.setDocumentHandler(this); - locator = null; - } - - - /** - * Process a qualified (prefixed) name. - * - *

If the name has an undeclared prefix, use only the qname - * and make an ErrorHandler.error callback in case the app is - * interested.

- * - * @param qName The qualified (prefixed) name. - * @param isAttribute true if this is an attribute name. - * @return The name split into three parts. - * @exception SAXException The client may throw - * an exception if there is an error callback. - */ - private String [] processName (String qName, boolean isAttribute, - boolean useException) - throws SAXException - { - String parts[] = nsSupport.processName(qName, nameParts, - isAttribute); - if (parts == null) { - if (useException) - throw makeException("Undeclared prefix: " + qName); - reportError("Undeclared prefix: " + qName); - parts = new String[3]; - parts[0] = parts[1] = ""; - parts[2] = qName.intern(); - } - return parts; - } - - - /** - * Report a non-fatal error. - * - * @param message The error message. - * @exception SAXException The client may throw - * an exception. - */ - void reportError (String message) - throws SAXException - { - if (errorHandler != null) - errorHandler.error(makeException(message)); - } - - - /** - * Construct an exception for the current context. - * - * @param message The error message. - */ - private SAXParseException makeException (String message) - { - if (locator != null) { - return new SAXParseException(message, locator); - } else { - return new SAXParseException(message, null, null, -1, -1); - } - } - - - /** - * Throw an exception if we are parsing. - * - *

Use this method to detect illegal feature or - * property changes.

- * - * @param type The type of thing (feature or property). - * @param name The feature or property name. - * @exception SAXNotSupportedException If a - * document is currently being parsed. - */ - private void checkNotParsing (String type, String name) - throws SAXNotSupportedException - { - if (parsing) { - throw new SAXNotSupportedException("Cannot change " + - type + ' ' + - name + " while parsing"); - - } - } - - - - //////////////////////////////////////////////////////////////////// - // Internal state. - //////////////////////////////////////////////////////////////////// - - private NamespaceSupport nsSupport; - private AttributeListAdapter attAdapter; - - private boolean parsing = false; - private String nameParts[] = new String[3]; - - private Parser parser = null; - - private AttributesImpl atts = null; - - // Features - private boolean namespaces = true; - private boolean prefixes = false; - private boolean uris = false; - - // Properties - - // Handlers - Locator locator; - - EntityResolver entityResolver = null; - DTDHandler dtdHandler = null; - ContentHandler contentHandler = null; - ErrorHandler errorHandler = null; - - - - //////////////////////////////////////////////////////////////////// - // Inner class to wrap an AttributeList when not doing NS proc. - //////////////////////////////////////////////////////////////////// - - - /** - * Adapt a SAX1 AttributeList as a SAX2 Attributes object. - * - *

This class is in the Public Domain, and comes with NO - * WARRANTY of any kind.

- * - *

This wrapper class is used only when Namespace support - * is disabled -- it provides pretty much a direct mapping - * from SAX1 to SAX2, except that names and types are - * interned whenever requested.

- */ - final class AttributeListAdapter implements Attributes - { - - /** - * Construct a new adapter. - */ - AttributeListAdapter () - { - } - - - /** - * Set the embedded AttributeList. - * - *

This method must be invoked before any of the others - * can be used.

- * - * @param The SAX1 attribute list (with qnames). - */ - void setAttributeList (AttributeList qAtts) - { - this.qAtts = qAtts; - } - - - /** - * Return the length of the attribute list. - * - * @return The number of attributes in the list. - * @see org.xml.sax.Attributes#getLength - */ - public int getLength () - { - return qAtts.getLength(); - } - - - /** - * Return the Namespace URI of the specified attribute. - * - * @param The attribute's index. - * @return Always the empty string. - * @see org.xml.sax.Attributes#getURI - */ - public String getURI (int i) - { - return ""; - } - - - /** - * Return the local name of the specified attribute. - * - * @param The attribute's index. - * @return Always the empty string. - * @see org.xml.sax.Attributes#getLocalName - */ - public String getLocalName (int i) - { - return ""; - } - - - /** - * Return the qualified (prefixed) name of the specified attribute. - * - * @param The attribute's index. - * @return The attribute's qualified name, internalized. - */ - public String getQName (int i) - { - return qAtts.getName(i).intern(); - } - - - /** - * Return the type of the specified attribute. - * - * @param The attribute's index. - * @return The attribute's type as an internalized string. - */ - public String getType (int i) - { - return qAtts.getType(i).intern(); - } - - - /** - * Return the value of the specified attribute. - * - * @param The attribute's index. - * @return The attribute's value. - */ - public String getValue (int i) - { - return qAtts.getValue(i); - } - - - /** - * Look up an attribute index by Namespace name. - * - * @param uri The Namespace URI or the empty string. - * @param localName The local name. - * @return The attributes index, or -1 if none was found. - * @see org.xml.sax.Attributes#getIndex(java.lang.String,java.lang.String) - */ - public int getIndex (String uri, String localName) - { - return -1; - } - - - /** - * Look up an attribute index by qualified (prefixed) name. - * - * @param qName The qualified name. - * @return The attributes index, or -1 if none was found. - * @see org.xml.sax.Attributes#getIndex(java.lang.String) - */ - public int getIndex (String qName) - { - int max = atts.getLength(); - for (int i = 0; i < max; i++) { - if (qAtts.getName(i).equals(qName)) { - return i; - } - } - return -1; - } - - - /** - * Look up the type of an attribute by Namespace name. - * - * @param uri The Namespace URI - * @param localName The local name. - * @return The attribute's type as an internalized string. - */ - public String getType (String uri, String localName) - { - return null; - } - - - /** - * Look up the type of an attribute by qualified (prefixed) name. - * - * @param qName The qualified name. - * @return The attribute's type as an internalized string. - */ - public String getType (String qName) - { - return qAtts.getType(qName).intern(); - } - - - /** - * Look up the value of an attribute by Namespace name. - * - * @param uri The Namespace URI - * @param localName The local name. - * @return The attribute's value. - */ - public String getValue (String uri, String localName) - { - return null; - } - - - /** - * Look up the value of an attribute by qualified (prefixed) name. - * - * @param qName The qualified name. - * @return The attribute's value. - */ - public String getValue (String qName) - { - return qAtts.getValue(qName); - } - - private AttributeList qAtts; - } -} - -// end of ParserAdapter.java diff --git a/libjava/external/sax/org/xml/sax/helpers/ParserFactory.java b/libjava/external/sax/org/xml/sax/helpers/ParserFactory.java deleted file mode 100644 index 23139981088..00000000000 --- a/libjava/external/sax/org/xml/sax/helpers/ParserFactory.java +++ /dev/null @@ -1,129 +0,0 @@ -// SAX parser factory. -// http://www.saxproject.org -// No warranty; no copyright -- use this as you will. -// $Id: ParserFactory.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.helpers; - -import java.lang.ClassNotFoundException; -import java.lang.IllegalAccessException; -import java.lang.InstantiationException; -import java.lang.SecurityException; -import java.lang.ClassCastException; - -import org.xml.sax.Parser; - - -/** - * Java-specific class for dynamically loading SAX parsers. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

Note: This class is designed to work with the now-deprecated - * SAX1 {@link org.xml.sax.Parser Parser} class. SAX2 applications should use - * {@link org.xml.sax.helpers.XMLReaderFactory XMLReaderFactory} instead.

- * - *

ParserFactory is not part of the platform-independent definition - * of SAX; it is an additional convenience class designed - * specifically for Java XML application writers. SAX applications - * can use the static methods in this class to allocate a SAX parser - * dynamically at run-time based either on the value of the - * `org.xml.sax.parser' system property or on a string containing the class - * name.

- * - *

Note that the application still requires an XML parser that - * implements SAX1.

- * - * @deprecated This class works with the deprecated - * {@link org.xml.sax.Parser Parser} - * interface. - * @since SAX 1.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - */ -public class ParserFactory { - - - /** - * Private null constructor. - */ - private ParserFactory () - { - } - - - /** - * Create a new SAX parser using the `org.xml.sax.parser' system property. - * - *

The named class must exist and must implement the - * {@link org.xml.sax.Parser Parser} interface.

- * - * @exception java.lang.NullPointerException There is no value - * for the `org.xml.sax.parser' system property. - * @exception java.lang.ClassNotFoundException The SAX parser - * class was not found (check your CLASSPATH). - * @exception IllegalAccessException The SAX parser class was - * found, but you do not have permission to load - * it. - * @exception InstantiationException The SAX parser class was - * found but could not be instantiated. - * @exception java.lang.ClassCastException The SAX parser class - * was found and instantiated, but does not implement - * org.xml.sax.Parser. - * @see #makeParser(java.lang.String) - * @see org.xml.sax.Parser - */ - public static Parser makeParser () - throws ClassNotFoundException, - IllegalAccessException, - InstantiationException, - NullPointerException, - ClassCastException - { - String className = System.getProperty("org.xml.sax.parser"); - if (className == null) { - throw new NullPointerException("No value for sax.parser property"); - } else { - return makeParser(className); - } - } - - - /** - * Create a new SAX parser object using the class name provided. - * - *

The named class must exist and must implement the - * {@link org.xml.sax.Parser Parser} interface.

- * - * @param className A string containing the name of the - * SAX parser class. - * @exception java.lang.ClassNotFoundException The SAX parser - * class was not found (check your CLASSPATH). - * @exception IllegalAccessException The SAX parser class was - * found, but you do not have permission to load - * it. - * @exception InstantiationException The SAX parser class was - * found but could not be instantiated. - * @exception java.lang.ClassCastException The SAX parser class - * was found and instantiated, but does not implement - * org.xml.sax.Parser. - * @see #makeParser() - * @see org.xml.sax.Parser - */ - public static Parser makeParser (String className) - throws ClassNotFoundException, - IllegalAccessException, - InstantiationException, - ClassCastException - { - return (Parser) NewInstance.newInstance ( - NewInstance.getClassLoader (), className); - } - -} - diff --git a/libjava/external/sax/org/xml/sax/helpers/XMLFilterImpl.java b/libjava/external/sax/org/xml/sax/helpers/XMLFilterImpl.java deleted file mode 100644 index 64ff0a4cf88..00000000000 --- a/libjava/external/sax/org/xml/sax/helpers/XMLFilterImpl.java +++ /dev/null @@ -1,713 +0,0 @@ -// XMLFilterImpl.java - base SAX2 filter implementation. -// http://www.saxproject.org -// Written by David Megginson -// NO WARRANTY! This class is in the Public Domain. -// $Id: XMLFilterImpl.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.helpers; - -import java.io.IOException; - -import org.xml.sax.XMLReader; -import org.xml.sax.XMLFilter; -import org.xml.sax.InputSource; -import org.xml.sax.Locator; -import org.xml.sax.Attributes; -import org.xml.sax.EntityResolver; -import org.xml.sax.DTDHandler; -import org.xml.sax.ContentHandler; -import org.xml.sax.ErrorHandler; -import org.xml.sax.SAXException; -import org.xml.sax.SAXParseException; -import org.xml.sax.SAXNotSupportedException; -import org.xml.sax.SAXNotRecognizedException; - - -/** - * Base class for deriving an XML filter. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This class is designed to sit between an {@link org.xml.sax.XMLReader - * XMLReader} and the client application's event handlers. By default, it - * does nothing but pass requests up to the reader and events - * on to the handlers unmodified, but subclasses can override - * specific methods to modify the event stream or the configuration - * requests as they pass through.

- * - * @since SAX 2.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.XMLFilter - * @see org.xml.sax.XMLReader - * @see org.xml.sax.EntityResolver - * @see org.xml.sax.DTDHandler - * @see org.xml.sax.ContentHandler - * @see org.xml.sax.ErrorHandler - */ -public class XMLFilterImpl - implements XMLFilter, EntityResolver, DTDHandler, ContentHandler, ErrorHandler -{ - - - //////////////////////////////////////////////////////////////////// - // Constructors. - //////////////////////////////////////////////////////////////////// - - - /** - * Construct an empty XML filter, with no parent. - * - *

This filter will have no parent: you must assign a parent - * before you start a parse or do any configuration with - * setFeature or setProperty, unless you use this as a pure event - * consumer rather than as an {@link XMLReader}.

- * - * @see org.xml.sax.XMLReader#setFeature - * @see org.xml.sax.XMLReader#setProperty - * @see #setParent - */ - public XMLFilterImpl () - { - super(); - } - - - /** - * Construct an XML filter with the specified parent. - * - * @see #setParent - * @see #getParent - */ - public XMLFilterImpl (XMLReader parent) - { - super(); - setParent(parent); - } - - - - //////////////////////////////////////////////////////////////////// - // Implementation of org.xml.sax.XMLFilter. - //////////////////////////////////////////////////////////////////// - - - /** - * Set the parent reader. - * - *

This is the {@link org.xml.sax.XMLReader XMLReader} from which - * this filter will obtain its events and to which it will pass its - * configuration requests. The parent may itself be another filter.

- * - *

If there is no parent reader set, any attempt to parse - * or to set or get a feature or property will fail.

- * - * @param parent The parent XML reader. - * @see #getParent - */ - public void setParent (XMLReader parent) - { - this.parent = parent; - } - - - /** - * Get the parent reader. - * - * @return The parent XML reader, or null if none is set. - * @see #setParent - */ - public XMLReader getParent () - { - return parent; - } - - - - //////////////////////////////////////////////////////////////////// - // Implementation of org.xml.sax.XMLReader. - //////////////////////////////////////////////////////////////////// - - - /** - * Set the value of a feature. - * - *

This will always fail if the parent is null.

- * - * @param name The feature name. - * @param value The requested feature value. - * @exception org.xml.sax.SAXNotRecognizedException If the feature - * value can't be assigned or retrieved from the parent. - * @exception org.xml.sax.SAXNotSupportedException When the - * parent recognizes the feature name but - * cannot set the requested value. - */ - public void setFeature (String name, boolean value) - throws SAXNotRecognizedException, SAXNotSupportedException - { - if (parent != null) { - parent.setFeature(name, value); - } else { - throw new SAXNotRecognizedException("Feature: " + name); - } - } - - - /** - * Look up the value of a feature. - * - *

This will always fail if the parent is null.

- * - * @param name The feature name. - * @return The current value of the feature. - * @exception org.xml.sax.SAXNotRecognizedException If the feature - * value can't be assigned or retrieved from the parent. - * @exception org.xml.sax.SAXNotSupportedException When the - * parent recognizes the feature name but - * cannot determine its value at this time. - */ - public boolean getFeature (String name) - throws SAXNotRecognizedException, SAXNotSupportedException - { - if (parent != null) { - return parent.getFeature(name); - } else { - throw new SAXNotRecognizedException("Feature: " + name); - } - } - - - /** - * Set the value of a property. - * - *

This will always fail if the parent is null.

- * - * @param name The property name. - * @param value The requested property value. - * @exception org.xml.sax.SAXNotRecognizedException If the property - * value can't be assigned or retrieved from the parent. - * @exception org.xml.sax.SAXNotSupportedException When the - * parent recognizes the property name but - * cannot set the requested value. - */ - public void setProperty (String name, Object value) - throws SAXNotRecognizedException, SAXNotSupportedException - { - if (parent != null) { - parent.setProperty(name, value); - } else { - throw new SAXNotRecognizedException("Property: " + name); - } - } - - - /** - * Look up the value of a property. - * - * @param name The property name. - * @return The current value of the property. - * @exception org.xml.sax.SAXNotRecognizedException If the property - * value can't be assigned or retrieved from the parent. - * @exception org.xml.sax.SAXNotSupportedException When the - * parent recognizes the property name but - * cannot determine its value at this time. - */ - public Object getProperty (String name) - throws SAXNotRecognizedException, SAXNotSupportedException - { - if (parent != null) { - return parent.getProperty(name); - } else { - throw new SAXNotRecognizedException("Property: " + name); - } - } - - - /** - * Set the entity resolver. - * - * @param resolver The new entity resolver. - */ - public void setEntityResolver (EntityResolver resolver) - { - entityResolver = resolver; - } - - - /** - * Get the current entity resolver. - * - * @return The current entity resolver, or null if none was set. - */ - public EntityResolver getEntityResolver () - { - return entityResolver; - } - - - /** - * Set the DTD event handler. - * - * @param handler the new DTD handler - */ - public void setDTDHandler (DTDHandler handler) - { - dtdHandler = handler; - } - - - /** - * Get the current DTD event handler. - * - * @return The current DTD handler, or null if none was set. - */ - public DTDHandler getDTDHandler () - { - return dtdHandler; - } - - - /** - * Set the content event handler. - * - * @param handler the new content handler - */ - public void setContentHandler (ContentHandler handler) - { - contentHandler = handler; - } - - - /** - * Get the content event handler. - * - * @return The current content handler, or null if none was set. - */ - public ContentHandler getContentHandler () - { - return contentHandler; - } - - - /** - * Set the error event handler. - * - * @param handler the new error handler - */ - public void setErrorHandler (ErrorHandler handler) - { - errorHandler = handler; - } - - - /** - * Get the current error event handler. - * - * @return The current error handler, or null if none was set. - */ - public ErrorHandler getErrorHandler () - { - return errorHandler; - } - - - /** - * Parse a document. - * - * @param input The input source for the document entity. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @exception java.io.IOException An IO exception from the parser, - * possibly from a byte stream or character stream - * supplied by the application. - */ - public void parse (InputSource input) - throws SAXException, IOException - { - setupParse(); - parent.parse(input); - } - - - /** - * Parse a document. - * - * @param systemId The system identifier as a fully-qualified URI. - * @exception org.xml.sax.SAXException Any SAX exception, possibly - * wrapping another exception. - * @exception java.io.IOException An IO exception from the parser, - * possibly from a byte stream or character stream - * supplied by the application. - */ - public void parse (String systemId) - throws SAXException, IOException - { - parse(new InputSource(systemId)); - } - - - - //////////////////////////////////////////////////////////////////// - // Implementation of org.xml.sax.EntityResolver. - //////////////////////////////////////////////////////////////////// - - - /** - * Filter an external entity resolution. - * - * @param publicId The entity's public identifier, or null. - * @param systemId The entity's system identifier. - * @return A new InputSource or null for the default. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - * @exception java.io.IOException The client may throw an - * I/O-related exception while obtaining the - * new InputSource. - */ - public InputSource resolveEntity (String publicId, String systemId) - throws SAXException, IOException - { - if (entityResolver != null) { - return entityResolver.resolveEntity(publicId, systemId); - } else { - return null; - } - } - - - - //////////////////////////////////////////////////////////////////// - // Implementation of org.xml.sax.DTDHandler. - //////////////////////////////////////////////////////////////////// - - - /** - * Filter a notation declaration event. - * - * @param name The notation name. - * @param publicId The notation's public identifier, or null. - * @param systemId The notation's system identifier, or null. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void notationDecl (String name, String publicId, String systemId) - throws SAXException - { - if (dtdHandler != null) { - dtdHandler.notationDecl(name, publicId, systemId); - } - } - - - /** - * Filter an unparsed entity declaration event. - * - * @param name The entity name. - * @param publicId The entity's public identifier, or null. - * @param systemId The entity's system identifier, or null. - * @param notationName The name of the associated notation. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void unparsedEntityDecl (String name, String publicId, - String systemId, String notationName) - throws SAXException - { - if (dtdHandler != null) { - dtdHandler.unparsedEntityDecl(name, publicId, systemId, - notationName); - } - } - - - - //////////////////////////////////////////////////////////////////// - // Implementation of org.xml.sax.ContentHandler. - //////////////////////////////////////////////////////////////////// - - - /** - * Filter a new document locator event. - * - * @param locator The document locator. - */ - public void setDocumentLocator (Locator locator) - { - this.locator = locator; - if (contentHandler != null) { - contentHandler.setDocumentLocator(locator); - } - } - - - /** - * Filter a start document event. - * - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void startDocument () - throws SAXException - { - if (contentHandler != null) { - contentHandler.startDocument(); - } - } - - - /** - * Filter an end document event. - * - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void endDocument () - throws SAXException - { - if (contentHandler != null) { - contentHandler.endDocument(); - } - } - - - /** - * Filter a start Namespace prefix mapping event. - * - * @param prefix The Namespace prefix. - * @param uri The Namespace URI. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void startPrefixMapping (String prefix, String uri) - throws SAXException - { - if (contentHandler != null) { - contentHandler.startPrefixMapping(prefix, uri); - } - } - - - /** - * Filter an end Namespace prefix mapping event. - * - * @param prefix The Namespace prefix. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void endPrefixMapping (String prefix) - throws SAXException - { - if (contentHandler != null) { - contentHandler.endPrefixMapping(prefix); - } - } - - - /** - * Filter a start element event. - * - * @param uri The element's Namespace URI, or the empty string. - * @param localName The element's local name, or the empty string. - * @param qName The element's qualified (prefixed) name, or the empty - * string. - * @param atts The element's attributes. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void startElement (String uri, String localName, String qName, - Attributes atts) - throws SAXException - { - if (contentHandler != null) { - contentHandler.startElement(uri, localName, qName, atts); - } - } - - - /** - * Filter an end element event. - * - * @param uri The element's Namespace URI, or the empty string. - * @param localName The element's local name, or the empty string. - * @param qName The element's qualified (prefixed) name, or the empty - * string. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void endElement (String uri, String localName, String qName) - throws SAXException - { - if (contentHandler != null) { - contentHandler.endElement(uri, localName, qName); - } - } - - - /** - * Filter a character data event. - * - * @param ch An array of characters. - * @param start The starting position in the array. - * @param length The number of characters to use from the array. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void characters (char ch[], int start, int length) - throws SAXException - { - if (contentHandler != null) { - contentHandler.characters(ch, start, length); - } - } - - - /** - * Filter an ignorable whitespace event. - * - * @param ch An array of characters. - * @param start The starting position in the array. - * @param length The number of characters to use from the array. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void ignorableWhitespace (char ch[], int start, int length) - throws SAXException - { - if (contentHandler != null) { - contentHandler.ignorableWhitespace(ch, start, length); - } - } - - - /** - * Filter a processing instruction event. - * - * @param target The processing instruction target. - * @param data The text following the target. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void processingInstruction (String target, String data) - throws SAXException - { - if (contentHandler != null) { - contentHandler.processingInstruction(target, data); - } - } - - - /** - * Filter a skipped entity event. - * - * @param name The name of the skipped entity. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void skippedEntity (String name) - throws SAXException - { - if (contentHandler != null) { - contentHandler.skippedEntity(name); - } - } - - - - //////////////////////////////////////////////////////////////////// - // Implementation of org.xml.sax.ErrorHandler. - //////////////////////////////////////////////////////////////////// - - - /** - * Filter a warning event. - * - * @param e The warning as an exception. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void warning (SAXParseException e) - throws SAXException - { - if (errorHandler != null) { - errorHandler.warning(e); - } - } - - - /** - * Filter an error event. - * - * @param e The error as an exception. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void error (SAXParseException e) - throws SAXException - { - if (errorHandler != null) { - errorHandler.error(e); - } - } - - - /** - * Filter a fatal error event. - * - * @param e The error as an exception. - * @exception org.xml.sax.SAXException The client may throw - * an exception during processing. - */ - public void fatalError (SAXParseException e) - throws SAXException - { - if (errorHandler != null) { - errorHandler.fatalError(e); - } - } - - - - //////////////////////////////////////////////////////////////////// - // Internal methods. - //////////////////////////////////////////////////////////////////// - - - /** - * Set up before a parse. - * - *

Before every parse, check whether the parent is - * non-null, and re-register the filter for all of the - * events.

- */ - private void setupParse () - { - if (parent == null) { - throw new NullPointerException("No parent for filter"); - } - parent.setEntityResolver(this); - parent.setDTDHandler(this); - parent.setContentHandler(this); - parent.setErrorHandler(this); - } - - - - //////////////////////////////////////////////////////////////////// - // Internal state. - //////////////////////////////////////////////////////////////////// - - private XMLReader parent = null; - private Locator locator = null; - private EntityResolver entityResolver = null; - private DTDHandler dtdHandler = null; - private ContentHandler contentHandler = null; - private ErrorHandler errorHandler = null; - -} - -// end of XMLFilterImpl.java diff --git a/libjava/external/sax/org/xml/sax/helpers/XMLReaderAdapter.java b/libjava/external/sax/org/xml/sax/helpers/XMLReaderAdapter.java deleted file mode 100644 index 566e69b8d7b..00000000000 --- a/libjava/external/sax/org/xml/sax/helpers/XMLReaderAdapter.java +++ /dev/null @@ -1,538 +0,0 @@ -// XMLReaderAdapter.java - adapt an SAX2 XMLReader to a SAX1 Parser -// http://www.saxproject.org -// Written by David Megginson -// NO WARRANTY! This class is in the public domain. -// $Id: XMLReaderAdapter.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.helpers; - -import java.io.IOException; -import java.util.Locale; - -import org.xml.sax.Parser; // deprecated -import org.xml.sax.Locator; -import org.xml.sax.InputSource; -import org.xml.sax.AttributeList; // deprecated -import org.xml.sax.EntityResolver; -import org.xml.sax.DTDHandler; -import org.xml.sax.DocumentHandler; // deprecated -import org.xml.sax.ErrorHandler; -import org.xml.sax.SAXException; - -import org.xml.sax.XMLReader; -import org.xml.sax.Attributes; -import org.xml.sax.ContentHandler; -import org.xml.sax.SAXNotSupportedException; - - -/** - * Adapt a SAX2 XMLReader as a SAX1 Parser. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This class wraps a SAX2 {@link org.xml.sax.XMLReader XMLReader} - * and makes it act as a SAX1 {@link org.xml.sax.Parser Parser}. The XMLReader - * must support a true value for the - * http://xml.org/sax/features/namespace-prefixes property or parsing will fail - * with a {@link org.xml.sax.SAXException SAXException}; if the XMLReader - * supports a false value for the http://xml.org/sax/features/namespaces - * property, that will also be used to improve efficiency.

- * - * @since SAX 2.0 - * @author David Megginson - * @version 2.0.1 (sax2r2) - * @see org.xml.sax.Parser - * @see org.xml.sax.XMLReader - */ -public class XMLReaderAdapter implements Parser, ContentHandler -{ - - - //////////////////////////////////////////////////////////////////// - // Constructor. - //////////////////////////////////////////////////////////////////// - - - /** - * Create a new adapter. - * - *

Use the "org.xml.sax.driver" property to locate the SAX2 - * driver to embed.

- * - * @exception org.xml.sax.SAXException If the embedded driver - * cannot be instantiated or if the - * org.xml.sax.driver property is not specified. - */ - public XMLReaderAdapter () - throws SAXException - { - setup(XMLReaderFactory.createXMLReader()); - } - - - /** - * Create a new adapter. - * - *

Create a new adapter, wrapped around a SAX2 XMLReader. - * The adapter will make the XMLReader act like a SAX1 - * Parser.

- * - * @param xmlReader The SAX2 XMLReader to wrap. - * @exception java.lang.NullPointerException If the argument is null. - */ - public XMLReaderAdapter (XMLReader xmlReader) - { - setup(xmlReader); - } - - - - /** - * Internal setup. - * - * @param xmlReader The embedded XMLReader. - */ - private void setup (XMLReader xmlReader) - { - if (xmlReader == null) { - throw new NullPointerException("XMLReader must not be null"); - } - this.xmlReader = xmlReader; - qAtts = new AttributesAdapter(); - } - - - - //////////////////////////////////////////////////////////////////// - // Implementation of org.xml.sax.Parser. - //////////////////////////////////////////////////////////////////// - - - /** - * Set the locale for error reporting. - * - *

This is not supported in SAX2, and will always throw - * an exception.

- * - * @param locale the locale for error reporting. - * @see org.xml.sax.Parser#setLocale - * @exception org.xml.sax.SAXException Thrown unless overridden. - */ - public void setLocale (Locale locale) - throws SAXException - { - throw new SAXNotSupportedException("setLocale not supported"); - } - - - /** - * Register the entity resolver. - * - * @param resolver The new resolver. - * @see org.xml.sax.Parser#setEntityResolver - */ - public void setEntityResolver (EntityResolver resolver) - { - xmlReader.setEntityResolver(resolver); - } - - - /** - * Register the DTD event handler. - * - * @param handler The new DTD event handler. - * @see org.xml.sax.Parser#setDTDHandler - */ - public void setDTDHandler (DTDHandler handler) - { - xmlReader.setDTDHandler(handler); - } - - - /** - * Register the SAX1 document event handler. - * - *

Note that the SAX1 document handler has no Namespace - * support.

- * - * @param handler The new SAX1 document event handler. - * @see org.xml.sax.Parser#setDocumentHandler - */ - public void setDocumentHandler (DocumentHandler handler) - { - documentHandler = handler; - } - - - /** - * Register the error event handler. - * - * @param handler The new error event handler. - * @see org.xml.sax.Parser#setErrorHandler - */ - public void setErrorHandler (ErrorHandler handler) - { - xmlReader.setErrorHandler(handler); - } - - - /** - * Parse the document. - * - *

This method will throw an exception if the embedded - * XMLReader does not support the - * http://xml.org/sax/features/namespace-prefixes property.

- * - * @param systemId The absolute URL of the document. - * @exception java.io.IOException If there is a problem reading - * the raw content of the document. - * @exception org.xml.sax.SAXException If there is a problem - * processing the document. - * @see #parse(org.xml.sax.InputSource) - * @see org.xml.sax.Parser#parse(java.lang.String) - */ - public void parse (String systemId) - throws IOException, SAXException - { - parse(new InputSource(systemId)); - } - - - /** - * Parse the document. - * - *

This method will throw an exception if the embedded - * XMLReader does not support the - * http://xml.org/sax/features/namespace-prefixes property.

- * - * @param input An input source for the document. - * @exception java.io.IOException If there is a problem reading - * the raw content of the document. - * @exception org.xml.sax.SAXException If there is a problem - * processing the document. - * @see #parse(java.lang.String) - * @see org.xml.sax.Parser#parse(org.xml.sax.InputSource) - */ - public void parse (InputSource input) - throws IOException, SAXException - { - setupXMLReader(); - xmlReader.parse(input); - } - - - /** - * Set up the XML reader. - */ - private void setupXMLReader () - throws SAXException - { - xmlReader.setFeature("http://xml.org/sax/features/namespace-prefixes", true); - try { - xmlReader.setFeature("http://xml.org/sax/features/namespaces", - false); - } catch (SAXException e) { - // NO OP: it's just extra information, and we can ignore it - } - xmlReader.setContentHandler(this); - } - - - - //////////////////////////////////////////////////////////////////// - // Implementation of org.xml.sax.ContentHandler. - //////////////////////////////////////////////////////////////////// - - - /** - * Set a document locator. - * - * @param locator The document locator. - * @see org.xml.sax.ContentHandler#setDocumentLocator - */ - public void setDocumentLocator (Locator locator) - { - if (documentHandler != null) - documentHandler.setDocumentLocator(locator); - } - - - /** - * Start document event. - * - * @exception org.xml.sax.SAXException The client may raise a - * processing exception. - * @see org.xml.sax.ContentHandler#startDocument - */ - public void startDocument () - throws SAXException - { - if (documentHandler != null) - documentHandler.startDocument(); - } - - - /** - * End document event. - * - * @exception org.xml.sax.SAXException The client may raise a - * processing exception. - * @see org.xml.sax.ContentHandler#endDocument - */ - public void endDocument () - throws SAXException - { - if (documentHandler != null) - documentHandler.endDocument(); - } - - - /** - * Adapt a SAX2 start prefix mapping event. - * - * @param prefix The prefix being mapped. - * @param uri The Namespace URI being mapped to. - * @see org.xml.sax.ContentHandler#startPrefixMapping - */ - public void startPrefixMapping (String prefix, String uri) - { - } - - - /** - * Adapt a SAX2 end prefix mapping event. - * - * @param prefix The prefix being mapped. - * @see org.xml.sax.ContentHandler#endPrefixMapping - */ - public void endPrefixMapping (String prefix) - { - } - - - /** - * Adapt a SAX2 start element event. - * - * @param uri The Namespace URI. - * @param localName The Namespace local name. - * @param qName The qualified (prefixed) name. - * @param atts The SAX2 attributes. - * @exception org.xml.sax.SAXException The client may raise a - * processing exception. - * @see org.xml.sax.ContentHandler#endDocument - */ - public void startElement (String uri, String localName, - String qName, Attributes atts) - throws SAXException - { - if (documentHandler != null) { - qAtts.setAttributes(atts); - documentHandler.startElement(qName, qAtts); - } - } - - - /** - * Adapt a SAX2 end element event. - * - * @param uri The Namespace URI. - * @param localName The Namespace local name. - * @param qName The qualified (prefixed) name. - * @exception org.xml.sax.SAXException The client may raise a - * processing exception. - * @see org.xml.sax.ContentHandler#endElement - */ - public void endElement (String uri, String localName, - String qName) - throws SAXException - { - if (documentHandler != null) - documentHandler.endElement(qName); - } - - - /** - * Adapt a SAX2 characters event. - * - * @param ch An array of characters. - * @param start The starting position in the array. - * @param length The number of characters to use. - * @exception org.xml.sax.SAXException The client may raise a - * processing exception. - * @see org.xml.sax.ContentHandler#characters - */ - public void characters (char ch[], int start, int length) - throws SAXException - { - if (documentHandler != null) - documentHandler.characters(ch, start, length); - } - - - /** - * Adapt a SAX2 ignorable whitespace event. - * - * @param ch An array of characters. - * @param start The starting position in the array. - * @param length The number of characters to use. - * @exception org.xml.sax.SAXException The client may raise a - * processing exception. - * @see org.xml.sax.ContentHandler#ignorableWhitespace - */ - public void ignorableWhitespace (char ch[], int start, int length) - throws SAXException - { - if (documentHandler != null) - documentHandler.ignorableWhitespace(ch, start, length); - } - - - /** - * Adapt a SAX2 processing instruction event. - * - * @param target The processing instruction target. - * @param data The remainder of the processing instruction - * @exception org.xml.sax.SAXException The client may raise a - * processing exception. - * @see org.xml.sax.ContentHandler#processingInstruction - */ - public void processingInstruction (String target, String data) - throws SAXException - { - if (documentHandler != null) - documentHandler.processingInstruction(target, data); - } - - - /** - * Adapt a SAX2 skipped entity event. - * - * @param name The name of the skipped entity. - * @see org.xml.sax.ContentHandler#skippedEntity - * @exception org.xml.sax.SAXException Throwable by subclasses. - */ - public void skippedEntity (String name) - throws SAXException - { - } - - - - //////////////////////////////////////////////////////////////////// - // Internal state. - //////////////////////////////////////////////////////////////////// - - XMLReader xmlReader; - DocumentHandler documentHandler; - AttributesAdapter qAtts; - - - - //////////////////////////////////////////////////////////////////// - // Internal class. - //////////////////////////////////////////////////////////////////// - - - /** - * Internal class to wrap a SAX2 Attributes object for SAX1. - */ - final class AttributesAdapter implements AttributeList - { - AttributesAdapter () - { - } - - - /** - * Set the embedded Attributes object. - * - * @param The embedded SAX2 Attributes. - */ - void setAttributes (Attributes attributes) - { - this.attributes = attributes; - } - - - /** - * Return the number of attributes. - * - * @return The length of the attribute list. - * @see org.xml.sax.AttributeList#getLength - */ - public int getLength () - { - return attributes.getLength(); - } - - - /** - * Return the qualified (prefixed) name of an attribute by position. - * - * @return The qualified name. - * @see org.xml.sax.AttributeList#getName - */ - public String getName (int i) - { - return attributes.getQName(i); - } - - - /** - * Return the type of an attribute by position. - * - * @return The type. - * @see org.xml.sax.AttributeList#getType(int) - */ - public String getType (int i) - { - return attributes.getType(i); - } - - - /** - * Return the value of an attribute by position. - * - * @return The value. - * @see org.xml.sax.AttributeList#getValue(int) - */ - public String getValue (int i) - { - return attributes.getValue(i); - } - - - /** - * Return the type of an attribute by qualified (prefixed) name. - * - * @return The type. - * @see org.xml.sax.AttributeList#getType(java.lang.String) - */ - public String getType (String qName) - { - return attributes.getType(qName); - } - - - /** - * Return the value of an attribute by qualified (prefixed) name. - * - * @return The value. - * @see org.xml.sax.AttributeList#getValue(java.lang.String) - */ - public String getValue (String qName) - { - return attributes.getValue(qName); - } - - private Attributes attributes; - } - -} - -// end of XMLReaderAdapter.java diff --git a/libjava/external/sax/org/xml/sax/helpers/XMLReaderFactory.java b/libjava/external/sax/org/xml/sax/helpers/XMLReaderFactory.java deleted file mode 100644 index 0516ff24e71..00000000000 --- a/libjava/external/sax/org/xml/sax/helpers/XMLReaderFactory.java +++ /dev/null @@ -1,202 +0,0 @@ -// XMLReaderFactory.java - factory for creating a new reader. -// http://www.saxproject.org -// Written by David Megginson -// and by David Brownell -// NO WARRANTY! This class is in the Public Domain. -// $Id: XMLReaderFactory.java,v 1.1 2004/12/23 22:38:42 mark Exp $ - -package org.xml.sax.helpers; -import java.io.BufferedReader; -import java.io.InputStream; -import java.io.InputStreamReader; -import org.xml.sax.XMLReader; -import org.xml.sax.SAXException; - - -/** - * Factory for creating an XML reader. - * - *
- * This module, both source code and documentation, is in the - * Public Domain, and comes with NO WARRANTY. - * See http://www.saxproject.org - * for further information. - *
- * - *

This class contains static methods for creating an XML reader - * from an explicit class name, or based on runtime defaults:

- * - *
- * try {
- *   XMLReader myReader = XMLReaderFactory.createXMLReader();
- * } catch (SAXException e) {
- *   System.err.println(e.getMessage());
- * }
- * 
- * - *

Note to Distributions bundled with parsers: - * You should modify the implementation of the no-arguments - * createXMLReader to handle cases where the external - * configuration mechanisms aren't set up. That method should do its - * best to return a parser when one is in the class path, even when - * nothing bound its class name to org.xml.sax.driver so - * those configuration mechanisms would see it.

- * - * @since SAX 2.0 - * @author David Megginson, David Brownell - * @version 2.0.1 (sax2r2) - */ -final public class XMLReaderFactory -{ - /** - * Private constructor. - * - *

This constructor prevents the class from being instantiated.

- */ - private XMLReaderFactory () - { - } - - private static final String property = "org.xml.sax.driver"; - - /** - * Attempt to create an XMLReader from system defaults. - * In environments which can support it, the name of the XMLReader - * class is determined by trying each these options in order, and - * using the first one which succeeds:

    - * - *
  • If the system property org.xml.sax.driver - * has a value, that is used as an XMLReader class name.
  • - * - *
  • The JAR "Services API" is used to look for a class name - * in the META-INF/services/org.xml.sax.driver file in - * jarfiles available to the runtime.
  • - * - *
  • SAX parser distributions are strongly encouraged to provide - * a default XMLReader class name that will take effect only when - * previous options (on this list) are not successful.
  • - * - *
  • Finally, if {@link ParserFactory#makeParser()} can - * return a system default SAX1 parser, that parser is wrapped in - * a {@link ParserAdapter}. (This is a migration aid for SAX1 - * environments, where the org.xml.sax.parser system - * property will often be usable.)
  • - * - *
- * - *

In environments such as small embedded systems, which can not - * support that flexibility, other mechanisms to determine the default - * may be used.

- * - *

Note that many Java environments allow system properties to be - * initialized on a command line. This means that in most cases - * setting a good value for that property ensures that calls to this - * method will succeed, except when security policies intervene. - * This will also maximize application portability to older SAX - * environments, with less robust implementations of this method. - *

- * - * @return A new XMLReader. - * @exception org.xml.sax.SAXException If no default XMLReader class - * can be identified and instantiated. - * @see #createXMLReader(java.lang.String) - */ - public static XMLReader createXMLReader () - throws SAXException - { - String className = null; - ClassLoader loader = NewInstance.getClassLoader (); - - // 1. try the JVM-instance-wide system property - try { className = System.getProperty (property); } - catch (RuntimeException e) { /* normally fails for applets */ } - - // 2. if that fails, try META-INF/services/ - if (className == null) { - try { - String service = "META-INF/services/" + property; - InputStream in; - BufferedReader reader; - - if (loader == null) - in = ClassLoader.getSystemResourceAsStream (service); - else - in = loader.getResourceAsStream (service); - - if (in != null) { - reader = new BufferedReader ( - new InputStreamReader (in, "UTF8")); - className = reader.readLine (); - in.close (); - } - } catch (Exception e) { - } - } - - // 3. Distro-specific fallback - if (className == null) { -// BEGIN DISTRIBUTION-SPECIFIC - - // EXAMPLE: - // className = "com.example.sax.XmlReader"; - // or a $JAVA_HOME/jre/lib/*properties setting... - -// END DISTRIBUTION-SPECIFIC - } - - // do we know the XMLReader implementation class yet? - if (className != null) - return loadClass (loader, className); - - // 4. panic -- adapt any SAX1 parser - try { - return new ParserAdapter (ParserFactory.makeParser ()); - } catch (Exception e) { - throw new SAXException ("Can't create default XMLReader; " - + "is system property org.xml.sax.driver set?"); - } - } - - - /** - * Attempt to create an XML reader from a class name. - * - *

Given a class name, this method attempts to load - * and instantiate the class as an XML reader.

- * - *

Note that this method will not be usable in environments where - * the caller (perhaps an applet) is not permitted to load classes - * dynamically.

- * - * @return A new XML reader. - * @exception org.xml.sax.SAXException If the class cannot be - * loaded, instantiated, and cast to XMLReader. - * @see #createXMLReader() - */ - public static XMLReader createXMLReader (String className) - throws SAXException - { - return loadClass (NewInstance.getClassLoader (), className); - } - - private static XMLReader loadClass (ClassLoader loader, String className) - throws SAXException - { - try { - return (XMLReader) NewInstance.newInstance (loader, className); - } catch (ClassNotFoundException e1) { - throw new SAXException("SAX2 driver class " + className + - " not found", e1); - } catch (IllegalAccessException e2) { - throw new SAXException("SAX2 driver class " + className + - " found but cannot be loaded", e2); - } catch (InstantiationException e3) { - throw new SAXException("SAX2 driver class " + className + - " loaded but cannot be instantiated (no empty public constructor?)", - e3); - } catch (ClassCastException e4) { - throw new SAXException("SAX2 driver class " + className + - " does not implement XMLReader", e4); - } - } -} diff --git a/libjava/external/sax/org/xml/sax/helpers/package.html b/libjava/external/sax/org/xml/sax/helpers/package.html deleted file mode 100644 index 06d4a30a63c..00000000000 --- a/libjava/external/sax/org/xml/sax/helpers/package.html +++ /dev/null @@ -1,11 +0,0 @@ - - - - -

This package contains "helper" classes, including -support for bootstrapping SAX-based applications. - -

See http://www.saxproject.org -for more information about SAX.

- - diff --git a/libjava/external/sax/org/xml/sax/package.html b/libjava/external/sax/org/xml/sax/package.html deleted file mode 100644 index b71f67fdda7..00000000000 --- a/libjava/external/sax/org/xml/sax/package.html +++ /dev/null @@ -1,297 +0,0 @@ - - - - -

This package provides the core SAX APIs. -Some SAX1 APIs are deprecated to encourage integration of -namespace-awareness into designs of new applications -and into maintenance of existing infrastructure.

- -

See http://www.saxproject.org -for more information about SAX.

- - -

SAX2 Standard Feature Flags

- -

One of the essential characteristics of SAX2 is that it added -feature flags which can be used to examine and perhaps modify -parser modes, in particular modes such as validation. -Since features are identified by (absolute) URIs, anyone -can define such features. -Currently defined standard feature URIs have the prefix -http://xml.org/sax/features/ before an identifier such as -validation. Turn features on or off using -setFeature. Those standard identifiers are:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Feature IDAccessDefaultDescription
external-general-entitiesread/writeunspecified Reports whether this parser processes external - general entities; always true if validating. -
external-parameter-entitiesread/writeunspecified Reports whether this parser processes external - parameter entities; always true if validating. -
is-standalone(parsing) read-only, (not parsing) nonenot applicable May be examined only during a parse, after the - startDocument() callback has been completed; read-only. - The value is true if the document specified standalone="yes" in - its XML declaration, and otherwise is false. -
lexical-handler/parameter-entitiesread/writeunspecified A value of "true" indicates that the LexicalHandler will report - the beginning and end of parameter entities. -
namespacesread/writetrue A value of "true" indicates namespace URIs and unprefixed local names - for element and attribute names will be available. -
namespace-prefixesread/writefalse A value of "true" indicates that XML qualified names (with prefixes) and - attributes (including xmlns* attributes) will be available. -
resolve-dtd-urisread/writetrue A value of "true" indicates that system IDs in declarations will - be absolutized (relative to their base URIs) before reporting. - (That is the default behavior for all SAX2 XML parsers.) - A value of "false" indicates those IDs will not be absolutized; - parsers will provide the base URI from - Locator.getSystemId(). - This applies to system IDs passed in
    -
  • DTDHandler.notationDecl(), -
  • DTDHandler.unparsedEntityDecl(), and -
  • DeclHandler.externalEntityDecl(). -
- It does not apply to EntityResolver.resolveEntity(), - which is not used to report declarations, or to - LexicalHandler.startDTD(), which already provides - the non-absolutized URI. -
string-interningread/writeunspecified Has a value of "true" if all XML names (for elements, prefixes, - attributes, entities, notations, and local names), - as well as Namespace URIs, will have been interned - using java.lang.String.intern. This supports fast - testing of equality/inequality against string constants, - rather than forcing slower calls to String.equals(). -
unicode-normalization-checkingread/writefalse Controls whether the parser reports Unicode normalization - errors as described in section 2.13 and Appendix B of the - XML 1.1 Recommendation. If true, Unicode normalization - errors are reported using the ErrorHandler.error() callback. - Such errors are not fatal in themselves (though, obviously, - other Unicode-related encoding errors may be). -
use-attributes2read-onlynot applicable Returns "true" if the Attributes objects passed by - this parser in ContentHandler.startElement() - implement the org.xml.sax.ext.Attributes2 interface. - That interface exposes additional DTD-related information, - such as whether the attribute was specified in the - source text rather than defaulted. -
use-locator2read-onlynot applicable Returns "true" if the Locator objects passed by - this parser in ContentHandler.setDocumentLocator() - implement the org.xml.sax.ext.Locator2 interface. - That interface exposes additional entity information, - such as the character encoding and XML version used. -
use-entity-resolver2read/writetrue Returns "true" if, when setEntityResolver is given - an object implementing the org.xml.sax.ext.EntityResolver2 interface, - those new methods will be used. - Returns "false" to indicate that those methods will not be used. -
validationread/writeunspecified Controls whether the parser is reporting all validity - errors; if true, all external entities will be read. -
xmlns-urisread/writefalse Controls whether, when the namespace-prefixes feature - is set, the parser treats namespace declaration attributes as - being in the http://www.w3.org/2000/xmlns/ namespace. - By default, SAX2 conforms to the original "Namespaces in XML" - Recommendation, which explicitly states that such attributes are - not in any namespace. - Setting this optional flag to "true" makes the SAX2 events conform to - a later backwards-incompatible revision of that recommendation, - placing those attributes in a namespace. -
xml-1.1read-onlynot applicable Returns "true" if the parser supports both XML 1.1 and XML 1.0. - Returns "false" if the parser supports only XML 1.0. -
- -

Support for the default values of the -namespaces and namespace-prefixes -properties is required. -Support for any other feature flags is entirely optional. -

- -

For default values not specified by SAX2, -each XMLReader implementation specifies its default, -or may choose not to expose the feature flag. -Unless otherwise specified here, -implementations may support changing current values -of these standard feature flags, but not while parsing. -

- -

SAX2 Standard Handler and Property IDs

- -

For parser interface characteristics that are described -as objects, a separate namespace is defined. The -objects in this namespace are again identified by URI, and -the standard property URIs have the prefix -http://xml.org/sax/properties/ before an identifier such as -lexical-handler or -dom-node. Manage those properties using -setProperty(). Those identifiers are:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Property IDDescription
declaration-handler Used to see most DTD declarations except those treated - as lexical ("document element name is ...") or which are - mandatory for all SAX parsers (DTDHandler). - The Object must implement org.xml.sax.ext.DeclHandler. -
document-xml-version May be examined only during a parse, after the startDocument() - callback has been completed; read-only. This property is a - literal string describing the actual XML version of the document, - such as "1.0" or "1.1". -
dom-node For "DOM Walker" style parsers, which ignore their - parser.parse() parameters, this is used to - specify the DOM (sub)tree being walked by the parser. - The Object must implement the - org.w3c.dom.Node interface. -
lexical-handler Used to see some syntax events that are essential in some - applications: comments, CDATA delimiters, selected general - entity inclusions, and the start and end of the DTD - (and declaration of document element name). - The Object must implement org.xml.sax.ext.LexicalHandler. -
xml-string Readable only during a parser callback, this exposes a TBS - chunk of characters responsible for the current event.
- -

All of these standard properties are optional; -XMLReader implementations need not support them. -

- - \ No newline at end of file diff --git a/libjava/external/w3c_dom/COPYRIGHT.html b/libjava/external/w3c_dom/COPYRIGHT.html deleted file mode 100644 index c7e0e497a5f..00000000000 --- a/libjava/external/w3c_dom/COPYRIGHT.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - W3C IPR SOFTWARE NOTICE - - - -

- W3C IPR SOFTWARE NOTICE -

-

- Copyright © 2002 World Wide Web - Consortium, (Massachusetts - Institute of Technology, Institut - National de Recherche en Informatique et en Automatique, Keio University). All Rights - Reserved. -

-

- The DOM bindings are published under the W3C Software Copyright Notice - and License. The software license requires "Notice of any changes or - modifications to the W3C files, including the date changes were made." - Consequently, modified versions of the DOM bindings must document that - they do not conform to the W3C standard; in the case of the IDL - definitions, the pragma prefix can no longer be 'w3c.org'; in the case of - the Java language binding, the package names can no longer be in the - 'org.w3c' package. -

-

- Note: The original version of the W3C Software Copyright Notice - and License could be found at http://www.w3.org/Consortium/Legal/copyright-software-19980720 -

-

- Copyright © 1994-2002 World Wide Web - Consortium, (Massachusetts - Institute of Technology, Institut - National de Recherche en Informatique et en Automatique, Keio University). All Rights - Reserved. http://www.w3.org/Consortium/Legal/ -

-

- This W3C work (including software, documents, or other related items) is - being provided by the copyright holders under the following license. By - obtaining, using and/or copying this work, you (the licensee) agree that - you have read, understood, and will comply with the following terms and - conditions: -

-

- Permission to use, copy, and modify this software and its documentation, - with or without modification,  for any purpose and without fee or - royalty is hereby granted, provided that you include the following on ALL - copies of the software and documentation or portions thereof, including - modifications, that you make: -

-
    -
  1. - The full text of this NOTICE in a location viewable to users of the - redistributed or derivative work. -
  2. -
  3. - Any pre-existing intellectual property disclaimers, notices, or terms - and conditions. If none exist, a short notice of the following form - (hypertext is preferred, text is permitted) should be used within the - body of any redistributed or derivative code: "Copyright © - [$date-of-software] World Wide Web - Consortium, (Massachusetts - Institute of Technology, Institut - National de Recherche en Informatique et en Automatique, Keio University). All Rights - Reserved. http://www.w3.org/Consortium/Legal/" -
  4. -
  5. - Notice of any changes or modifications to the W3C files, including the - date changes were made. (We recommend you provide URIs to the location - from which the code is derived.) -
  6. -
-

- THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT - HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, - INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS - FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR - DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, - TRADEMARKS OR OTHER RIGHTS. -

-

- COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR - CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR - DOCUMENTATION. -

-

- The name and trademarks of copyright holders may NOT be used in - advertising or publicity pertaining to the software without specific, - written prior permission. Title to copyright in this software and any - associated documentation will at all times remain with copyright - holders. -

- - diff --git a/libjava/external/w3c_dom/Makefile.am b/libjava/external/w3c_dom/Makefile.am deleted file mode 100644 index 82f6b76a0b2..00000000000 --- a/libjava/external/w3c_dom/Makefile.am +++ /dev/null @@ -1,186 +0,0 @@ -## Process this file with automake to produce Makefile.in. - -AUTOMAKE_OPTIONS = foreign subdir-objects - -# May be used by various substitution variables. -gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER) - -## The compiler with whatever flags we want for both -c and -C -## compiles. -GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fclasspath= -fbootclasspath=$(BOOTCLASSPATH) - -BOOTCLASSPATH = $(here)'$(CLASSPATH_SEPARATOR)'$(srcdir)'$(CLASSPATH_SEPARATOR)'$(top_srcdir)'$(CLASSPATH_SEPARATOR)'$(top_builddir) - -AM_GCJFLAGS = \ - -B$(top_builddir) \ - @LIBGCJ_JAVAFLAGS@ \ - -fclasspath= -fbootclasspath=$(BOOTCLASSPATH) \ - --encoding=UTF-8 \ - -Wno-deprecated - -BUILT_SOURCES = classes.stamp - -w3c.jar: classes.stamp - find org -name '*.class' -print | $(ZIP) -cfME@ $@ - -classes.stamp: $(source_files) - here=`pwd`; cd $(srcdir); \ - $(GCJ_WITH_FLAGS) -C -d $$here $(source_files) - echo > classes.stamp - -mostlyclean-local: - -find . -name '*.class' | xargs rm - -rm classes.stamp w3c.jar - -noinst_LTLIBRARIES = libw3c-gcj.la - -libw3c_gcj_la_SOURCES = w3c.jar -libw3c_gcj_la_GCJFLAGS = -findirect-dispatch -fbootstrap-classes $(AM_GCJFLAGS) - -source_files = \ -org/w3c/dom/xpath/XPathNamespace.java \ -org/w3c/dom/xpath/XPathResult.java \ -org/w3c/dom/xpath/XPathException.java \ -org/w3c/dom/xpath/XPathExpression.java \ -org/w3c/dom/xpath/XPathNSResolver.java \ -org/w3c/dom/xpath/XPathEvaluator.java \ -org/w3c/dom/DOMException.java \ -org/w3c/dom/Comment.java \ -org/w3c/dom/stylesheets/DocumentStyle.java \ -org/w3c/dom/stylesheets/MediaList.java \ -org/w3c/dom/stylesheets/LinkStyle.java \ -org/w3c/dom/stylesheets/StyleSheet.java \ -org/w3c/dom/stylesheets/StyleSheetList.java \ -org/w3c/dom/Attr.java \ -org/w3c/dom/Notation.java \ -org/w3c/dom/TypeInfo.java \ -org/w3c/dom/html2/HTMLIsIndexElement.java \ -org/w3c/dom/html2/HTMLTableColElement.java \ -org/w3c/dom/html2/HTMLLinkElement.java \ -org/w3c/dom/html2/HTMLTitleElement.java \ -org/w3c/dom/html2/HTMLBRElement.java \ -org/w3c/dom/html2/HTMLHeadElement.java \ -org/w3c/dom/html2/HTMLHtmlElement.java \ -org/w3c/dom/html2/HTMLScriptElement.java \ -org/w3c/dom/html2/HTMLTableRowElement.java \ -org/w3c/dom/html2/HTMLOptionsCollection.java \ -org/w3c/dom/html2/HTMLTableCellElement.java \ -org/w3c/dom/html2/HTMLDListElement.java \ -org/w3c/dom/html2/HTMLFieldSetElement.java \ -org/w3c/dom/html2/HTMLImageElement.java \ -org/w3c/dom/html2/HTMLHRElement.java \ -org/w3c/dom/html2/HTMLModElement.java \ -org/w3c/dom/html2/HTMLHeadingElement.java \ -org/w3c/dom/html2/HTMLTableElement.java \ -org/w3c/dom/html2/HTMLAreaElement.java \ -org/w3c/dom/html2/HTMLOptGroupElement.java \ -org/w3c/dom/html2/HTMLIFrameElement.java \ -org/w3c/dom/html2/HTMLDirectoryElement.java \ -org/w3c/dom/html2/HTMLParamElement.java \ -org/w3c/dom/html2/HTMLLegendElement.java \ -org/w3c/dom/html2/HTMLFrameElement.java \ -org/w3c/dom/html2/HTMLFormElement.java \ -org/w3c/dom/html2/HTMLStyleElement.java \ -org/w3c/dom/html2/HTMLFrameSetElement.java \ -org/w3c/dom/html2/HTMLCollection.java \ -org/w3c/dom/html2/HTMLAnchorElement.java \ -org/w3c/dom/html2/HTMLLabelElement.java \ -org/w3c/dom/html2/HTMLBodyElement.java \ -org/w3c/dom/html2/HTMLOptionElement.java \ -org/w3c/dom/html2/HTMLTableSectionElement.java \ -org/w3c/dom/html2/HTMLAppletElement.java \ -org/w3c/dom/html2/HTMLSelectElement.java \ -org/w3c/dom/html2/HTMLMetaElement.java \ -org/w3c/dom/html2/HTMLMenuElement.java \ -org/w3c/dom/html2/HTMLDivElement.java \ -org/w3c/dom/html2/HTMLLIElement.java \ -org/w3c/dom/html2/HTMLFontElement.java \ -org/w3c/dom/html2/HTMLOListElement.java \ -org/w3c/dom/html2/HTMLBaseFontElement.java \ -org/w3c/dom/html2/HTMLElement.java \ -org/w3c/dom/html2/HTMLTableCaptionElement.java \ -org/w3c/dom/html2/HTMLTextAreaElement.java \ -org/w3c/dom/html2/HTMLPreElement.java \ -org/w3c/dom/html2/HTMLObjectElement.java \ -org/w3c/dom/html2/HTMLBaseElement.java \ -org/w3c/dom/html2/HTMLUListElement.java \ -org/w3c/dom/html2/HTMLMapElement.java \ -org/w3c/dom/html2/HTMLParagraphElement.java \ -org/w3c/dom/html2/HTMLButtonElement.java \ -org/w3c/dom/html2/HTMLQuoteElement.java \ -org/w3c/dom/html2/HTMLInputElement.java \ -org/w3c/dom/html2/HTMLDocument.java \ -org/w3c/dom/ls/LSParser.java \ -org/w3c/dom/ls/LSSerializerFilter.java \ -org/w3c/dom/ls/LSLoadEvent.java \ -org/w3c/dom/ls/DOMImplementationLS.java \ -org/w3c/dom/ls/LSException.java \ -org/w3c/dom/ls/LSSerializer.java \ -org/w3c/dom/ls/LSResourceResolver.java \ -org/w3c/dom/ls/LSOutput.java \ -org/w3c/dom/ls/LSInput.java \ -org/w3c/dom/ls/LSProgressEvent.java \ -org/w3c/dom/ls/LSParserFilter.java \ -org/w3c/dom/DOMLocator.java \ -org/w3c/dom/DOMStringList.java \ -org/w3c/dom/DocumentFragment.java \ -org/w3c/dom/events/MutationEvent.java \ -org/w3c/dom/events/UIEvent.java \ -org/w3c/dom/events/EventListener.java \ -org/w3c/dom/events/Event.java \ -org/w3c/dom/events/MouseEvent.java \ -org/w3c/dom/events/EventTarget.java \ -org/w3c/dom/events/DocumentEvent.java \ -org/w3c/dom/events/EventException.java \ -org/w3c/dom/EntityReference.java \ -org/w3c/dom/DOMErrorHandler.java \ -org/w3c/dom/views/AbstractView.java \ -org/w3c/dom/views/DocumentView.java \ -org/w3c/dom/DOMError.java \ -org/w3c/dom/bootstrap/DOMImplementationRegistry.java \ -org/w3c/dom/traversal/TreeWalker.java \ -org/w3c/dom/traversal/NodeFilter.java \ -org/w3c/dom/traversal/DocumentTraversal.java \ -org/w3c/dom/traversal/NodeIterator.java \ -org/w3c/dom/CharacterData.java \ -org/w3c/dom/DOMConfiguration.java \ -org/w3c/dom/css/CSSRule.java \ -org/w3c/dom/css/Rect.java \ -org/w3c/dom/css/CSSStyleSheet.java \ -org/w3c/dom/css/CSSFontFaceRule.java \ -org/w3c/dom/css/CSSPrimitiveValue.java \ -org/w3c/dom/css/CSSRuleList.java \ -org/w3c/dom/css/ViewCSS.java \ -org/w3c/dom/css/CSSStyleRule.java \ -org/w3c/dom/css/CSSUnknownRule.java \ -org/w3c/dom/css/RGBColor.java \ -org/w3c/dom/css/ElementCSSInlineStyle.java \ -org/w3c/dom/css/CSSMediaRule.java \ -org/w3c/dom/css/CSS2Properties.java \ -org/w3c/dom/css/CSSValue.java \ -org/w3c/dom/css/CSSStyleDeclaration.java \ -org/w3c/dom/css/DOMImplementationCSS.java \ -org/w3c/dom/css/CSSCharsetRule.java \ -org/w3c/dom/css/Counter.java \ -org/w3c/dom/css/CSSPageRule.java \ -org/w3c/dom/css/DocumentCSS.java \ -org/w3c/dom/css/CSSValueList.java \ -org/w3c/dom/css/CSSImportRule.java \ -org/w3c/dom/NameList.java \ -org/w3c/dom/Element.java \ -org/w3c/dom/Document.java \ -org/w3c/dom/ranges/Range.java \ -org/w3c/dom/ranges/RangeException.java \ -org/w3c/dom/ranges/DocumentRange.java \ -org/w3c/dom/DOMImplementationList.java \ -org/w3c/dom/Entity.java \ -org/w3c/dom/UserDataHandler.java \ -org/w3c/dom/DOMImplementation.java \ -org/w3c/dom/CDATASection.java \ -org/w3c/dom/ProcessingInstruction.java \ -org/w3c/dom/Node.java \ -org/w3c/dom/NamedNodeMap.java \ -org/w3c/dom/NodeList.java \ -org/w3c/dom/Text.java \ -org/w3c/dom/DocumentType.java \ -org/w3c/dom/DOMImplementationSource.java diff --git a/libjava/external/w3c_dom/Makefile.in b/libjava/external/w3c_dom/Makefile.in deleted file mode 100644 index 13968d84772..00000000000 --- a/libjava/external/w3c_dom/Makefile.in +++ /dev/null @@ -1,741 +0,0 @@ -# Makefile.in generated by automake 1.9.3 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. -# This Makefile.in 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. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -SOURCES = $(libw3c_gcj_la_SOURCES) - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = ../.. -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = external/w3c_dom -DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ - $(top_srcdir)/../config/depstand.m4 \ - $(top_srcdir)/../config/gxx-include-dir.m4 \ - $(top_srcdir)/../config/iconv.m4 \ - $(top_srcdir)/../config/lcmessage.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)/pkg.m4 \ - $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/../config/no-executables.m4 \ - $(top_srcdir)/../libtool.m4 $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -CONFIG_HEADER = $(top_builddir)/include/config.h \ - $(top_builddir)/gcj/libgcj-config.h -CONFIG_CLEAN_FILES = -LTLIBRARIES = $(noinst_LTLIBRARIES) -libw3c_gcj_la_LIBADD = -am_libw3c_gcj_la_OBJECTS = libw3c_gcj_la-w3c.lo -libw3c_gcj_la_OBJECTS = $(am_libw3c_gcj_la_OBJECTS) -DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include -I$(top_builddir)/gcj -depcomp = $(SHELL) $(top_srcdir)/../depcomp -am__depfiles_maybe = depfiles -GCJCOMPILE = $(GCJ) $(AM_GCJFLAGS) $(GCJFLAGS) -LTGCJCOMPILE = $(LIBTOOL) --mode=compile $(GCJ) $(AM_GCJFLAGS) \ - $(GCJFLAGS) -GCJLD = $(GCJ) -GCJLINK = $(LIBTOOL) --mode=link $(GCJLD) $(AM_GCJFLAGS) $(GCJFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -SOURCES = $(libw3c_gcj_la_SOURCES) -DIST_SOURCES = $(libw3c_gcj_la_SOURCES) -ETAGS = etags -CTAGS = ctags -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -ALLOCA = @ALLOCA@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ -AMTAR = @AMTAR@ -AR = @AR@ -AS = @AS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BACKTRACESPEC = @BACKTRACESPEC@ -CAIRO_CFLAGS = @CAIRO_CFLAGS@ -CAIRO_LIBS = @CAIRO_LIBS@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CHECKREFSPEC = @CHECKREFSPEC@ -CLASSPATH_SEPARATOR = @CLASSPATH_SEPARATOR@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXCPP = @CXXCPP@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DIRLTDL = @DIRLTDL@ -DIVIDESPEC = @DIVIDESPEC@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXCEPTIONSPEC = @EXCEPTIONSPEC@ -EXEEXT = @EXEEXT@ -GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@ -GCDEPS = @GCDEPS@ -GCINCS = @GCINCS@ -GCJ = @GCJ@ -GCJDEPMODE = @GCJDEPMODE@ -GCJFLAGS = @GCJFLAGS@ -GCJH = @GCJH@ -GCJVERSION = @GCJVERSION@ -GCLIBS = @GCLIBS@ -GCSPEC = @GCSPEC@ -GCTESTSPEC = @GCTESTSPEC@ -GLIB_CFLAGS = @GLIB_CFLAGS@ -GLIB_LIBS = @GLIB_LIBS@ -GTK_AWT_FALSE = @GTK_AWT_FALSE@ -GTK_AWT_TRUE = @GTK_AWT_TRUE@ -GTK_CAIRO_FALSE = @GTK_CAIRO_FALSE@ -GTK_CAIRO_TRUE = @GTK_CAIRO_TRUE@ -GTK_CFLAGS = @GTK_CFLAGS@ -GTK_LIBS = @GTK_LIBS@ -HASH_SYNC_SPEC = @HASH_SYNC_SPEC@ -IEEESPEC = @IEEESPEC@ -INCLTDL = @INCLTDL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTERPRETER = @INTERPRETER@ -JAVA_HOME = @JAVA_HOME@ -JAVA_HOME_SET_FALSE = @JAVA_HOME_SET_FALSE@ -JAVA_HOME_SET_TRUE = @JAVA_HOME_SET_TRUE@ -JC1GCSPEC = @JC1GCSPEC@ -LDFLAGS = @LDFLAGS@ -LIBART_CFLAGS = @LIBART_CFLAGS@ -LIBART_LIBS = @LIBART_LIBS@ -LIBFFI = @LIBFFI@ -LIBFFIINCS = @LIBFFIINCS@ -LIBGCJDEBUG = @LIBGCJDEBUG@ -LIBGCJTESTSPEC = @LIBGCJTESTSPEC@ -LIBGCJ_CFLAGS = @LIBGCJ_CFLAGS@ -LIBGCJ_CXXFLAGS = @LIBGCJ_CXXFLAGS@ -LIBGCJ_JAVAFLAGS = @LIBGCJ_JAVAFLAGS@ -LIBGCJ_LD_SYMBOLIC = @LIBGCJ_LD_SYMBOLIC@ -LIBICONV = @LIBICONV@ -LIBLTDL = @LIBLTDL@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LN_S = @LN_S@ -LTLIBICONV = @LTLIBICONV@ -LTLIBOBJS = @LTLIBOBJS@ -MAINT = @MAINT@ -MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ -MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ -MAKEINFO = @MAKEINFO@ -NATIVE_FALSE = @NATIVE_FALSE@ -NATIVE_TRUE = @NATIVE_TRUE@ -NEEDS_DATA_START_FALSE = @NEEDS_DATA_START_FALSE@ -NEEDS_DATA_START_TRUE = @NEEDS_DATA_START_TRUE@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PANGOFT2_CFLAGS = @PANGOFT2_CFLAGS@ -PANGOFT2_LIBS = @PANGOFT2_LIBS@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PERL = @PERL@ -PKG_CONFIG = @PKG_CONFIG@ -PLATFORM_INNER_NAT_HDRS = @PLATFORM_INNER_NAT_HDRS@ -RANLIB = @RANLIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -SUPPLY_BACKTRACE_FALSE = @SUPPLY_BACKTRACE_FALSE@ -SUPPLY_BACKTRACE_TRUE = @SUPPLY_BACKTRACE_TRUE@ -SYSDEP_SOURCES = @SYSDEP_SOURCES@ -SYSTEMSPEC = @SYSTEMSPEC@ -SYS_ZLIBS = @SYS_ZLIBS@ -TESTSUBDIR_FALSE = @TESTSUBDIR_FALSE@ -TESTSUBDIR_TRUE = @TESTSUBDIR_TRUE@ -THREADCXXFLAGS = @THREADCXXFLAGS@ -THREADDEPS = @THREADDEPS@ -THREADINCS = @THREADINCS@ -THREADLDFLAGS = @THREADLDFLAGS@ -THREADLIBS = @THREADLIBS@ -THREADSPEC = @THREADSPEC@ -TOOLKIT = @TOOLKIT@ -USING_BOEHMGC_FALSE = @USING_BOEHMGC_FALSE@ -USING_BOEHMGC_TRUE = @USING_BOEHMGC_TRUE@ -USING_DARWIN_CRT_FALSE = @USING_DARWIN_CRT_FALSE@ -USING_DARWIN_CRT_TRUE = @USING_DARWIN_CRT_TRUE@ -USING_GCC_FALSE = @USING_GCC_FALSE@ -USING_GCC_TRUE = @USING_GCC_TRUE@ -USING_NOGC_FALSE = @USING_NOGC_FALSE@ -USING_NOGC_TRUE = @USING_NOGC_TRUE@ -USING_NO_THREADS_FALSE = @USING_NO_THREADS_FALSE@ -USING_NO_THREADS_TRUE = @USING_NO_THREADS_TRUE@ -USING_POSIX_PLATFORM_FALSE = @USING_POSIX_PLATFORM_FALSE@ -USING_POSIX_PLATFORM_TRUE = @USING_POSIX_PLATFORM_TRUE@ -USING_POSIX_THREADS_FALSE = @USING_POSIX_THREADS_FALSE@ -USING_POSIX_THREADS_TRUE = @USING_POSIX_THREADS_TRUE@ -USING_WIN32_PLATFORM_FALSE = @USING_WIN32_PLATFORM_FALSE@ -USING_WIN32_PLATFORM_TRUE = @USING_WIN32_PLATFORM_TRUE@ -USING_WIN32_THREADS_FALSE = @USING_WIN32_THREADS_FALSE@ -USING_WIN32_THREADS_TRUE = @USING_WIN32_THREADS_TRUE@ -VERSION = @VERSION@ -XLIB_AWT_FALSE = @XLIB_AWT_FALSE@ -XLIB_AWT_TRUE = @XLIB_AWT_TRUE@ -X_CFLAGS = @X_CFLAGS@ -X_EXTRA_LIBS = @X_EXTRA_LIBS@ -X_LIBS = @X_LIBS@ -X_PRE_LIBS = @X_PRE_LIBS@ -ZINCS = @ZINCS@ -ZIP = @ZIP@ -ZLIBS = @ZLIBS@ -ZLIBSPEC = @ZLIBSPEC@ -ZLIBTESTSPEC = @ZLIBTESTSPEC@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_AS = @ac_ct_AS@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -ac_ct_GCJ = @ac_ct_GCJ@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ -am__fastdepGCJ_FALSE = @am__fastdepGCJ_FALSE@ -am__fastdepGCJ_TRUE = @am__fastdepGCJ_TRUE@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_subdir = @build_subdir@ -build_vendor = @build_vendor@ -datadir = @datadir@ -exec_prefix = @exec_prefix@ -gxx_include_dir = @gxx_include_dir@ -here = @here@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_subdir = @host_subdir@ -host_vendor = @host_vendor@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -libgcj_basedir = @libgcj_basedir@ -libstdcxx_incdir = @libstdcxx_incdir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -mkinstalldirs = @mkinstalldirs@ -oldincludedir = @oldincludedir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -subdirs = @subdirs@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_noncanonical = @target_noncanonical@ -target_os = @target_os@ -target_subdir = @target_subdir@ -target_vendor = @target_vendor@ -toolexecdir = @toolexecdir@ -toolexeclibdir = @toolexeclibdir@ -toolexecmainlibdir = @toolexecmainlibdir@ -AUTOMAKE_OPTIONS = foreign subdir-objects - -# May be used by various substitution variables. -gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER) -GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated -fclasspath= -fbootclasspath=$(BOOTCLASSPATH) -BOOTCLASSPATH = $(here)'$(CLASSPATH_SEPARATOR)'$(srcdir)'$(CLASSPATH_SEPARATOR)'$(top_srcdir)'$(CLASSPATH_SEPARATOR)'$(top_builddir) -AM_GCJFLAGS = \ - -B$(top_builddir) \ - @LIBGCJ_JAVAFLAGS@ \ - -fclasspath= -fbootclasspath=$(BOOTCLASSPATH) \ - --encoding=UTF-8 \ - -Wno-deprecated - -BUILT_SOURCES = classes.stamp -noinst_LTLIBRARIES = libw3c-gcj.la -libw3c_gcj_la_SOURCES = w3c.jar -libw3c_gcj_la_GCJFLAGS = -findirect-dispatch -fbootstrap-classes $(AM_GCJFLAGS) -source_files = \ -org/w3c/dom/xpath/XPathNamespace.java \ -org/w3c/dom/xpath/XPathResult.java \ -org/w3c/dom/xpath/XPathException.java \ -org/w3c/dom/xpath/XPathExpression.java \ -org/w3c/dom/xpath/XPathNSResolver.java \ -org/w3c/dom/xpath/XPathEvaluator.java \ -org/w3c/dom/DOMException.java \ -org/w3c/dom/Comment.java \ -org/w3c/dom/stylesheets/DocumentStyle.java \ -org/w3c/dom/stylesheets/MediaList.java \ -org/w3c/dom/stylesheets/LinkStyle.java \ -org/w3c/dom/stylesheets/StyleSheet.java \ -org/w3c/dom/stylesheets/StyleSheetList.java \ -org/w3c/dom/Attr.java \ -org/w3c/dom/Notation.java \ -org/w3c/dom/TypeInfo.java \ -org/w3c/dom/html2/HTMLIsIndexElement.java \ -org/w3c/dom/html2/HTMLTableColElement.java \ -org/w3c/dom/html2/HTMLLinkElement.java \ -org/w3c/dom/html2/HTMLTitleElement.java \ -org/w3c/dom/html2/HTMLBRElement.java \ -org/w3c/dom/html2/HTMLHeadElement.java \ -org/w3c/dom/html2/HTMLHtmlElement.java \ -org/w3c/dom/html2/HTMLScriptElement.java \ -org/w3c/dom/html2/HTMLTableRowElement.java \ -org/w3c/dom/html2/HTMLOptionsCollection.java \ -org/w3c/dom/html2/HTMLTableCellElement.java \ -org/w3c/dom/html2/HTMLDListElement.java \ -org/w3c/dom/html2/HTMLFieldSetElement.java \ -org/w3c/dom/html2/HTMLImageElement.java \ -org/w3c/dom/html2/HTMLHRElement.java \ -org/w3c/dom/html2/HTMLModElement.java \ -org/w3c/dom/html2/HTMLHeadingElement.java \ -org/w3c/dom/html2/HTMLTableElement.java \ -org/w3c/dom/html2/HTMLAreaElement.java \ -org/w3c/dom/html2/HTMLOptGroupElement.java \ -org/w3c/dom/html2/HTMLIFrameElement.java \ -org/w3c/dom/html2/HTMLDirectoryElement.java \ -org/w3c/dom/html2/HTMLParamElement.java \ -org/w3c/dom/html2/HTMLLegendElement.java \ -org/w3c/dom/html2/HTMLFrameElement.java \ -org/w3c/dom/html2/HTMLFormElement.java \ -org/w3c/dom/html2/HTMLStyleElement.java \ -org/w3c/dom/html2/HTMLFrameSetElement.java \ -org/w3c/dom/html2/HTMLCollection.java \ -org/w3c/dom/html2/HTMLAnchorElement.java \ -org/w3c/dom/html2/HTMLLabelElement.java \ -org/w3c/dom/html2/HTMLBodyElement.java \ -org/w3c/dom/html2/HTMLOptionElement.java \ -org/w3c/dom/html2/HTMLTableSectionElement.java \ -org/w3c/dom/html2/HTMLAppletElement.java \ -org/w3c/dom/html2/HTMLSelectElement.java \ -org/w3c/dom/html2/HTMLMetaElement.java \ -org/w3c/dom/html2/HTMLMenuElement.java \ -org/w3c/dom/html2/HTMLDivElement.java \ -org/w3c/dom/html2/HTMLLIElement.java \ -org/w3c/dom/html2/HTMLFontElement.java \ -org/w3c/dom/html2/HTMLOListElement.java \ -org/w3c/dom/html2/HTMLBaseFontElement.java \ -org/w3c/dom/html2/HTMLElement.java \ -org/w3c/dom/html2/HTMLTableCaptionElement.java \ -org/w3c/dom/html2/HTMLTextAreaElement.java \ -org/w3c/dom/html2/HTMLPreElement.java \ -org/w3c/dom/html2/HTMLObjectElement.java \ -org/w3c/dom/html2/HTMLBaseElement.java \ -org/w3c/dom/html2/HTMLUListElement.java \ -org/w3c/dom/html2/HTMLMapElement.java \ -org/w3c/dom/html2/HTMLParagraphElement.java \ -org/w3c/dom/html2/HTMLButtonElement.java \ -org/w3c/dom/html2/HTMLQuoteElement.java \ -org/w3c/dom/html2/HTMLInputElement.java \ -org/w3c/dom/html2/HTMLDocument.java \ -org/w3c/dom/ls/LSParser.java \ -org/w3c/dom/ls/LSSerializerFilter.java \ -org/w3c/dom/ls/LSLoadEvent.java \ -org/w3c/dom/ls/DOMImplementationLS.java \ -org/w3c/dom/ls/LSException.java \ -org/w3c/dom/ls/LSSerializer.java \ -org/w3c/dom/ls/LSResourceResolver.java \ -org/w3c/dom/ls/LSOutput.java \ -org/w3c/dom/ls/LSInput.java \ -org/w3c/dom/ls/LSProgressEvent.java \ -org/w3c/dom/ls/LSParserFilter.java \ -org/w3c/dom/DOMLocator.java \ -org/w3c/dom/DOMStringList.java \ -org/w3c/dom/DocumentFragment.java \ -org/w3c/dom/events/MutationEvent.java \ -org/w3c/dom/events/UIEvent.java \ -org/w3c/dom/events/EventListener.java \ -org/w3c/dom/events/Event.java \ -org/w3c/dom/events/MouseEvent.java \ -org/w3c/dom/events/EventTarget.java \ -org/w3c/dom/events/DocumentEvent.java \ -org/w3c/dom/events/EventException.java \ -org/w3c/dom/EntityReference.java \ -org/w3c/dom/DOMErrorHandler.java \ -org/w3c/dom/views/AbstractView.java \ -org/w3c/dom/views/DocumentView.java \ -org/w3c/dom/DOMError.java \ -org/w3c/dom/bootstrap/DOMImplementationRegistry.java \ -org/w3c/dom/traversal/TreeWalker.java \ -org/w3c/dom/traversal/NodeFilter.java \ -org/w3c/dom/traversal/DocumentTraversal.java \ -org/w3c/dom/traversal/NodeIterator.java \ -org/w3c/dom/CharacterData.java \ -org/w3c/dom/DOMConfiguration.java \ -org/w3c/dom/css/CSSRule.java \ -org/w3c/dom/css/Rect.java \ -org/w3c/dom/css/CSSStyleSheet.java \ -org/w3c/dom/css/CSSFontFaceRule.java \ -org/w3c/dom/css/CSSPrimitiveValue.java \ -org/w3c/dom/css/CSSRuleList.java \ -org/w3c/dom/css/ViewCSS.java \ -org/w3c/dom/css/CSSStyleRule.java \ -org/w3c/dom/css/CSSUnknownRule.java \ -org/w3c/dom/css/RGBColor.java \ -org/w3c/dom/css/ElementCSSInlineStyle.java \ -org/w3c/dom/css/CSSMediaRule.java \ -org/w3c/dom/css/CSS2Properties.java \ -org/w3c/dom/css/CSSValue.java \ -org/w3c/dom/css/CSSStyleDeclaration.java \ -org/w3c/dom/css/DOMImplementationCSS.java \ -org/w3c/dom/css/CSSCharsetRule.java \ -org/w3c/dom/css/Counter.java \ -org/w3c/dom/css/CSSPageRule.java \ -org/w3c/dom/css/DocumentCSS.java \ -org/w3c/dom/css/CSSValueList.java \ -org/w3c/dom/css/CSSImportRule.java \ -org/w3c/dom/NameList.java \ -org/w3c/dom/Element.java \ -org/w3c/dom/Document.java \ -org/w3c/dom/ranges/Range.java \ -org/w3c/dom/ranges/RangeException.java \ -org/w3c/dom/ranges/DocumentRange.java \ -org/w3c/dom/DOMImplementationList.java \ -org/w3c/dom/Entity.java \ -org/w3c/dom/UserDataHandler.java \ -org/w3c/dom/DOMImplementation.java \ -org/w3c/dom/CDATASection.java \ -org/w3c/dom/ProcessingInstruction.java \ -org/w3c/dom/Node.java \ -org/w3c/dom/NamedNodeMap.java \ -org/w3c/dom/NodeList.java \ -org/w3c/dom/Text.java \ -org/w3c/dom/DocumentType.java \ -org/w3c/dom/DOMImplementationSource.java - -all: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) all-am - -.SUFFIXES: -.SUFFIXES: .jar .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign external/w3c_dom/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --foreign external/w3c_dom/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -clean-noinstLTLIBRARIES: - -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) - @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ - dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ - test "$$dir" != "$$p" || dir=.; \ - echo "rm -f \"$${dir}/so_locations\""; \ - rm -f "$${dir}/so_locations"; \ - done -libw3c-gcj.la: $(libw3c_gcj_la_OBJECTS) $(libw3c_gcj_la_DEPENDENCIES) - $(GCJLINK) $(libw3c_gcj_la_LDFLAGS) $(libw3c_gcj_la_OBJECTS) $(libw3c_gcj_la_LIBADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libw3c_gcj_la-w3c.Plo@am__quote@ - -.jar.o: -@am__fastdepGCJ_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`; \ -@am__fastdepGCJ_TRUE@ if $(GCJCOMPILE) -MT $@ -MD -MP -MF "$$depbase.Tpo" -c -o $@ $<; \ -@am__fastdepGCJ_TRUE@ then mv -f "$$depbase.Tpo" "$$depbase.Po"; else rm -f "$$depbase.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepGCJ_FALSE@ $(GCJCOMPILE) -c -o $@ $< - -.jar.obj: -@am__fastdepGCJ_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`; \ -@am__fastdepGCJ_TRUE@ if $(GCJCOMPILE) -MT $@ -MD -MP -MF "$$depbase.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ -@am__fastdepGCJ_TRUE@ then mv -f "$$depbase.Tpo" "$$depbase.Po"; else rm -f "$$depbase.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepGCJ_FALSE@ $(GCJCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` - -.jar.lo: -@am__fastdepGCJ_TRUE@ depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`; \ -@am__fastdepGCJ_TRUE@ if $(LTGCJCOMPILE) -MT $@ -MD -MP -MF "$$depbase.Tpo" -c -o $@ $<; \ -@am__fastdepGCJ_TRUE@ then mv -f "$$depbase.Tpo" "$$depbase.Plo"; else rm -f "$$depbase.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepGCJ_FALSE@ $(LTGCJCOMPILE) -c -o $@ $< - -libw3c_gcj_la-w3c.lo: w3c.jar -@am__fastdepGCJ_TRUE@ if $(LIBTOOL) --mode=compile $(GCJ) $(libw3c_gcj_la_GCJFLAGS) $(GCJFLAGS) -MT libw3c_gcj_la-w3c.lo -MD -MP -MF "$(DEPDIR)/libw3c_gcj_la-w3c.Tpo" -c -o libw3c_gcj_la-w3c.lo `test -f 'w3c.jar' || echo '$(srcdir)/'`w3c.jar; \ -@am__fastdepGCJ_TRUE@ then mv -f "$(DEPDIR)/libw3c_gcj_la-w3c.Tpo" "$(DEPDIR)/libw3c_gcj_la-w3c.Plo"; else rm -f "$(DEPDIR)/libw3c_gcj_la-w3c.Tpo"; exit 1; fi -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ source='w3c.jar' object='libw3c_gcj_la-w3c.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepGCJ_FALSE@ DEPDIR=$(DEPDIR) $(GCJDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepGCJ_FALSE@ $(LIBTOOL) --mode=compile $(GCJ) $(libw3c_gcj_la_GCJFLAGS) $(GCJFLAGS) -c -o libw3c_gcj_la-w3c.lo `test -f 'w3c.jar' || echo '$(srcdir)/'`w3c.jar - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -distclean-libtool: - -rm -f libtool -uninstall-info-am: - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ - fi -ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ - if test -d $$d/$$file; then \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ - fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ - else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) check-am -all-am: Makefile $(LTLIBRARIES) -installdirs: -install: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." - -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) -clean: clean-am - -clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ - mostlyclean-am - -distclean: distclean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-libtool distclean-tags - -dvi: dvi-am - -dvi-am: - -html: html-am - -info: info-am - -info-am: - -install-data-am: - -install-exec-am: - -install-info: install-info-am - -install-man: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool mostlyclean-local - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-info-am - -.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ - clean-libtool clean-noinstLTLIBRARIES ctags distclean \ - distclean-compile distclean-generic distclean-libtool \ - distclean-tags distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-exec \ - install-exec-am install-info install-info-am install-man \ - install-strip installcheck installcheck-am installdirs \ - maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ - mostlyclean-local pdf pdf-am ps ps-am tags uninstall \ - uninstall-am uninstall-info-am - - -w3c.jar: classes.stamp - find org -name '*.class' -print | $(ZIP) -cfME@ $@ - -classes.stamp: $(source_files) - here=`pwd`; cd $(srcdir); \ - $(GCJ_WITH_FLAGS) -C -d $$here $(source_files) - echo > classes.stamp - -mostlyclean-local: - -find . -name '*.class' | xargs rm - -rm classes.stamp w3c.jar -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/libjava/external/w3c_dom/README b/libjava/external/w3c_dom/README deleted file mode 100644 index 6670651efc9..00000000000 --- a/libjava/external/w3c_dom/README +++ /dev/null @@ -1,97 +0,0 @@ -Bindings for the Document Object Model (DOM). -DOM is not maintained as part of GNU Classpath, but is used with GNU Classpath. - -The packages includes are: - -Document Object Model (DOM) Level 3 Core Specification -http://www.w3.org/TR/DOM-Level-3-Core/ -(07 April 2004) - -Document Object Model (DOM) Level 3 Load and Save Specification -http://www.w3.org/TR/DOM-Level-3-LS/ -(07 April 2004) - -Document Object Model (DOM) Level 2 Events Specification -http://www.w3.org/TR/DOM-Level-2-Events/ -(13 November 2000) -Latest errata: 20021016 - -Document Object Model (DOM) Level 2 Views Specification -http://www.w3.org/TR/DOM-Level-2-Views/ -(13 November 2000) -Latest errata: 20021016 - -Document Object Model (DOM) Level 2 Style Specification -http://www.w3.org/TR/DOM-Level-2-Style/ -(13 November 2000) -Latest errata: 20021016 - -Document Object Model (DOM) Level 2 Traversal and Range Specification -http://www.w3.org/TR/DOM-Level-2-Traversal-Range/ -(13 November 2000) -Latest errata: 20021016 - -Document Object Model (DOM) Level 2 HTML Specification -http://www.w3.org/TR/DOM-Level-2-HTML/ -(09 January 2003) - -Document Object Model (DOM) Level 3 XPath Specification -http://www.w3.org/TR/DOM-Level-3-XPath/ -(26 February 2004) - -Errata can be found at: -http://www.w3.org/2000/11/DOM-Level-2-errata -http://www.w3.org/2004/01/DOM-Level-3-errata - -The only change to the sources is setting the additional fallback for -org.w3c.dom.bootstrap.DOMImplementationRegistry.newInstance() to -gnu.xml.dom.ImplementationSource. - -When importing new versions don't forget to update the Makefile.am -to list any new files (or to remove old ones). - -All files are distributed under the following -W3C Software Short Notice: - - Copyright (c) 2004 World Wide Web Consortium, - - (Massachusetts Institute of Technology, European Research Consortium for - Informatics and Mathematics, Keio University). All Rights Reserved. This - work is distributed under the W3C(r) Software License [1] 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. - - [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - - Permission to copy, modify, and distribute this software and its - documentation, with or without modification, for any purpose and - without fee or royalty is hereby granted, provided that you include - the following on ALL copies of the software and documentation or - portions thereof, including modifications: - - 1. The full text of this NOTICE in a location viewable to users of - the redistributed or derivative work. - 2. Any pre-existing intellectual property disclaimers, notices, or - terms and conditions. If none exist, the W3C Software Short Notice - should be included (hypertext is preferred, text is permitted) within - the body of any redistributed or derivative code. - 3. Notice of any changes or modifications to the files, including - the date changes were made. (We recommend you provide URIs to the - location from which the code is derived.) - - THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT - HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, - INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS - FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR - DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, - TRADEMARKS OR OTHER RIGHTS. - - COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL - OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR - DOCUMENTATION. - - The name and trademarks of copyright holders may NOT be used in - advertising or publicity pertaining to the software without specific, - written prior permission. Title to copyright in this software and any - associated documentation will at all times remain with copyright - holders. diff --git a/libjava/external/w3c_dom/org/w3c/dom/Attr.java b/libjava/external/w3c_dom/org/w3c/dom/Attr.java deleted file mode 100644 index d9ed6ffe128..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/Attr.java +++ /dev/null @@ -1,275 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The Attr interface represents an attribute in an - * Element object. Typically the allowable values for the - * attribute are defined in a schema associated with the document. - *

Attr objects inherit the Node interface, but - * since they are not actually child nodes of the element they describe, the - * DOM does not consider them part of the document tree. Thus, the - * Node attributes parentNode, - * previousSibling, and nextSibling have a - * null value for Attr objects. The DOM takes the - * view that attributes are properties of elements rather than having a - * separate identity from the elements they are associated with; this should - * make it more efficient to implement such features as default attributes - * associated with all elements of a given type. Furthermore, - * Attr nodes may not be immediate children of a - * DocumentFragment. However, they can be associated with - * Element nodes contained within a - * DocumentFragment. In short, users and implementors of the - * DOM need to be aware that Attr nodes have some things in - * common with other objects inheriting the Node interface, but - * they also are quite distinct. - *

The attribute's effective value is determined as follows: if this - * attribute has been explicitly assigned any value, that value is the - * attribute's effective value; otherwise, if there is a declaration for - * this attribute, and that declaration includes a default value, then that - * default value is the attribute's effective value; otherwise, the - * attribute does not exist on this element in the structure model until it - * has been explicitly added. Note that the Node.nodeValue - * attribute on the Attr instance can also be used to retrieve - * the string version of the attribute's value(s). - *

If the attribute was not explicitly given a value in the instance - * document but has a default value provided by the schema associated with - * the document, an attribute node will be created with - * specified set to false. Removing attribute - * nodes for which a default value is defined in the schema generates a new - * attribute node with the default value and specified set to - * false. If validation occurred while invoking - * Document.normalizeDocument(), attribute nodes with - * specified equals to false are recomputed - * according to the default attribute values provided by the schema. If no - * default value is associate with this attribute in the schema, the - * attribute node is discarded. - *

In XML, where the value of an attribute can contain entity references, - * the child nodes of the Attr node may be either - * Text or EntityReference nodes (when these are - * in use; see the description of EntityReference for - * discussion). - *

The DOM Core represents all attribute values as simple strings, even if - * the DTD or schema associated with the document declares them of some - * specific type such as tokenized. - *

The way attribute value normalization is performed by the DOM - * implementation depends on how much the implementation knows about the - * schema in use. Typically, the value and - * nodeValue attributes of an Attr node initially - * returns the normalized value given by the parser. It is also the case - * after Document.normalizeDocument() is called (assuming the - * right options have been set). But this may not be the case after - * mutation, independently of whether the mutation is performed by setting - * the string value directly or by changing the Attr child - * nodes. In particular, this is true when character - * references are involved, given that they are not represented in the DOM and they - * impact attribute value normalization. On the other hand, if the - * implementation knows about the schema in use when the attribute value is - * changed, and it is of a different type than CDATA, it may normalize it - * again at that time. This is especially true of specialized DOM - * implementations, such as SVG DOM implementations, which store attribute - * values in an internal form different from a string. - *

The following table gives some examples of the relations between the - * attribute value in the original document (parsed attribute), the value as - * exposed in the DOM, and the serialization of the value: - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - *
ExamplesParsed - * attribute valueInitial Attr.valueSerialized attribute value
- * Character reference - *
"x&#178;=5"
- *
- *
"x\u00b2=5"
- *
- *
"x&#178;=5"
- *
Built-in - * character entity - *
"y&lt;6"
- *
- *
"y<6"
- *
- *
"y&lt;6"
- *
Literal newline between - *
- * "x=5&#10;y=6"
- *
- *
"x=5 y=6"
- *
- *
"x=5&#10;y=6"
- *
Normalized newline between - *
"x=5 
- * y=6"
- *
- *
"x=5 y=6"
- *
- *
"x=5 y=6"
- *
Entity e with literal newline - *
- * <!ENTITY e '...&#10;...'> [...]> "x=5&e;y=6"
- *
Dependent on Implementation and Load OptionsDependent on Implementation and Load/Save Options
- *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface Attr extends Node { - /** - * Returns the name of this attribute. If Node.localName is - * different from null, this attribute is a qualified name. - */ - public String getName(); - - /** - * True if this attribute was explicitly given a value in - * the instance document, false otherwise. If the - * application changed the value of this attribute node (even if it ends - * up having the same value as the default value) then it is set to - * true. The implementation may handle attributes with - * default values from other schemas similarly but applications should - * use Document.normalizeDocument() to guarantee this - * information is up-to-date. - */ - public boolean getSpecified(); - - /** - * On retrieval, the value of the attribute is returned as a string. - * Character and general entity references are replaced with their - * values. See also the method getAttribute on the - * Element interface. - *
On setting, this creates a Text node with the unparsed - * contents of the string, i.e. any characters that an XML processor - * would recognize as markup are instead treated as literal text. See - * also the method Element.setAttribute(). - *
Some specialized implementations, such as some [SVG 1.1] - * implementations, may do normalization automatically, even after - * mutation; in such case, the value on retrieval may differ from the - * value on setting. - */ - public String getValue(); - /** - * On retrieval, the value of the attribute is returned as a string. - * Character and general entity references are replaced with their - * values. See also the method getAttribute on the - * Element interface. - *
On setting, this creates a Text node with the unparsed - * contents of the string, i.e. any characters that an XML processor - * would recognize as markup are instead treated as literal text. See - * also the method Element.setAttribute(). - *
Some specialized implementations, such as some [SVG 1.1] - * implementations, may do normalization automatically, even after - * mutation; in such case, the value on retrieval may differ from the - * value on setting. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly. - */ - public void setValue(String value) - throws DOMException; - - /** - * The Element node this attribute is attached to or - * null if this attribute is not in use. - * @since DOM Level 2 - */ - public Element getOwnerElement(); - - /** - * The type information associated with this attribute. While the type - * information contained in this attribute is guarantee to be correct - * after loading the document or invoking - * Document.normalizeDocument(), schemaTypeInfo - * may not be reliable if the node was moved. - * @since DOM Level 3 - */ - public TypeInfo getSchemaTypeInfo(); - - /** - * Returns whether this attribute is known to be of type ID (i.e. to - * contain an identifier for its owner element) or not. When it is and - * its value is unique, the ownerElement of this attribute - * can be retrieved using the method Document.getElementById - * . The implementation could use several ways to determine if an - * attribute node is known to contain an identifier: - *

    - *
  • If validation - * occurred using an XML Schema [XML Schema Part 1] - * while loading the document or while invoking - * Document.normalizeDocument(), the post-schema-validation - * infoset contributions (PSVI contributions) values are used to - * determine if this attribute is a schema-determined ID attribute using - * the - * schema-determined ID definition in [XPointer] - * . - *
  • - *
  • If validation occurred using a DTD while loading the document or - * while invoking Document.normalizeDocument(), the infoset [type definition] value is used to determine if this attribute is a DTD-determined ID - * attribute using the - * DTD-determined ID definition in [XPointer] - * . - *
  • - *
  • from the use of the methods Element.setIdAttribute(), - * Element.setIdAttributeNS(), or - * Element.setIdAttributeNode(), i.e. it is an - * user-determined ID attribute; - *

    Note: XPointer framework (see section 3.2 in [XPointer] - * ) consider the DOM user-determined ID attribute as being part of the - * XPointer externally-determined ID definition. - *

  • - *
  • using mechanisms that - * are outside the scope of this specification, it is then an - * externally-determined ID attribute. This includes using schema - * languages different from XML schema and DTD. - *
  • - *
- *
If validation occurred while invoking - * Document.normalizeDocument(), all user-determined ID - * attributes are reset and all attribute nodes ID information are then - * reevaluated in accordance to the schema used. As a consequence, if - * the Attr.schemaTypeInfo attribute contains an ID type, - * isId will always return true. - * @since DOM Level 3 - */ - public boolean isId(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/CDATASection.java b/libjava/external/w3c_dom/org/w3c/dom/CDATASection.java deleted file mode 100644 index 9267227e42d..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/CDATASection.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * CDATA sections are used to escape blocks of text containing characters that - * would otherwise be regarded as markup. The only delimiter that is - * recognized in a CDATA section is the "]]>" string that ends the CDATA - * section. CDATA sections cannot be nested. Their primary purpose is for - * including material such as XML fragments, without needing to escape all - * the delimiters. - *

The CharacterData.data attribute holds the text that is - * contained by the CDATA section. Note that this may contain characters that need to be escaped outside of CDATA sections and - * that, depending on the character encoding ("charset") chosen for - * serialization, it may be impossible to write out some characters as part - * of a CDATA section. - *

The CDATASection interface inherits from the - * CharacterData interface through the Text - * interface. Adjacent CDATASection nodes are not merged by use - * of the normalize method of the Node interface. - *

No lexical check is done on the content of a CDATA section and it is - * therefore possible to have the character sequence "]]>" - * in the content, which is illegal in a CDATA section per section 2.7 of [XML 1.0]. The - * presence of this character sequence must generate a fatal error during - * serialization or the cdata section must be splitted before the - * serialization (see also the parameter "split-cdata-sections" - * in the DOMConfiguration interface). - *

Note: Because no markup is recognized within a - * CDATASection, character numeric references cannot be used as - * an escape mechanism when serializing. Therefore, action needs to be taken - * when serializing a CDATASection with a character encoding - * where some of the contained characters cannot be represented. Failure to - * do so would not produce well-formed XML. - *

Note: One potential solution in the serialization process is to - * end the CDATA section before the character, output the character using a - * character reference or entity reference, and open a new CDATA section for - * any further characters in the text node. Note, however, that some code - * conversion libraries at the time of writing do not return an error or - * exception when a character is missing from the encoding, making the task - * of ensuring that data is not corrupted on serialization more difficult. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface CDATASection extends Text { -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/CharacterData.java b/libjava/external/w3c_dom/org/w3c/dom/CharacterData.java deleted file mode 100644 index a12dcedfae3..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/CharacterData.java +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The CharacterData interface extends Node with a set of - * attributes and methods for accessing character data in the DOM. For - * clarity this set is defined here rather than on each object that uses - * these attributes and methods. No DOM objects correspond directly to - * CharacterData, though Text and others do - * inherit the interface from it. All offsets in this interface - * start from 0. - *

As explained in the DOMString interface, text strings in - * the DOM are represented in UTF-16, i.e. as a sequence of 16-bit units. In - * the following, the term 16-bit units is used whenever necessary to - * indicate that indexing on CharacterData is done in 16-bit units. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface CharacterData extends Node { - /** - * The character data of the node that implements this interface. The DOM - * implementation may not put arbitrary limits on the amount of data - * that may be stored in a CharacterData node. However, - * implementation limits may mean that the entirety of a node's data may - * not fit into a single DOMString. In such cases, the user - * may call substringData to retrieve the data in - * appropriately sized pieces. - * @exception DOMException - * DOMSTRING_SIZE_ERR: Raised when it would return more characters than - * fit in a DOMString variable on the implementation - * platform. - */ - public String getData() - throws DOMException; - /** - * The character data of the node that implements this interface. The DOM - * implementation may not put arbitrary limits on the amount of data - * that may be stored in a CharacterData node. However, - * implementation limits may mean that the entirety of a node's data may - * not fit into a single DOMString. In such cases, the user - * may call substringData to retrieve the data in - * appropriately sized pieces. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly. - */ - public void setData(String data) - throws DOMException; - - /** - * The number of 16-bit units that are available through data - * and the substringData method below. This may have the - * value zero, i.e., CharacterData nodes may be empty. - */ - public int getLength(); - - /** - * Extracts a range of data from the node. - * @param offset Start offset of substring to extract. - * @param count The number of 16-bit units to extract. - * @return The specified substring. If the sum of offset and - * count exceeds the length, then all 16-bit - * units to the end of the data are returned. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified offset is - * negative or greater than the number of 16-bit units in - * data, or if the specified count is - * negative. - *
DOMSTRING_SIZE_ERR: Raised if the specified range of text does - * not fit into a DOMString. - */ - public String substringData(int offset, - int count) - throws DOMException; - - /** - * Append the string to the end of the character data of the node. Upon - * success, data provides access to the concatenation of - * data and the DOMString specified. - * @param arg The DOMString to append. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - */ - public void appendData(String arg) - throws DOMException; - - /** - * Insert a string at the specified 16-bit unit offset. - * @param offset The character offset at which to insert. - * @param arg The DOMString to insert. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified offset is - * negative or greater than the number of 16-bit units in - * data. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - */ - public void insertData(int offset, - String arg) - throws DOMException; - - /** - * Remove a range of 16-bit units from the node. Upon success, - * data and length reflect the change. - * @param offset The offset from which to start removing. - * @param count The number of 16-bit units to delete. If the sum of - * offset and count exceeds - * length then all 16-bit units from offset - * to the end of the data are deleted. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified offset is - * negative or greater than the number of 16-bit units in - * data, or if the specified count is - * negative. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - */ - public void deleteData(int offset, - int count) - throws DOMException; - - /** - * Replace the characters starting at the specified 16-bit unit offset - * with the specified string. - * @param offset The offset from which to start replacing. - * @param count The number of 16-bit units to replace. If the sum of - * offset and count exceeds - * length, then all 16-bit units to the end of the data - * are replaced; (i.e., the effect is the same as a remove - * method call with the same range, followed by an append - * method invocation). - * @param arg The DOMString with which the range must be - * replaced. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified offset is - * negative or greater than the number of 16-bit units in - * data, or if the specified count is - * negative. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - */ - public void replaceData(int offset, - int count, - String arg) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/Comment.java b/libjava/external/w3c_dom/org/w3c/dom/Comment.java deleted file mode 100644 index b04ed4d0a5e..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/Comment.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * This interface inherits from CharacterData and represents the - * content of a comment, i.e., all the characters between the starting ' - * <!--' and ending '-->'. Note that this is - * the definition of a comment in XML, and, in practice, HTML, although some - * HTML tools may implement the full SGML comment structure. - *

No lexical check is done on the content of a comment and it is - * therefore possible to have the character sequence "--" - * (double-hyphen) in the content, which is illegal in a comment per section - * 2.5 of [XML 1.0]. The - * presence of this character sequence must generate a fatal error during - * serialization. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface Comment extends CharacterData { -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/DOMConfiguration.java b/libjava/external/w3c_dom/org/w3c/dom/DOMConfiguration.java deleted file mode 100644 index 7cce1609e19..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/DOMConfiguration.java +++ /dev/null @@ -1,413 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The DOMConfiguration interface represents the configuration - * of a document and maintains a table of recognized parameters. Using the - * configuration, it is possible to change - * Document.normalizeDocument() behavior, such as replacing the - * CDATASection nodes with Text nodes or - * specifying the type of the schema that must be used when the validation - * of the Document is requested. DOMConfiguration - * objects are also used in [DOM Level 3 Load and Save] - * in the DOMParser and DOMSerializer interfaces. - *

The parameter names used by the DOMConfiguration object - * are defined throughout the DOM Level 3 specifications. Names are - * case-insensitive. To avoid possible conflicts, as a convention, names - * referring to parameters defined outside the DOM specification should be - * made unique. Because parameters are exposed as properties in the , names - * are recommended to follow the section 5.16 Identifiers of [Unicode] with the addition of the character '-' (HYPHEN-MINUS) but it is not - * enforced by the DOM implementation. DOM Level 3 Core Implementations are - * required to recognize all parameters defined in this specification. Some - * parameter values may also be required to be supported by the - * implementation. Refer to the definition of the parameter to know if a - * value must be supported or not. - *

Note: Parameters are similar to features and properties used in - * SAX2 [SAX]. - *

The following list of parameters defined in the DOM: - *

- *
- * "canonical-form"
- *
- *
- *
true
- *
[optional] Canonicalize the document according to the rules specified in [Canonical XML], - * such as removing the DocumentType node (if any) from the - * tree, or removing superfluous namespace declarations from each element. - * Note that this is limited to what can be represented in the DOM; in - * particular, there is no way to specify the order of the attributes in the - * DOM. In addition, Setting this parameter to true will also - * set the state of the parameters listed below. Later changes to the state - * of one of those parameters will revert "canonical-form" back to - * false. Parameters set to false: "entities", " - * normalize-characters", "cdata-sections". Parameters set to - * true: "namespaces", "namespace-declarations", "well-formed", - * "element-content-whitespace". Other parameters are not changed unless - * explicitly specified in the description of the parameters.
- *
- * false
- *
[required] (default)Do not canonicalize the document.
- *
- *
"cdata-sections"
- *
- *
- *
- * true
- *
[required] (default)Keep CDATASection nodes in the document.
- *
false
- *
[required]Transform CDATASection nodes in the document into - * Text nodes. The new Text node is then combined - * with any adjacent Text node.
- *
- *
- * "check-character-normalization"
- *
- *
- *
true
- *
[optional] Check if the characters in the document are fully - * normalized, as defined in appendix B of [XML 1.1]. When a - * sequence of characters is encountered that fails normalization checking, - * an error with the DOMError.type equals to - * "check-character-normalization-failure" is issued.
- *
false
- *
[required] (default)Do not check if characters are normalized.
- *
- *
"comments"
- *
- *
- *
- * true
- *
[required] (default)Keep Comment nodes in the document.
- *
false
- *
[required]Discard Comment nodes in the document.
- *
- *
- * "datatype-normalization"
- *
- *
- *
true
- *
[optional] Expose schema normalized values in the tree, such as XML - * Schema normalized values in the case of XML Schema. Since this parameter requires to have schema - * information, the "validate" parameter will also be set to - * true. Having this parameter activated when "validate" is - * false has no effect and no schema-normalization will happen. - *

Note: Since the document contains the result of the XML 1.0 - * processing, this parameter does not apply to attribute value - * normalization as defined in section 3.3.3 of [XML 1.0] and is only - * meant for schema languages other than Document Type Definition (DTD).

- *
- * false
- *
[required] (default) Do not perform schema normalization on the tree.
- *
- *
- * "element-content-whitespace"
- *
- *
- *
true
- *
[required] (default)Keep all whitespaces in the document.
- *
false
- *
[optional] Discard all Text nodes that contain whitespaces in element - * content, as described in - * [element content whitespace]. The implementation is expected to use the attribute - * Text.isElementContentWhitespace to determine if a - * Text node should be discarded or not.
- *
- *
"entities"
- *
- *
- *
- * true
- *
[required] (default)Keep EntityReference nodes in the document.
- *
- * false
- *
[required] Remove all EntityReference nodes from the document, - * putting the entity expansions directly in their place. Text - * nodes are normalized, as defined in Node.normalize. Only - * unexpanded entity references are kept in the document.
- *
- *

Note: This parameter does not affect Entity nodes.

- *
- * "error-handler"
- *
[required] Contains a DOMErrorHandler object. If an error is - * encountered in the document, the implementation will call back the - * DOMErrorHandler registered using this parameter. The - * implementation may provide a default DOMErrorHandler object. - * When called, DOMError.relatedData will contain the closest - * node to where the error occurred. If the implementation is unable to - * determine the node where the error occurs, - * DOMError.relatedData will contain the Document - * node. Mutations to the document from within an error handler will result - * in implementation dependent behavior.
- *
"infoset"
- *
- *
- *
- * true
- *
[required]Keep in the document the information defined in the XML Information Set [XML Information Set] - * .This forces the following parameters to false: " - * validate-if-schema", "entities", "datatype-normalization", "cdata-sections - * ".This forces the following parameters to true: " - * namespace-declarations", "well-formed", "element-content-whitespace", " - * comments", "namespaces".Other parameters are not changed unless - * explicitly specified in the description of the parameters. Note that - * querying this parameter with getParameter returns - * true only if the individual parameters specified above are - * appropriately set.
- *
false
- *
Setting infoset to - * false has no effect.
- *
- *
"namespaces"
- *
- *
- *
- * true
- *
[required] (default) Perform the namespace processing as defined in .
- *
false
- *
[optional] Do not perform the namespace processing.
- *
- *
- * "namespace-declarations"
- *
This parameter has no effect if the - * parameter "namespaces" is set to false. - *
- *
true
- *
[required] (default) Include namespace declaration attributes, specified or defaulted from - * the schema, in the document. See also the sections "Declaring Namespaces" - * in [XML Namespaces] - * and [XML Namespaces 1.1] - * .
- *
false
- *
[required]Discard all namespace declaration attributes. The namespace prefixes ( - * Node.prefix) are retained even if this parameter is set to - * false.
- *
- *
"normalize-characters"
- *
- *
- *
true
- *
[optional] Fully - * normalized the characters in the document as defined in appendix B of [XML 1.1].
- *
- * false
- *
[required] (default)Do not perform character normalization.
- *
- *
"schema-location"
- *
[optional] Represent a DOMString object containing a list of URIs, - * separated by whitespaces (characters matching the nonterminal - * production S defined in section 2.3 [XML 1.0]), that - * represents the schemas against which validation should occur, i.e. the - * current schema. The types of schemas referenced in this list must match - * the type specified with schema-type, otherwise the behavior - * of an implementation is undefined. The schemas specified using this - * property take precedence to the schema information specified in the - * document itself. For namespace aware schema, if a schema specified using - * this property and a schema specified in the document instance (i.e. using - * the schemaLocation attribute) in a schema document (i.e. - * using schema import mechanisms) share the same - * targetNamespace, the schema specified by the user using this - * property will be used. If two schemas specified using this property share - * the same targetNamespace or have no namespace, the behavior - * is implementation dependent. If no location has been provided, this - * parameter is null. - *

Note: The "schema-location" parameter is ignored - * unless the "schema-type" parameter value is set. It is strongly - * recommended that Document.documentURI will be set so that an - * implementation can successfully resolve any external entities referenced.

- *
- * "schema-type"
- *
[optional] Represent a DOMString object containing an absolute URI - * and representing the type of the schema language used to validate a - * document against. Note that no lexical checking is done on the absolute - * URI. If this parameter is not set, a default value may be provided by - * the implementation, based on the schema languages supported and on the - * schema language used at load time. If no value is provided, this - * parameter is null. - *

Note: For XML Schema [XML Schema Part 1] - * , applications must use the value - * "http://www.w3.org/2001/XMLSchema". For XML DTD [XML 1.0], - * applications must use the value - * "http://www.w3.org/TR/REC-xml". Other schema languages are - * outside the scope of the W3C and therefore should recommend an absolute - * URI in order to use this method.

- *
"split-cdata-sections"
- *
- *
- *
- * true
- *
[required] (default)Split CDATA sections containing the CDATA section termination marker - * ']]>'. When a CDATA section is split a warning is issued with a - * DOMError.type equals to - * "cdata-sections-splitted" and - * DOMError.relatedData equals to the first - * CDATASection node in document order resulting from the split.
- *
- * false
- *
[required]Signal an error if a CDATASection contains an - * unrepresentable character.
- *
- *
"validate"
- *
- *
- *
true
- *
[optional] Require the validation against a schema (i.e. XML schema, DTD, any - * other type or representation of schema) of the document as it is being - * normalized as defined by [XML 1.0]. If - * validation errors are found, or no schema was found, the error handler is - * notified. Schema-normalized values will not be exposed according to the - * schema in used unless the parameter "datatype-normalization" is - * true. This parameter will reevaluate: - *
    - *
  • Attribute nodes with - * Attr.specified equals to false, as specified in - * the description of the Attr interface; - *
  • - *
  • The value of the - * attribute Text.isElementContentWhitespace for all - * Text nodes; - *
  • - *
  • The value of the attribute - * Attr.isId for all Attr nodes; - *
  • - *
  • The attributes - * Element.schemaTypeInfo and Attr.schemaTypeInfo. - *
  • - *
- *

Note: "validate-if-schema" and "validate" are mutually - * exclusive, setting one of them to true will set the other - * one to false. Applications should also consider setting the - * parameter "well-formed" to true, which is the default for - * that option, when validating the document.

- *
false
- *
[required] (default) Do not accomplish schema processing, including the internal subset - * processing. Default attribute values information are kept. Note that - * validation might still happen if "validate-if-schema" is true - * .
- *
- *
"validate-if-schema"
- *
- *
- *
true
- *
[optional]Enable validation only if a declaration for the document element can be - * found in a schema (independently of where it is found, i.e. XML schema, - * DTD, or any other type or representation of schema). If validation is - * enabled, this parameter has the same behavior as the parameter "validate" - * set to true. - *

Note: "validate-if-schema" and "validate" are mutually - * exclusive, setting one of them to true will set the other - * one to false.

- *
false
- *
[required] (default) No schema processing should be performed if the document has a schema, - * including internal subset processing. Default attribute values - * information are kept. Note that validation must still happen if "validate - * " is true.
- *
- *
"well-formed"
- *
- *
- *
true
- *
[required] (default) Check if all nodes are XML well formed according to the XML version in - * use in Document.xmlVersion: - *
    - *
  • check if the attribute - * Node.nodeName contains invalid characters according to its - * node type and generate a DOMError of type - * "wf-invalid-character-in-node-name", with a - * DOMError.SEVERITY_ERROR severity, if necessary; - *
  • - *
  • check if - * the text content inside Attr, Element, - * Comment, Text, CDATASection nodes - * for invalid characters and generate a DOMError of type - * "wf-invalid-character", with a - * DOMError.SEVERITY_ERROR severity, if necessary; - *
  • - *
  • check if - * the data inside ProcessingInstruction nodes for invalid - * characters and generate a DOMError of type - * "wf-invalid-character", with a - * DOMError.SEVERITY_ERROR severity, if necessary; - *
  • - *
- *
- * false
- *
[optional] Do not check for XML well-formedness.
- *
- *
- *

The resolution of the system identifiers associated with entities is - * done using Document.documentURI. However, when the feature - * "LS" defined in [DOM Level 3 Load and Save] - * is supported by the DOM implementation, the parameter - * "resource-resolver" can also be used on DOMConfiguration - * objects attached to Document nodes. If this parameter is - * set, Document.normalizeDocument() will invoke the resource - * resolver instead of using Document.documentURI. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - * @since DOM Level 3 - */ -public interface DOMConfiguration { - /** - * Set the value of a parameter. - * @param name The name of the parameter to set. - * @param value The new value or null if the user wishes to - * unset the parameter. While the type of the value parameter is - * defined as DOMUserData, the object type must match the - * type defined by the definition of the parameter. For example, if - * the parameter is "error-handler", the value must be of type - * DOMErrorHandler. - * @exception DOMException - * NOT_FOUND_ERR: Raised when the parameter name is not recognized. - *
NOT_SUPPORTED_ERR: Raised when the parameter name is recognized - * but the requested value cannot be set. - *
TYPE_MISMATCH_ERR: Raised if the value type for this parameter - * name is incompatible with the expected value type. - */ - public void setParameter(String name, - Object value) - throws DOMException; - - /** - * Return the value of a parameter if known. - * @param name The name of the parameter. - * @return The current object associated with the specified parameter or - * null if no object has been associated or if the - * parameter is not supported. - * @exception DOMException - * NOT_FOUND_ERR: Raised when the parameter name is not recognized. - */ - public Object getParameter(String name) - throws DOMException; - - /** - * Check if setting a parameter to a specific value is supported. - * @param name The name of the parameter to check. - * @param value An object. if null, the returned value is - * true. - * @return true if the parameter could be successfully set - * to the specified value, or false if the parameter is - * not recognized or the requested value is not supported. This does - * not change the current value of the parameter itself. - */ - public boolean canSetParameter(String name, - Object value); - - /** - * The list of the parameters supported by this - * DOMConfiguration object and for which at least one value - * can be set by the application. Note that this list can also contain - * parameter names defined outside this specification. - */ - public DOMStringList getParameterNames(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/DOMError.java b/libjava/external/w3c_dom/org/w3c/dom/DOMError.java deleted file mode 100644 index 37ed7d10d89..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/DOMError.java +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * DOMError is an interface that describes an error. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - * @since DOM Level 3 - */ -public interface DOMError { - // ErrorSeverity - /** - * The severity of the error described by the DOMError is - * warning. A SEVERITY_WARNING will not cause the - * processing to stop, unless DOMErrorHandler.handleError() - * returns false. - */ - public static final short SEVERITY_WARNING = 1; - /** - * The severity of the error described by the DOMError is - * error. A SEVERITY_ERROR may not cause the processing to - * stop if the error can be recovered, unless - * DOMErrorHandler.handleError() returns false. - */ - public static final short SEVERITY_ERROR = 2; - /** - * The severity of the error described by the DOMError is - * fatal error. A SEVERITY_FATAL_ERROR will cause the - * normal processing to stop. The return value of - * DOMErrorHandler.handleError() is ignored unless the - * implementation chooses to continue, in which case the behavior - * becomes undefined. - */ - public static final short SEVERITY_FATAL_ERROR = 3; - - /** - * The severity of the error, either SEVERITY_WARNING, - * SEVERITY_ERROR, or SEVERITY_FATAL_ERROR. - */ - public short getSeverity(); - - /** - * An implementation specific string describing the error that occurred. - */ - public String getMessage(); - - /** - * A DOMString indicating which related data is expected in - * relatedData. Users should refer to the specification of - * the error in order to find its DOMString type and - * relatedData definitions if any. - *

Note: As an example, - * Document.normalizeDocument() does generate warnings when - * the "split-cdata-sections" parameter is in use. Therefore, the method - * generates a SEVERITY_WARNING with type - * "cdata-sections-splitted" and the first - * CDATASection node in document order resulting from the - * split is returned by the relatedData attribute. - */ - public String getType(); - - /** - * The related platform dependent exception if any. - */ - public Object getRelatedException(); - - /** - * The related DOMError.type dependent data if any. - */ - public Object getRelatedData(); - - /** - * The location of the error. - */ - public DOMLocator getLocation(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/DOMErrorHandler.java b/libjava/external/w3c_dom/org/w3c/dom/DOMErrorHandler.java deleted file mode 100644 index 3d4ad2aba58..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/DOMErrorHandler.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * DOMErrorHandler is a callback interface that the DOM - * implementation can call when reporting errors that happens while - * processing XML data, or when doing some other processing (e.g. validating - * a document). A DOMErrorHandler object can be attached to a - * Document using the "error-handler" on the - * DOMConfiguration interface. If more than one error needs to - * be reported during an operation, the sequence and numbers of the errors - * passed to the error handler are implementation dependent. - *

The application that is using the DOM implementation is expected to - * implement this interface. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - * @since DOM Level 3 - */ -public interface DOMErrorHandler { - /** - * This method is called on the error handler when an error occurs. - *
If an exception is thrown from this method, it is considered to be - * equivalent of returning true. - * @param error The error object that describes the error. This object - * may be reused by the DOM implementation across multiple calls to - * the handleError method. - * @return If the handleError method returns - * false, the DOM implementation should stop the current - * processing when possible. If the method returns true, - * the processing may continue depending on - * DOMError.severity. - */ - public boolean handleError(DOMError error); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/DOMException.java b/libjava/external/w3c_dom/org/w3c/dom/DOMException.java deleted file mode 100644 index 0b2578f92f6..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/DOMException.java +++ /dev/null @@ -1,131 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * DOM operations only raise exceptions in "exceptional" circumstances, i.e., - * when an operation is impossible to perform (either for logical reasons, - * because data is lost, or because the implementation has become unstable). - * In general, DOM methods return specific error values in ordinary - * processing situations, such as out-of-bound errors when using - * NodeList. - *

Implementations should raise other exceptions under other circumstances. - * For example, implementations should raise an implementation-dependent - * exception if a null argument is passed when null - * was not expected. - *

Some languages and object systems do not support the concept of - * exceptions. For such systems, error conditions may be indicated using - * native error reporting mechanisms. For some bindings, for example, - * methods may return error codes similar to those listed in the - * corresponding method descriptions. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public class DOMException extends RuntimeException { - public DOMException(short code, String message) { - super(message); - this.code = code; - } - public short code; - // ExceptionCode - /** - * If index or size is negative, or greater than the allowed value. - */ - public static final short INDEX_SIZE_ERR = 1; - /** - * If the specified range of text does not fit into a - * DOMString. - */ - public static final short DOMSTRING_SIZE_ERR = 2; - /** - * If any Node is inserted somewhere it doesn't belong. - */ - public static final short HIERARCHY_REQUEST_ERR = 3; - /** - * If a Node is used in a different document than the one - * that created it (that doesn't support it). - */ - public static final short WRONG_DOCUMENT_ERR = 4; - /** - * If an invalid or illegal character is specified, such as in an XML name. - */ - public static final short INVALID_CHARACTER_ERR = 5; - /** - * If data is specified for a Node which does not support - * data. - */ - public static final short NO_DATA_ALLOWED_ERR = 6; - /** - * If an attempt is made to modify an object where modifications are not - * allowed. - */ - public static final short NO_MODIFICATION_ALLOWED_ERR = 7; - /** - * If an attempt is made to reference a Node in a context - * where it does not exist. - */ - public static final short NOT_FOUND_ERR = 8; - /** - * If the implementation does not support the requested type of object or - * operation. - */ - public static final short NOT_SUPPORTED_ERR = 9; - /** - * If an attempt is made to add an attribute that is already in use - * elsewhere. - */ - public static final short INUSE_ATTRIBUTE_ERR = 10; - /** - * If an attempt is made to use an object that is not, or is no longer, - * usable. - * @since DOM Level 2 - */ - public static final short INVALID_STATE_ERR = 11; - /** - * If an invalid or illegal string is specified. - * @since DOM Level 2 - */ - public static final short SYNTAX_ERR = 12; - /** - * If an attempt is made to modify the type of the underlying object. - * @since DOM Level 2 - */ - public static final short INVALID_MODIFICATION_ERR = 13; - /** - * If an attempt is made to create or change an object in a way which is - * incorrect with regard to namespaces. - * @since DOM Level 2 - */ - public static final short NAMESPACE_ERR = 14; - /** - * If a parameter or an operation is not supported by the underlying - * object. - * @since DOM Level 2 - */ - public static final short INVALID_ACCESS_ERR = 15; - /** - * If a call to a method such as insertBefore or - * removeChild would make the Node invalid - * with respect to "partial validity", this exception would be raised - * and the operation would not be done. This code is used in [DOM Level 3 Validation] - * . Refer to this specification for further information. - * @since DOM Level 3 - */ - public static final short VALIDATION_ERR = 16; - /** - * If the type of an object is incompatible with the expected type of the - * parameter associated to the object. - * @since DOM Level 3 - */ - public static final short TYPE_MISMATCH_ERR = 17; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/DOMImplementation.java b/libjava/external/w3c_dom/org/w3c/dom/DOMImplementation.java deleted file mode 100644 index 5bb71e263a9..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/DOMImplementation.java +++ /dev/null @@ -1,136 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The DOMImplementation interface provides a number of methods - * for performing operations that are independent of any particular instance - * of the document object model. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface DOMImplementation { - /** - * Test if the DOM implementation implements a specific feature and - * version, as specified in . - * @param feature The name of the feature to test. - * @param version This is the version number of the feature to test. - * @return true if the feature is implemented in the - * specified version, false otherwise. - */ - public boolean hasFeature(String feature, - String version); - - /** - * Creates an empty DocumentType node. Entity declarations - * and notations are not made available. Entity reference expansions and - * default attribute additions do not occur.. - * @param qualifiedName The qualified name of the document type to be - * created. - * @param publicId The external subset public identifier. - * @param systemId The external subset system identifier. - * @return A new DocumentType node with - * Node.ownerDocument set to null. - * @exception DOMException - * INVALID_CHARACTER_ERR: Raised if the specified qualified name is not - * an XML name according to [XML 1.0]. - *
NAMESPACE_ERR: Raised if the qualifiedName is - * malformed. - *
NOT_SUPPORTED_ERR: May be raised if the implementation does not - * support the feature "XML" and the language exposed through the - * Document does not support XML Namespaces (such as [HTML 4.01]). - * @since DOM Level 2 - */ - public DocumentType createDocumentType(String qualifiedName, - String publicId, - String systemId) - throws DOMException; - - /** - * Creates a DOM Document object of the specified type with its document - * element. - *
Note that based on the DocumentType given to create - * the document, the implementation may instantiate specialized - * Document objects that support additional features than - * the "Core", such as "HTML" [DOM Level 2 HTML] - * . On the other hand, setting the DocumentType after the - * document was created makes this very unlikely to happen. - * Alternatively, specialized Document creation methods, - * such as createHTMLDocument [DOM Level 2 HTML] - * , can be used to obtain specific types of Document - * objects. - * @param namespaceURI The namespace URI of the document element to - * create or null. - * @param qualifiedName The qualified name of the document element to be - * created or null. - * @param doctype The type of document to be created or null. - * When doctype is not null, its - * Node.ownerDocument attribute is set to the document - * being created. - * @return A new Document object with its document element. - * If the NamespaceURI, qualifiedName, and - * doctype are null, the returned - * Document is empty with no document element. - * @exception DOMException - * INVALID_CHARACTER_ERR: Raised if the specified qualified name is not - * an XML name according to [XML 1.0]. - *
NAMESPACE_ERR: Raised if the qualifiedName is - * malformed, if the qualifiedName has a prefix and the - * namespaceURI is null, or if the - * qualifiedName is null and the - * namespaceURI is different from null, or - * if the qualifiedName has a prefix that is "xml" and - * the namespaceURI is different from " - * http://www.w3.org/XML/1998/namespace" [XML Namespaces] - * , or if the DOM implementation does not support the - * "XML" feature but a non-null namespace URI was - * provided, since namespaces were defined by XML. - *
WRONG_DOCUMENT_ERR: Raised if doctype has already - * been used with a different document or was created from a different - * implementation. - *
NOT_SUPPORTED_ERR: May be raised if the implementation does not - * support the feature "XML" and the language exposed through the - * Document does not support XML Namespaces (such as [HTML 4.01]). - * @since DOM Level 2 - */ - public Document createDocument(String namespaceURI, - String qualifiedName, - DocumentType doctype) - throws DOMException; - - /** - * This method returns a specialized object which implements the - * specialized APIs of the specified feature and version, as specified - * in . The specialized object may also be obtained by using - * binding-specific casting methods but is not necessarily expected to, - * as discussed in . This method also allow the implementation to - * provide specialized objects which do not support the - * DOMImplementation interface. - * @param feature The name of the feature requested. Note that any plus - * sign "+" prepended to the name of the feature will be ignored since - * it is not significant in the context of this method. - * @param version This is the version number of the feature to test. - * @return Returns an object which implements the specialized APIs of - * the specified feature and version, if any, or null if - * there is no object which implements interfaces associated with that - * feature. If the DOMObject returned by this method - * implements the DOMImplementation interface, it must - * delegate to the primary core DOMImplementation and not - * return results inconsistent with the primary core - * DOMImplementation such as hasFeature, - * getFeature, etc. - * @since DOM Level 3 - */ - public Object getFeature(String feature, - String version); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/DOMImplementationList.java b/libjava/external/w3c_dom/org/w3c/dom/DOMImplementationList.java deleted file mode 100644 index 18349fdd411..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/DOMImplementationList.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The DOMImplementationList interface provides the abstraction - * of an ordered collection of DOM implementations, without defining or - * constraining how this collection is implemented. The items in the - * DOMImplementationList are accessible via an integral index, - * starting from 0. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - * @since DOM Level 3 - */ -public interface DOMImplementationList { - /** - * Returns the indexth item in the collection. If - * index is greater than or equal to the number of - * DOMImplementations in the list, this returns - * null. - * @param index Index into the collection. - * @return The DOMImplementation at the index - * th position in the DOMImplementationList, or - * null if that is not a valid index. - */ - public DOMImplementation item(int index); - - /** - * The number of DOMImplementations in the list. The range - * of valid child node indices is 0 to length-1 inclusive. - */ - public int getLength(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/DOMImplementationSource.java b/libjava/external/w3c_dom/org/w3c/dom/DOMImplementationSource.java deleted file mode 100644 index 3c32c188378..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/DOMImplementationSource.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * This interface permits a DOM implementer to supply one or more - * implementations, based upon requested features and versions, as specified - * in . Each implemented DOMImplementationSource object is - * listed in the binding-specific list of available sources so that its - * DOMImplementation objects are made available. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - * @since DOM Level 3 - */ -public interface DOMImplementationSource { - /** - * A method to request the first DOM implementation that supports the - * specified features. - * @param features A string that specifies which features and versions - * are required. This is a space separated list in which each feature - * is specified by its name optionally followed by a space and a - * version number. This method returns the first item of the list - * returned by getDOMImplementationList. As an example, - * the string "XML 3.0 Traversal +Events 2.0" will - * request a DOM implementation that supports the module "XML" for its - * 3.0 version, a module that support of the "Traversal" module for - * any version, and the module "Events" for its 2.0 version. The - * module "Events" must be accessible using the method - * Node.getFeature() and - * DOMImplementation.getFeature(). - * @return The first DOM implementation that support the desired - * features, or null if this source has none. - */ - public DOMImplementation getDOMImplementation(String features); - - /** - * A method to request a list of DOM implementations that support the - * specified features and versions, as specified in . - * @param features A string that specifies which features and versions - * are required. This is a space separated list in which each feature - * is specified by its name optionally followed by a space and a - * version number. This is something like: "XML 3.0 Traversal +Events - * 2.0" - * @return A list of DOM implementations that support the desired - * features. - */ - public DOMImplementationList getDOMImplementationList(String features); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/DOMLocator.java b/libjava/external/w3c_dom/org/w3c/dom/DOMLocator.java deleted file mode 100644 index fcaaa23de87..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/DOMLocator.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * DOMLocator is an interface that describes a location (e.g. - * where an error occurred). - *

See also the Document Object Model (DOM) Level 3 Core Specification. - * @since DOM Level 3 - */ -public interface DOMLocator { - /** - * The line number this locator is pointing to, or -1 if - * there is no column number available. - */ - public int getLineNumber(); - - /** - * The column number this locator is pointing to, or -1 if - * there is no column number available. - */ - public int getColumnNumber(); - - /** - * The byte offset into the input source this locator is pointing to or - * -1 if there is no byte offset available. - */ - public int getByteOffset(); - - /** - * The UTF-16, as defined in [Unicode] and Amendment 1 of [ISO/IEC 10646], offset into the input source this locator is pointing to or - * -1 if there is no UTF-16 offset available. - */ - public int getUtf16Offset(); - - /** - * The node this locator is pointing to, or null if no node - * is available. - */ - public Node getRelatedNode(); - - /** - * The URI this locator is pointing to, or null if no URI is - * available. - */ - public String getUri(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/DOMStringList.java b/libjava/external/w3c_dom/org/w3c/dom/DOMStringList.java deleted file mode 100644 index e6c348ae8c4..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/DOMStringList.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The DOMStringList interface provides the abstraction of an - * ordered collection of DOMString values, without defining or - * constraining how this collection is implemented. The items in the - * DOMStringList are accessible via an integral index, starting - * from 0. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - * @since DOM Level 3 - */ -public interface DOMStringList { - /** - * Returns the indexth item in the collection. If - * index is greater than or equal to the number of - * DOMStrings in the list, this returns null. - * @param index Index into the collection. - * @return The DOMString at the indexth - * position in the DOMStringList, or null if - * that is not a valid index. - */ - public String item(int index); - - /** - * The number of DOMStrings in the list. The range of valid - * child node indices is 0 to length-1 inclusive. - */ - public int getLength(); - - /** - * Test if a string is part of this DOMStringList. - * @param str The string to look for. - * @return true if the string has been found, - * false otherwise. - */ - public boolean contains(String str); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/Document.java b/libjava/external/w3c_dom/org/w3c/dom/Document.java deleted file mode 100644 index 43ebd4ec420..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/Document.java +++ /dev/null @@ -1,814 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The Document interface represents the entire HTML or XML - * document. Conceptually, it is the root of the document tree, and provides - * the primary access to the document's data. - *

Since elements, text nodes, comments, processing instructions, etc. - * cannot exist outside the context of a Document, the - * Document interface also contains the factory methods needed - * to create these objects. The Node objects created have a - * ownerDocument attribute which associates them with the - * Document within whose context they were created. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface Document extends Node { - /** - * The Document Type Declaration (see DocumentType) - * associated with this document. For XML documents without a document - * type declaration this returns null. For HTML documents, - * a DocumentType object may be returned, independently of - * the presence or absence of document type declaration in the HTML - * document. - *
This provides direct access to the DocumentType node, - * child node of this Document. This node can be set at - * document creation time and later changed through the use of child - * nodes manipulation methods, such as Node.insertBefore, - * or Node.replaceChild. Note, however, that while some - * implementations may instantiate different types of - * Document objects supporting additional features than the - * "Core", such as "HTML" [DOM Level 2 HTML] - * , based on the DocumentType specified at creation time, - * changing it afterwards is very unlikely to result in a change of the - * features supported. - * @version DOM Level 3 - */ - public DocumentType getDoctype(); - - /** - * The DOMImplementation object that handles this document. A - * DOM application may use objects from multiple implementations. - */ - public DOMImplementation getImplementation(); - - /** - * This is a convenience attribute that allows direct access to the child - * node that is the document element of the document. - */ - public Element getDocumentElement(); - - /** - * Creates an element of the type specified. Note that the instance - * returned implements the Element interface, so attributes - * can be specified directly on the returned object. - *
In addition, if there are known attributes with default values, - * Attr nodes representing them are automatically created - * and attached to the element. - *
To create an element with a qualified name and namespace URI, use - * the createElementNS method. - * @param tagName The name of the element type to instantiate. For XML, - * this is case-sensitive, otherwise it depends on the - * case-sensitivity of the markup language in use. In that case, the - * name is mapped to the canonical form of that markup by the DOM - * implementation. - * @return A new Element object with the - * nodeName attribute set to tagName, and - * localName, prefix, and - * namespaceURI set to null. - * @exception DOMException - * INVALID_CHARACTER_ERR: Raised if the specified name is not an XML - * name according to the XML version in use specified in the - * Document.xmlVersion attribute. - */ - public Element createElement(String tagName) - throws DOMException; - - /** - * Creates an empty DocumentFragment object. - * @return A new DocumentFragment. - */ - public DocumentFragment createDocumentFragment(); - - /** - * Creates a Text node given the specified string. - * @param data The data for the node. - * @return The new Text object. - */ - public Text createTextNode(String data); - - /** - * Creates a Comment node given the specified string. - * @param data The data for the node. - * @return The new Comment object. - */ - public Comment createComment(String data); - - /** - * Creates a CDATASection node whose value is the specified - * string. - * @param data The data for the CDATASection contents. - * @return The new CDATASection object. - * @exception DOMException - * NOT_SUPPORTED_ERR: Raised if this document is an HTML document. - */ - public CDATASection createCDATASection(String data) - throws DOMException; - - /** - * Creates a ProcessingInstruction node given the specified - * name and data strings. - * @param target The target part of the processing instruction.Unlike - * Document.createElementNS or - * Document.createAttributeNS, no namespace well-formed - * checking is done on the target name. Applications should invoke - * Document.normalizeDocument() with the parameter " - * namespaces" set to true in order to ensure that the - * target name is namespace well-formed. - * @param data The data for the node. - * @return The new ProcessingInstruction object. - * @exception DOMException - * INVALID_CHARACTER_ERR: Raised if the specified target is not an XML - * name according to the XML version in use specified in the - * Document.xmlVersion attribute. - *
NOT_SUPPORTED_ERR: Raised if this document is an HTML document. - */ - public ProcessingInstruction createProcessingInstruction(String target, - String data) - throws DOMException; - - /** - * Creates an Attr of the given name. Note that the - * Attr instance can then be set on an Element - * using the setAttributeNode method. - *
To create an attribute with a qualified name and namespace URI, use - * the createAttributeNS method. - * @param name The name of the attribute. - * @return A new Attr object with the nodeName - * attribute set to name, and localName, - * prefix, and namespaceURI set to - * null. The value of the attribute is the empty string. - * @exception DOMException - * INVALID_CHARACTER_ERR: Raised if the specified name is not an XML - * name according to the XML version in use specified in the - * Document.xmlVersion attribute. - */ - public Attr createAttribute(String name) - throws DOMException; - - /** - * Creates an EntityReference object. In addition, if the - * referenced entity is known, the child list of the - * EntityReference node is made the same as that of the - * corresponding Entity node. - *

Note: If any descendant of the Entity node has - * an unbound namespace prefix, the corresponding descendant of the - * created EntityReference node is also unbound; (its - * namespaceURI is null). The DOM Level 2 and - * 3 do not support any mechanism to resolve namespace prefixes in this - * case. - * @param name The name of the entity to reference.Unlike - * Document.createElementNS or - * Document.createAttributeNS, no namespace well-formed - * checking is done on the entity name. Applications should invoke - * Document.normalizeDocument() with the parameter " - * namespaces" set to true in order to ensure that the - * entity name is namespace well-formed. - * @return The new EntityReference object. - * @exception DOMException - * INVALID_CHARACTER_ERR: Raised if the specified name is not an XML - * name according to the XML version in use specified in the - * Document.xmlVersion attribute. - *
NOT_SUPPORTED_ERR: Raised if this document is an HTML document. - */ - public EntityReference createEntityReference(String name) - throws DOMException; - - /** - * Returns a NodeList of all the Elements in - * document order with a given tag name and are contained in the - * document. - * @param tagname The name of the tag to match on. The special value "*" - * matches all tags. For XML, the tagname parameter is - * case-sensitive, otherwise it depends on the case-sensitivity of the - * markup language in use. - * @return A new NodeList object containing all the matched - * Elements. - */ - public NodeList getElementsByTagName(String tagname); - - /** - * Imports a node from another document to this document, without altering - * or removing the source node from the original document; this method - * creates a new copy of the source node. The returned node has no - * parent; (parentNode is null). - *
For all nodes, importing a node creates a node object owned by the - * importing document, with attribute values identical to the source - * node's nodeName and nodeType, plus the - * attributes related to namespaces (prefix, - * localName, and namespaceURI). As in the - * cloneNode operation, the source node is not altered. - * User data associated to the imported node is not carried over. - * However, if any UserDataHandlers has been specified - * along with the associated data these handlers will be called with the - * appropriate parameters before this method returns. - *
Additional information is copied as appropriate to the - * nodeType, attempting to mirror the behavior expected if - * a fragment of XML or HTML source was copied from one document to - * another, recognizing that the two documents may have different DTDs - * in the XML case. The following list describes the specifics for each - * type of node. - *

- *
ATTRIBUTE_NODE
- *
The ownerElement attribute - * is set to null and the specified flag is - * set to true on the generated Attr. The - * descendants of the source Attr are recursively imported - * and the resulting nodes reassembled to form the corresponding subtree. - * Note that the deep parameter has no effect on - * Attr nodes; they always carry their children with them - * when imported.
- *
DOCUMENT_FRAGMENT_NODE
- *
If the deep option - * was set to true, the descendants of the source - * DocumentFragment are recursively imported and the - * resulting nodes reassembled under the imported - * DocumentFragment to form the corresponding subtree. - * Otherwise, this simply generates an empty - * DocumentFragment.
- *
DOCUMENT_NODE
- *
Document - * nodes cannot be imported.
- *
DOCUMENT_TYPE_NODE
- *
DocumentType - * nodes cannot be imported.
- *
ELEMENT_NODE
- *
Specified attribute nodes of the source element are imported, and the generated - * Attr nodes are attached to the generated - * Element. Default attributes are not copied, though if the document being imported into defines default - * attributes for this element name, those are assigned. If the - * importNode deep parameter was set to - * true, the descendants of the source element are - * recursively imported and the resulting nodes reassembled to form the - * corresponding subtree.
- *
ENTITY_NODE
- *
Entity nodes can be - * imported, however in the current release of the DOM the - * DocumentType is readonly. Ability to add these imported - * nodes to a DocumentType will be considered for addition - * to a future release of the DOM.On import, the publicId, - * systemId, and notationName attributes are - * copied. If a deep import is requested, the descendants - * of the the source Entity are recursively imported and - * the resulting nodes reassembled to form the corresponding subtree.
- *
- * ENTITY_REFERENCE_NODE
- *
Only the EntityReference itself is - * copied, even if a deep import is requested, since the - * source and destination documents might have defined the entity - * differently. If the document being imported into provides a - * definition for this entity name, its value is assigned.
- *
NOTATION_NODE
- *
- * Notation nodes can be imported, however in the current - * release of the DOM the DocumentType is readonly. Ability - * to add these imported nodes to a DocumentType will be - * considered for addition to a future release of the DOM.On import, the - * publicId and systemId attributes are copied. - * Note that the deep parameter has no effect on this type - * of nodes since they cannot have any children.
- *
- * PROCESSING_INSTRUCTION_NODE
- *
The imported node copies its - * target and data values from those of the - * source node.Note that the deep parameter has no effect - * on this type of nodes since they cannot have any children.
- *
TEXT_NODE, - * CDATA_SECTION_NODE, COMMENT_NODE
- *
These three types of nodes inheriting - * from CharacterData copy their data and - * length attributes from those of the source node.Note - * that the deep parameter has no effect on these types of - * nodes since they cannot have any children.
- *
- * @param importedNode The node to import. - * @param deep If true, recursively import the subtree under - * the specified node; if false, import only the node - * itself, as explained above. This has no effect on nodes that cannot - * have any children, and on Attr, and - * EntityReference nodes. - * @return The imported node that belongs to this Document. - * @exception DOMException - * NOT_SUPPORTED_ERR: Raised if the type of node being imported is not - * supported. - *
INVALID_CHARACTER_ERR: Raised if one of the imported names is not - * an XML name according to the XML version in use specified in the - * Document.xmlVersion attribute. This may happen when - * importing an XML 1.1 [XML 1.1] element - * into an XML 1.0 document, for instance. - * @since DOM Level 2 - */ - public Node importNode(Node importedNode, - boolean deep) - throws DOMException; - - /** - * Creates an element of the given qualified name and namespace URI. - *
Per [XML Namespaces] - * , applications must use the value null as the - * namespaceURI parameter for methods if they wish to have no namespace. - * @param namespaceURI The namespace URI of the element to create. - * @param qualifiedName The qualified name of the element type to - * instantiate. - * @return A new Element object with the following - * attributes: - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - *
AttributeValue
Node.nodeName - * qualifiedName
Node.namespaceURI - * namespaceURI
Node.prefixprefix, extracted - * from qualifiedName, or null if there is - * no prefix
Node.localNamelocal name, extracted from - * qualifiedName
Element.tagName - * qualifiedName
- * @exception DOMException - * INVALID_CHARACTER_ERR: Raised if the specified - * qualifiedName is not an XML name according to the XML - * version in use specified in the Document.xmlVersion - * attribute. - *
NAMESPACE_ERR: Raised if the qualifiedName is a - * malformed qualified name, if the qualifiedName has a - * prefix and the namespaceURI is null, or - * if the qualifiedName has a prefix that is "xml" and - * the namespaceURI is different from " - * http://www.w3.org/XML/1998/namespace" [XML Namespaces] - * , or if the qualifiedName or its prefix is "xmlns" and - * the namespaceURI is different from "http://www.w3.org/2000/xmlns/", or if the namespaceURI is "http://www.w3.org/2000/xmlns/" and neither the qualifiedName nor its prefix is "xmlns". - *
NOT_SUPPORTED_ERR: Always thrown if the current document does not - * support the "XML" feature, since namespaces were - * defined by XML. - * @since DOM Level 2 - */ - public Element createElementNS(String namespaceURI, - String qualifiedName) - throws DOMException; - - /** - * Creates an attribute of the given qualified name and namespace URI. - *
Per [XML Namespaces] - * , applications must use the value null as the - * namespaceURI parameter for methods if they wish to have - * no namespace. - * @param namespaceURI The namespace URI of the attribute to create. - * @param qualifiedName The qualified name of the attribute to - * instantiate. - * @return A new Attr object with the following attributes: - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - *
- * AttributeValue
Node.nodeNamequalifiedName
- * Node.namespaceURInamespaceURI
- * Node.prefixprefix, extracted from - * qualifiedName, or null if there is no - * prefix
Node.localNamelocal name, extracted from - * qualifiedName
Attr.name - * qualifiedName
Node.nodeValuethe empty - * string
- * @exception DOMException - * INVALID_CHARACTER_ERR: Raised if the specified - * qualifiedName is not an XML name according to the XML - * version in use specified in the Document.xmlVersion - * attribute. - *
NAMESPACE_ERR: Raised if the qualifiedName is a - * malformed qualified name, if the qualifiedName has a - * prefix and the namespaceURI is null, if - * the qualifiedName has a prefix that is "xml" and the - * namespaceURI is different from " - * http://www.w3.org/XML/1998/namespace", if the qualifiedName or its prefix is "xmlns" and the - * namespaceURI is different from "http://www.w3.org/2000/xmlns/", or if the namespaceURI is "http://www.w3.org/2000/xmlns/" and neither the qualifiedName nor its prefix is "xmlns". - *
NOT_SUPPORTED_ERR: Always thrown if the current document does not - * support the "XML" feature, since namespaces were - * defined by XML. - * @since DOM Level 2 - */ - public Attr createAttributeNS(String namespaceURI, - String qualifiedName) - throws DOMException; - - /** - * Returns a NodeList of all the Elements with a - * given local name and namespace URI in document order. - * @param namespaceURI The namespace URI of the elements to match on. The - * special value "*" matches all namespaces. - * @param localName The local name of the elements to match on. The - * special value "*" matches all local names. - * @return A new NodeList object containing all the matched - * Elements. - * @since DOM Level 2 - */ - public NodeList getElementsByTagNameNS(String namespaceURI, - String localName); - - /** - * Returns the Element that has an ID attribute with the - * given value. If no such element exists, this returns null - * . If more than one element has an ID attribute with that value, what - * is returned is undefined. - *
The DOM implementation is expected to use the attribute - * Attr.isId to determine if an attribute is of type ID. - *

Note: Attributes with the name "ID" or "id" are not of type - * ID unless so defined. - * @param elementId The unique id value for an element. - * @return The matching element or null if there is none. - * @since DOM Level 2 - */ - public Element getElementById(String elementId); - - /** - * An attribute specifying the encoding used for this document at the time - * of the parsing. This is null when it is not known, such - * as when the Document was created in memory. - * @since DOM Level 3 - */ - public String getInputEncoding(); - - /** - * An attribute specifying, as part of the XML declaration, the encoding of this document. This is null when - * unspecified or when it is not known, such as when the - * Document was created in memory. - * @since DOM Level 3 - */ - public String getXmlEncoding(); - - /** - * An attribute specifying, as part of the XML declaration, whether this document is standalone. This is false when - * unspecified. - *

Note: No verification is done on the value when setting - * this attribute. Applications should use - * Document.normalizeDocument() with the "validate" - * parameter to verify if the value matches the validity - * constraint for standalone document declaration as defined in [XML 1.0]. - * @since DOM Level 3 - */ - public boolean getXmlStandalone(); - /** - * An attribute specifying, as part of the XML declaration, whether this document is standalone. This is false when - * unspecified. - *

Note: No verification is done on the value when setting - * this attribute. Applications should use - * Document.normalizeDocument() with the "validate" - * parameter to verify if the value matches the validity - * constraint for standalone document declaration as defined in [XML 1.0]. - * @exception DOMException - * NOT_SUPPORTED_ERR: Raised if this document does not support the - * "XML" feature. - * @since DOM Level 3 - */ - public void setXmlStandalone(boolean xmlStandalone) - throws DOMException; - - /** - * An attribute specifying, as part of the XML declaration, the version number of this document. If there is no declaration and if - * this document supports the "XML" feature, the value is - * "1.0". If this document does not support the "XML" - * feature, the value is always null. Changing this - * attribute will affect methods that check for invalid characters in - * XML names. Application should invoke - * Document.normalizeDocument() in order to check for - * invalid characters in the Nodes that are already part of - * this Document. - *
DOM applications may use the - * DOMImplementation.hasFeature(feature, version) method - * with parameter values "XMLVersion" and "1.0" (respectively) to - * determine if an implementation supports [XML 1.0]. DOM - * applications may use the same method with parameter values - * "XMLVersion" and "1.1" (respectively) to determine if an - * implementation supports [XML 1.1]. In both - * cases, in order to support XML, an implementation must also support - * the "XML" feature defined in this specification. Document - * objects supporting a version of the "XMLVersion" feature must not - * raise a NOT_SUPPORTED_ERR exception for the same version - * number when using Document.xmlVersion. - * @since DOM Level 3 - */ - public String getXmlVersion(); - /** - * An attribute specifying, as part of the XML declaration, the version number of this document. If there is no declaration and if - * this document supports the "XML" feature, the value is - * "1.0". If this document does not support the "XML" - * feature, the value is always null. Changing this - * attribute will affect methods that check for invalid characters in - * XML names. Application should invoke - * Document.normalizeDocument() in order to check for - * invalid characters in the Nodes that are already part of - * this Document. - *
DOM applications may use the - * DOMImplementation.hasFeature(feature, version) method - * with parameter values "XMLVersion" and "1.0" (respectively) to - * determine if an implementation supports [XML 1.0]. DOM - * applications may use the same method with parameter values - * "XMLVersion" and "1.1" (respectively) to determine if an - * implementation supports [XML 1.1]. In both - * cases, in order to support XML, an implementation must also support - * the "XML" feature defined in this specification. Document - * objects supporting a version of the "XMLVersion" feature must not - * raise a NOT_SUPPORTED_ERR exception for the same version - * number when using Document.xmlVersion. - * @exception DOMException - * NOT_SUPPORTED_ERR: Raised if the version is set to a value that is - * not supported by this Document or if this document - * does not support the "XML" feature. - * @since DOM Level 3 - */ - public void setXmlVersion(String xmlVersion) - throws DOMException; - - /** - * An attribute specifying whether error checking is enforced or not. When - * set to false, the implementation is free to not test - * every possible error case normally defined on DOM operations, and not - * raise any DOMException on DOM operations or report - * errors while using Document.normalizeDocument(). In case - * of error, the behavior is undefined. This attribute is - * true by default. - * @since DOM Level 3 - */ - public boolean getStrictErrorChecking(); - /** - * An attribute specifying whether error checking is enforced or not. When - * set to false, the implementation is free to not test - * every possible error case normally defined on DOM operations, and not - * raise any DOMException on DOM operations or report - * errors while using Document.normalizeDocument(). In case - * of error, the behavior is undefined. This attribute is - * true by default. - * @since DOM Level 3 - */ - public void setStrictErrorChecking(boolean strictErrorChecking); - - /** - * The location of the document or null if undefined or if - * the Document was created using - * DOMImplementation.createDocument. No lexical checking is - * performed when setting this attribute; this could result in a - * null value returned when using Node.baseURI - * . - *
Beware that when the Document supports the feature - * "HTML" [DOM Level 2 HTML] - * , the href attribute of the HTML BASE element takes precedence over - * this attribute when computing Node.baseURI. - * @since DOM Level 3 - */ - public String getDocumentURI(); - /** - * The location of the document or null if undefined or if - * the Document was created using - * DOMImplementation.createDocument. No lexical checking is - * performed when setting this attribute; this could result in a - * null value returned when using Node.baseURI - * . - *
Beware that when the Document supports the feature - * "HTML" [DOM Level 2 HTML] - * , the href attribute of the HTML BASE element takes precedence over - * this attribute when computing Node.baseURI. - * @since DOM Level 3 - */ - public void setDocumentURI(String documentURI); - - /** - * Attempts to adopt a node from another document to this document. If - * supported, it changes the ownerDocument of the source - * node, its children, as well as the attached attribute nodes if there - * are any. If the source node has a parent it is first removed from the - * child list of its parent. This effectively allows moving a subtree - * from one document to another (unlike importNode() which - * create a copy of the source node instead of moving it). When it - * fails, applications should use Document.importNode() - * instead. Note that if the adopted node is already part of this - * document (i.e. the source and target document are the same), this - * method still has the effect of removing the source node from the - * child list of its parent, if any. The following list describes the - * specifics for each type of node. - *

- *
ATTRIBUTE_NODE
- *
The - * ownerElement attribute is set to null and - * the specified flag is set to true on the - * adopted Attr. The descendants of the source - * Attr are recursively adopted.
- *
DOCUMENT_FRAGMENT_NODE
- *
The - * descendants of the source node are recursively adopted.
- *
DOCUMENT_NODE
- *
- * Document nodes cannot be adopted.
- *
DOCUMENT_TYPE_NODE
- *
- * DocumentType nodes cannot be adopted.
- *
ELEMENT_NODE
- *
Specified attribute nodes of the source element are adopted. Default attributes - * are discarded, though if the document being adopted into defines - * default attributes for this element name, those are assigned. The - * descendants of the source element are recursively adopted.
- *
ENTITY_NODE
- *
- * Entity nodes cannot be adopted.
- *
ENTITY_REFERENCE_NODE
- *
Only - * the EntityReference node itself is adopted, the - * descendants are discarded, since the source and destination documents - * might have defined the entity differently. If the document being - * imported into provides a definition for this entity name, its value - * is assigned.
- *
NOTATION_NODE
- *
Notation nodes cannot be - * adopted.
- *
PROCESSING_INSTRUCTION_NODE, TEXT_NODE, CDATA_SECTION_NODE, - * COMMENT_NODE
- *
These nodes can all be adopted. No specifics.
- *
- *

Note: Since it does not create new nodes unlike the - * Document.importNode() method, this method does not raise - * an INVALID_CHARACTER_ERR exception, and applications - * should use the Document.normalizeDocument() method to - * check if an imported name is not an XML name according to the XML - * version in use. - * @param source The node to move into this document. - * @return The adopted node, or null if this operation - * fails, such as when the source node comes from a different - * implementation. - * @exception DOMException - * NOT_SUPPORTED_ERR: Raised if the source node is of type - * DOCUMENT, DOCUMENT_TYPE. - *
NO_MODIFICATION_ALLOWED_ERR: Raised when the source node is - * readonly. - * @since DOM Level 3 - */ - public Node adoptNode(Node source) - throws DOMException; - - /** - * The configuration used when Document.normalizeDocument() - * is invoked. - * @since DOM Level 3 - */ - public DOMConfiguration getDomConfig(); - - /** - * This method acts as if the document was going through a save and load - * cycle, putting the document in a "normal" form. As a consequence, - * this method updates the replacement tree of - * EntityReference nodes and normalizes Text - * nodes, as defined in the method Node.normalize(). - *
Otherwise, the actual result depends on the features being set on - * the Document.domConfig object and governing what - * operations actually take place. Noticeably this method could also - * make the document namespace well-formed according to the algorithm - * described in , check the character normalization, remove the - * CDATASection nodes, etc. See - * DOMConfiguration for details. - *

// Keep in the document 
-     * the information defined // in the XML Information Set (Java example) 
-     * DOMConfiguration docConfig = myDocument.getDomConfig(); 
-     * docConfig.setParameter("infoset", Boolean.TRUE); 
-     * myDocument.normalizeDocument();
- * - *
Mutation events, when supported, are generated to reflect the - * changes occurring on the document. - *
If errors occur during the invocation of this method, such as an - * attempt to update a read-only node or a Node.nodeName - * contains an invalid character according to the XML version in use, - * errors or warnings (DOMError.SEVERITY_ERROR or - * DOMError.SEVERITY_WARNING) will be reported using the - * DOMErrorHandler object associated with the "error-handler - * " parameter. Note this method might also report fatal errors ( - * DOMError.SEVERITY_FATAL_ERROR) if an implementation - * cannot recover from an error. - * @since DOM Level 3 - */ - public void normalizeDocument(); - - /** - * Rename an existing node of type ELEMENT_NODE or - * ATTRIBUTE_NODE. - *
When possible this simply changes the name of the given node, - * otherwise this creates a new node with the specified name and - * replaces the existing node with the new node as described below. - *
If simply changing the name of the given node is not possible, the - * following operations are performed: a new node is created, any - * registered event listener is registered on the new node, any user - * data attached to the old node is removed from that node, the old node - * is removed from its parent if it has one, the children are moved to - * the new node, if the renamed node is an Element its - * attributes are moved to the new node, the new node is inserted at the - * position the old node used to have in its parent's child nodes list - * if it has one, the user data that was attached to the old node is - * attached to the new node. - *
When the node being renamed is an Element only the - * specified attributes are moved, default attributes originated from - * the DTD are updated according to the new element name. In addition, - * the implementation may update default attributes from other schemas. - * Applications should use Document.normalizeDocument() to - * guarantee these attributes are up-to-date. - *
When the node being renamed is an Attr that is - * attached to an Element, the node is first removed from - * the Element attributes map. Then, once renamed, either - * by modifying the existing node or creating a new one as described - * above, it is put back. - *
In addition, - *
    - *
  • a user data event NODE_RENAMED is fired, - *
  • - *
  • - * when the implementation supports the feature "MutationNameEvents", - * each mutation operation involved in this method fires the appropriate - * event, and in the end the event { - * http://www.w3.org/2001/xml-events, - * DOMElementNameChanged} or { - * http://www.w3.org/2001/xml-events, - * DOMAttributeNameChanged} is fired. - *
  • - *
- * @param n The node to rename. - * @param namespaceURI The new namespace URI. - * @param qualifiedName The new qualified name. - * @return The renamed node. This is either the specified node or the new - * node that was created to replace the specified node. - * @exception DOMException - * NOT_SUPPORTED_ERR: Raised when the type of the specified node is - * neither ELEMENT_NODE nor ATTRIBUTE_NODE, - * or if the implementation does not support the renaming of the - * document element. - *
INVALID_CHARACTER_ERR: Raised if the new qualified name is not an - * XML name according to the XML version in use specified in the - * Document.xmlVersion attribute. - *
WRONG_DOCUMENT_ERR: Raised when the specified node was created - * from a different document than this document. - *
NAMESPACE_ERR: Raised if the qualifiedName is a - * malformed qualified name, if the qualifiedName has a - * prefix and the namespaceURI is null, or - * if the qualifiedName has a prefix that is "xml" and - * the namespaceURI is different from " - * http://www.w3.org/XML/1998/namespace" [XML Namespaces] - * . Also raised, when the node being renamed is an attribute, if the - * qualifiedName, or its prefix, is "xmlns" and the - * namespaceURI is different from "http://www.w3.org/2000/xmlns/". - * @since DOM Level 3 - */ - public Node renameNode(Node n, - String namespaceURI, - String qualifiedName) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/DocumentFragment.java b/libjava/external/w3c_dom/org/w3c/dom/DocumentFragment.java deleted file mode 100644 index 8c4531eff87..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/DocumentFragment.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * DocumentFragment is a "lightweight" or "minimal" - * Document object. It is very common to want to be able to - * extract a portion of a document's tree or to create a new fragment of a - * document. Imagine implementing a user command like cut or rearranging a - * document by moving fragments around. It is desirable to have an object - * which can hold such fragments and it is quite natural to use a Node for - * this purpose. While it is true that a Document object could - * fulfill this role, a Document object can potentially be a - * heavyweight object, depending on the underlying implementation. What is - * really needed for this is a very lightweight object. - * DocumentFragment is such an object. - *

Furthermore, various operations -- such as inserting nodes as children - * of another Node -- may take DocumentFragment - * objects as arguments; this results in all the child nodes of the - * DocumentFragment being moved to the child list of this node. - *

The children of a DocumentFragment node are zero or more - * nodes representing the tops of any sub-trees defining the structure of - * the document. DocumentFragment nodes do not need to be - * well-formed XML documents (although they do need to follow the rules - * imposed upon well-formed XML parsed entities, which can have multiple top - * nodes). For example, a DocumentFragment might have only one - * child and that child node could be a Text node. Such a - * structure model represents neither an HTML document nor a well-formed XML - * document. - *

When a DocumentFragment is inserted into a - * Document (or indeed any other Node that may - * take children) the children of the DocumentFragment and not - * the DocumentFragment itself are inserted into the - * Node. This makes the DocumentFragment very - * useful when the user wishes to create nodes that are siblings; the - * DocumentFragment acts as the parent of these nodes so that - * the user can use the standard methods from the Node - * interface, such as Node.insertBefore and - * Node.appendChild. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface DocumentFragment extends Node { -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/DocumentType.java b/libjava/external/w3c_dom/org/w3c/dom/DocumentType.java deleted file mode 100644 index 6221c7b5ef6..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/DocumentType.java +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * Each Document has a doctype attribute whose value - * is either null or a DocumentType object. The - * DocumentType interface in the DOM Core provides an interface - * to the list of entities that are defined for the document, and little - * else because the effect of namespaces and the various XML schema efforts - * on DTD representation are not clearly understood as of this writing. - *

DOM Level 3 doesn't support editing DocumentType nodes. - * DocumentType nodes are read-only. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface DocumentType extends Node { - /** - * The name of DTD; i.e., the name immediately following the - * DOCTYPE keyword. - */ - public String getName(); - - /** - * A NamedNodeMap containing the general entities, both - * external and internal, declared in the DTD. Parameter entities are - * not contained. Duplicates are discarded. For example in: - *

<!DOCTYPE 
-     * ex SYSTEM "ex.dtd" [ <!ENTITY foo "foo"> <!ENTITY bar 
-     * "bar"> <!ENTITY bar "bar2"> <!ENTITY % baz "baz"> 
-     * ]> <ex/>
- * the interface provides access to foo - * and the first declaration of bar but not the second - * declaration of bar or baz. Every node in - * this map also implements the Entity interface. - *
The DOM Level 2 does not support editing entities, therefore - * entities cannot be altered in any way. - */ - public NamedNodeMap getEntities(); - - /** - * A NamedNodeMap containing the notations declared in the - * DTD. Duplicates are discarded. Every node in this map also implements - * the Notation interface. - *
The DOM Level 2 does not support editing notations, therefore - * notations cannot be altered in any way. - */ - public NamedNodeMap getNotations(); - - /** - * The public identifier of the external subset. - * @since DOM Level 2 - */ - public String getPublicId(); - - /** - * The system identifier of the external subset. This may be an absolute - * URI or not. - * @since DOM Level 2 - */ - public String getSystemId(); - - /** - * The internal subset as a string, or null if there is none. - * This is does not contain the delimiting square brackets. - *

Note: The actual content returned depends on how much - * information is available to the implementation. This may vary - * depending on various parameters, including the XML processor used to - * build the document. - * @since DOM Level 2 - */ - public String getInternalSubset(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/Element.java b/libjava/external/w3c_dom/org/w3c/dom/Element.java deleted file mode 100644 index 6a7f7e3d0c7..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/Element.java +++ /dev/null @@ -1,439 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The Element interface represents an element in an HTML or XML - * document. Elements may have attributes associated with them; since the - * Element interface inherits from Node, the - * generic Node interface attribute attributes may - * be used to retrieve the set of all attributes for an element. There are - * methods on the Element interface to retrieve either an - * Attr object by name or an attribute value by name. In XML, - * where an attribute value may contain entity references, an - * Attr object should be retrieved to examine the possibly - * fairly complex sub-tree representing the attribute value. On the other - * hand, in HTML, where all attributes have simple string values, methods to - * directly access an attribute value can safely be used as a convenience. - *

Note: In DOM Level 2, the method normalize is - * inherited from the Node interface where it was moved. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface Element extends Node { - /** - * The name of the element. If Node.localName is different - * from null, this attribute is a qualified name. For - * example, in: - *

 <elementExample id="demo"> ... 
-     * </elementExample> , 
- * tagName has the value - * "elementExample". Note that this is case-preserving in - * XML, as are all of the operations of the DOM. The HTML DOM returns - * the tagName of an HTML element in the canonical - * uppercase form, regardless of the case in the source HTML document. - */ - public String getTagName(); - - /** - * Retrieves an attribute value by name. - * @param name The name of the attribute to retrieve. - * @return The Attr value as a string, or the empty string - * if that attribute does not have a specified or default value. - */ - public String getAttribute(String name); - - /** - * Adds a new attribute. If an attribute with that name is already present - * in the element, its value is changed to be that of the value - * parameter. This value is a simple string; it is not parsed as it is - * being set. So any markup (such as syntax to be recognized as an - * entity reference) is treated as literal text, and needs to be - * appropriately escaped by the implementation when it is written out. - * In order to assign an attribute value that contains entity - * references, the user must create an Attr node plus any - * Text and EntityReference nodes, build the - * appropriate subtree, and use setAttributeNode to assign - * it as the value of an attribute. - *
To set an attribute with a qualified name and namespace URI, use - * the setAttributeNS method. - * @param name The name of the attribute to create or alter. - * @param value Value to set in string form. - * @exception DOMException - * INVALID_CHARACTER_ERR: Raised if the specified name is not an XML - * name according to the XML version in use specified in the - * Document.xmlVersion attribute. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - */ - public void setAttribute(String name, - String value) - throws DOMException; - - /** - * Removes an attribute by name. If a default value for the removed - * attribute is defined in the DTD, a new attribute immediately appears - * with the default value as well as the corresponding namespace URI, - * local name, and prefix when applicable. The implementation may handle - * default values from other schemas similarly but applications should - * use Document.normalizeDocument() to guarantee this - * information is up-to-date. - *
If no attribute with this name is found, this method has no effect. - *
To remove an attribute by local name and namespace URI, use the - * removeAttributeNS method. - * @param name The name of the attribute to remove. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - */ - public void removeAttribute(String name) - throws DOMException; - - /** - * Retrieves an attribute node by name. - *
To retrieve an attribute node by qualified name and namespace URI, - * use the getAttributeNodeNS method. - * @param name The name (nodeName) of the attribute to - * retrieve. - * @return The Attr node with the specified name ( - * nodeName) or null if there is no such - * attribute. - */ - public Attr getAttributeNode(String name); - - /** - * Adds a new attribute node. If an attribute with that name ( - * nodeName) is already present in the element, it is - * replaced by the new one. Replacing an attribute node by itself has no - * effect. - *
To add a new attribute node with a qualified name and namespace - * URI, use the setAttributeNodeNS method. - * @param newAttr The Attr node to add to the attribute list. - * @return If the newAttr attribute replaces an existing - * attribute, the replaced Attr node is returned, - * otherwise null is returned. - * @exception DOMException - * WRONG_DOCUMENT_ERR: Raised if newAttr was created from a - * different document than the one that created the element. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - *
INUSE_ATTRIBUTE_ERR: Raised if newAttr is already an - * attribute of another Element object. The DOM user must - * explicitly clone Attr nodes to re-use them in other - * elements. - */ - public Attr setAttributeNode(Attr newAttr) - throws DOMException; - - /** - * Removes the specified attribute node. If a default value for the - * removed Attr node is defined in the DTD, a new node - * immediately appears with the default value as well as the - * corresponding namespace URI, local name, and prefix when applicable. - * The implementation may handle default values from other schemas - * similarly but applications should use - * Document.normalizeDocument() to guarantee this - * information is up-to-date. - * @param oldAttr The Attr node to remove from the attribute - * list. - * @return The Attr node that was removed. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - *
NOT_FOUND_ERR: Raised if oldAttr is not an attribute - * of the element. - */ - public Attr removeAttributeNode(Attr oldAttr) - throws DOMException; - - /** - * Returns a NodeList of all descendant Elements - * with a given tag name, in document order. - * @param name The name of the tag to match on. The special value "*" - * matches all tags. - * @return A list of matching Element nodes. - */ - public NodeList getElementsByTagName(String name); - - /** - * Retrieves an attribute value by local name and namespace URI. - *
Per [XML Namespaces] - * , applications must use the value null as the - * namespaceURI parameter for methods if they wish to have - * no namespace. - * @param namespaceURI The namespace URI of the attribute to retrieve. - * @param localName The local name of the attribute to retrieve. - * @return The Attr value as a string, or the empty string - * if that attribute does not have a specified or default value. - * @exception DOMException - * NOT_SUPPORTED_ERR: May be raised if the implementation does not - * support the feature "XML" and the language exposed - * through the Document does not support XML Namespaces (such as [HTML 4.01]). - * @since DOM Level 2 - */ - public String getAttributeNS(String namespaceURI, - String localName) - throws DOMException; - - /** - * Adds a new attribute. If an attribute with the same local name and - * namespace URI is already present on the element, its prefix is - * changed to be the prefix part of the qualifiedName, and - * its value is changed to be the value parameter. This - * value is a simple string; it is not parsed as it is being set. So any - * markup (such as syntax to be recognized as an entity reference) is - * treated as literal text, and needs to be appropriately escaped by the - * implementation when it is written out. In order to assign an - * attribute value that contains entity references, the user must create - * an Attr node plus any Text and - * EntityReference nodes, build the appropriate subtree, - * and use setAttributeNodeNS or - * setAttributeNode to assign it as the value of an - * attribute. - *
Per [XML Namespaces] - * , applications must use the value null as the - * namespaceURI parameter for methods if they wish to have - * no namespace. - * @param namespaceURI The namespace URI of the attribute to create or - * alter. - * @param qualifiedName The qualified name of the attribute to create or - * alter. - * @param value The value to set in string form. - * @exception DOMException - * INVALID_CHARACTER_ERR: Raised if the specified qualified name is not - * an XML name according to the XML version in use specified in the - * Document.xmlVersion attribute. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - *
NAMESPACE_ERR: Raised if the qualifiedName is - * malformed per the Namespaces in XML specification, if the - * qualifiedName has a prefix and the - * namespaceURI is null, if the - * qualifiedName has a prefix that is "xml" and the - * namespaceURI is different from " - * http://www.w3.org/XML/1998/namespace", if the qualifiedName or its prefix is "xmlns" and the - * namespaceURI is different from "http://www.w3.org/2000/xmlns/", or if the namespaceURI is "http://www.w3.org/2000/xmlns/" and neither the qualifiedName nor its prefix is "xmlns". - *
NOT_SUPPORTED_ERR: May be raised if the implementation does not - * support the feature "XML" and the language exposed - * through the Document does not support XML Namespaces (such as [HTML 4.01]). - * @since DOM Level 2 - */ - public void setAttributeNS(String namespaceURI, - String qualifiedName, - String value) - throws DOMException; - - /** - * Removes an attribute by local name and namespace URI. If a default - * value for the removed attribute is defined in the DTD, a new - * attribute immediately appears with the default value as well as the - * corresponding namespace URI, local name, and prefix when applicable. - * The implementation may handle default values from other schemas - * similarly but applications should use - * Document.normalizeDocument() to guarantee this - * information is up-to-date. - *
If no attribute with this local name and namespace URI is found, - * this method has no effect. - *
Per [XML Namespaces] - * , applications must use the value null as the - * namespaceURI parameter for methods if they wish to have - * no namespace. - * @param namespaceURI The namespace URI of the attribute to remove. - * @param localName The local name of the attribute to remove. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - *
NOT_SUPPORTED_ERR: May be raised if the implementation does not - * support the feature "XML" and the language exposed - * through the Document does not support XML Namespaces (such as [HTML 4.01]). - * @since DOM Level 2 - */ - public void removeAttributeNS(String namespaceURI, - String localName) - throws DOMException; - - /** - * Retrieves an Attr node by local name and namespace URI. - *
Per [XML Namespaces] - * , applications must use the value null as the - * namespaceURI parameter for methods if they wish to have - * no namespace. - * @param namespaceURI The namespace URI of the attribute to retrieve. - * @param localName The local name of the attribute to retrieve. - * @return The Attr node with the specified attribute local - * name and namespace URI or null if there is no such - * attribute. - * @exception DOMException - * NOT_SUPPORTED_ERR: May be raised if the implementation does not - * support the feature "XML" and the language exposed - * through the Document does not support XML Namespaces (such as [HTML 4.01]). - * @since DOM Level 2 - */ - public Attr getAttributeNodeNS(String namespaceURI, - String localName) - throws DOMException; - - /** - * Adds a new attribute. If an attribute with that local name and that - * namespace URI is already present in the element, it is replaced by - * the new one. Replacing an attribute node by itself has no effect. - *
Per [XML Namespaces] - * , applications must use the value null as the - * namespaceURI parameter for methods if they wish to have - * no namespace. - * @param newAttr The Attr node to add to the attribute list. - * @return If the newAttr attribute replaces an existing - * attribute with the same local name and namespace URI, the replaced - * Attr node is returned, otherwise null is - * returned. - * @exception DOMException - * WRONG_DOCUMENT_ERR: Raised if newAttr was created from a - * different document than the one that created the element. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - *
INUSE_ATTRIBUTE_ERR: Raised if newAttr is already an - * attribute of another Element object. The DOM user must - * explicitly clone Attr nodes to re-use them in other - * elements. - *
NOT_SUPPORTED_ERR: May be raised if the implementation does not - * support the feature "XML" and the language exposed - * through the Document does not support XML Namespaces (such as [HTML 4.01]). - * @since DOM Level 2 - */ - public Attr setAttributeNodeNS(Attr newAttr) - throws DOMException; - - /** - * Returns a NodeList of all the descendant - * Elements with a given local name and namespace URI in - * document order. - * @param namespaceURI The namespace URI of the elements to match on. The - * special value "*" matches all namespaces. - * @param localName The local name of the elements to match on. The - * special value "*" matches all local names. - * @return A new NodeList object containing all the matched - * Elements. - * @exception DOMException - * NOT_SUPPORTED_ERR: May be raised if the implementation does not - * support the feature "XML" and the language exposed - * through the Document does not support XML Namespaces (such as [HTML 4.01]). - * @since DOM Level 2 - */ - public NodeList getElementsByTagNameNS(String namespaceURI, - String localName) - throws DOMException; - - /** - * Returns true when an attribute with a given name is - * specified on this element or has a default value, false - * otherwise. - * @param name The name of the attribute to look for. - * @return true if an attribute with the given name is - * specified on this element or has a default value, false - * otherwise. - * @since DOM Level 2 - */ - public boolean hasAttribute(String name); - - /** - * Returns true when an attribute with a given local name and - * namespace URI is specified on this element or has a default value, - * false otherwise. - *
Per [XML Namespaces] - * , applications must use the value null as the - * namespaceURI parameter for methods if they wish to have - * no namespace. - * @param namespaceURI The namespace URI of the attribute to look for. - * @param localName The local name of the attribute to look for. - * @return true if an attribute with the given local name - * and namespace URI is specified or has a default value on this - * element, false otherwise. - * @exception DOMException - * NOT_SUPPORTED_ERR: May be raised if the implementation does not - * support the feature "XML" and the language exposed - * through the Document does not support XML Namespaces (such as [HTML 4.01]). - * @since DOM Level 2 - */ - public boolean hasAttributeNS(String namespaceURI, - String localName) - throws DOMException; - - /** - * The type information associated with this element. - * @since DOM Level 3 - */ - public TypeInfo getSchemaTypeInfo(); - - /** - * If the parameter isId is true, this method - * declares the specified attribute to be a user-determined ID attribute - * . This affects the value of Attr.isId and the behavior - * of Document.getElementById, but does not change any - * schema that may be in use, in particular this does not affect the - * Attr.schemaTypeInfo of the specified Attr - * node. Use the value false for the parameter - * isId to undeclare an attribute for being a - * user-determined ID attribute. - *
To specify an attribute by local name and namespace URI, use the - * setIdAttributeNS method. - * @param name The name of the attribute. - * @param isId Whether the attribute is a of type ID. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - *
NOT_FOUND_ERR: Raised if the specified node is not an attribute - * of this element. - * @since DOM Level 3 - */ - public void setIdAttribute(String name, - boolean isId) - throws DOMException; - - /** - * If the parameter isId is true, this method - * declares the specified attribute to be a user-determined ID attribute - * . This affects the value of Attr.isId and the behavior - * of Document.getElementById, but does not change any - * schema that may be in use, in particular this does not affect the - * Attr.schemaTypeInfo of the specified Attr - * node. Use the value false for the parameter - * isId to undeclare an attribute for being a - * user-determined ID attribute. - * @param namespaceURI The namespace URI of the attribute. - * @param localName The local name of the attribute. - * @param isId Whether the attribute is a of type ID. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - *
NOT_FOUND_ERR: Raised if the specified node is not an attribute - * of this element. - * @since DOM Level 3 - */ - public void setIdAttributeNS(String namespaceURI, - String localName, - boolean isId) - throws DOMException; - - /** - * If the parameter isId is true, this method - * declares the specified attribute to be a user-determined ID attribute - * . This affects the value of Attr.isId and the behavior - * of Document.getElementById, but does not change any - * schema that may be in use, in particular this does not affect the - * Attr.schemaTypeInfo of the specified Attr - * node. Use the value false for the parameter - * isId to undeclare an attribute for being a - * user-determined ID attribute. - * @param idAttr The attribute node. - * @param isId Whether the attribute is a of type ID. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - *
NOT_FOUND_ERR: Raised if the specified node is not an attribute - * of this element. - * @since DOM Level 3 - */ - public void setIdAttributeNode(Attr idAttr, - boolean isId) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/Entity.java b/libjava/external/w3c_dom/org/w3c/dom/Entity.java deleted file mode 100644 index f621c3386b1..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/Entity.java +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * This interface represents a known entity, either parsed or unparsed, in an - * XML document. Note that this models the entity itself not the entity declaration. - *

The nodeName attribute that is inherited from - * Node contains the name of the entity. - *

An XML processor may choose to completely expand entities before the - * structure model is passed to the DOM; in this case there will be no - * EntityReference nodes in the document tree. - *

XML does not mandate that a non-validating XML processor read and - * process entity declarations made in the external subset or declared in - * parameter entities. This means that parsed entities declared in the - * external subset need not be expanded by some classes of applications, and - * that the replacement text of the entity may not be available. When the - * replacement text is available, the corresponding Entity node's child list - * represents the structure of that replacement value. Otherwise, the child - * list is empty. - *

DOM Level 3 does not support editing Entity nodes; if a - * user wants to make changes to the contents of an Entity, - * every related EntityReference node has to be replaced in the - * structure model by a clone of the Entity's contents, and - * then the desired changes must be made to each of those clones instead. - * Entity nodes and all their descendants are readonly. - *

An Entity node does not have any parent. - *

Note: If the entity contains an unbound namespace prefix, the - * namespaceURI of the corresponding node in the - * Entity node subtree is null. The same is true - * for EntityReference nodes that refer to this entity, when - * they are created using the createEntityReference method of - * the Document interface. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface Entity extends Node { - /** - * The public identifier associated with the entity if specified, and - * null otherwise. - */ - public String getPublicId(); - - /** - * The system identifier associated with the entity if specified, and - * null otherwise. This may be an absolute URI or not. - */ - public String getSystemId(); - - /** - * For unparsed entities, the name of the notation for the entity. For - * parsed entities, this is null. - */ - public String getNotationName(); - - /** - * An attribute specifying the encoding used for this entity at the time - * of parsing, when it is an external parsed entity. This is - * null if it an entity from the internal subset or if it - * is not known. - * @since DOM Level 3 - */ - public String getInputEncoding(); - - /** - * An attribute specifying, as part of the text declaration, the encoding - * of this entity, when it is an external parsed entity. This is - * null otherwise. - * @since DOM Level 3 - */ - public String getXmlEncoding(); - - /** - * An attribute specifying, as part of the text declaration, the version - * number of this entity, when it is an external parsed entity. This is - * null otherwise. - * @since DOM Level 3 - */ - public String getXmlVersion(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/EntityReference.java b/libjava/external/w3c_dom/org/w3c/dom/EntityReference.java deleted file mode 100644 index b42b0913bc8..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/EntityReference.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * EntityReference nodes may be used to represent an entity - * reference in the tree. Note that character references and references to - * predefined entities are considered to be expanded by the HTML or XML - * processor so that characters are represented by their Unicode equivalent - * rather than by an entity reference. Moreover, the XML processor may - * completely expand references to entities while building the - * Document, instead of providing EntityReference - * nodes. If it does provide such nodes, then for an - * EntityReference node that represents a reference to a known - * entity an Entity exists, and the subtree of the - * EntityReference node is a copy of the Entity - * node subtree. However, the latter may not be true when an entity contains - * an unbound namespace prefix. In such a case, because the namespace prefix - * resolution depends on where the entity reference is, the descendants of - * the EntityReference node may be bound to different namespace - * URIs. When an EntityReference node represents a reference to - * an unknown entity, the node has no children and its replacement value, - * when used by Attr.value for example, is empty. - *

As for Entity nodes, EntityReference nodes and - * all their descendants are readonly. - *

Note: EntityReference nodes may cause element - * content and attribute value normalization problems when, such as in XML - * 1.0 and XML Schema, the normalization is performed after entity reference - * are expanded. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface EntityReference extends Node { -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/NameList.java b/libjava/external/w3c_dom/org/w3c/dom/NameList.java deleted file mode 100644 index 10caa90f6a0..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/NameList.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The NameList interface provides the abstraction of an ordered - * collection of parallel pairs of name and namespace values (which could be - * null values), without defining or constraining how this collection is - * implemented. The items in the NameList are accessible via an - * integral index, starting from 0. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - * @since DOM Level 3 - */ -public interface NameList { - /** - * Returns the indexth name item in the collection. - * @param index Index into the collection. - * @return The name at the indexth position in the - * NameList, or null if there is no name for - * the specified index or if the index is out of range. - */ - public String getName(int index); - - /** - * Returns the indexth namespaceURI item in the collection. - * @param index Index into the collection. - * @return The namespace URI at the indexth position in the - * NameList, or null if there is no name for - * the specified index or if the index is out of range. - */ - public String getNamespaceURI(int index); - - /** - * The number of pairs (name and namespaceURI) in the list. The range of - * valid child node indices is 0 to length-1 inclusive. - */ - public int getLength(); - - /** - * Test if a name is part of this NameList. - * @param str The name to look for. - * @return true if the name has been found, - * false otherwise. - */ - public boolean contains(String str); - - /** - * Test if the pair namespaceURI/name is part of this - * NameList. - * @param namespaceURI The namespace URI to look for. - * @param name The name to look for. - * @return true if the pair namespaceURI/name has been - * found, false otherwise. - */ - public boolean containsNS(String namespaceURI, - String name); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/NamedNodeMap.java b/libjava/external/w3c_dom/org/w3c/dom/NamedNodeMap.java deleted file mode 100644 index ad1e67bcdeb..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/NamedNodeMap.java +++ /dev/null @@ -1,183 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * Objects implementing the NamedNodeMap interface are used to - * represent collections of nodes that can be accessed by name. Note that - * NamedNodeMap does not inherit from NodeList; - * NamedNodeMaps are not maintained in any particular order. - * Objects contained in an object implementing NamedNodeMap may - * also be accessed by an ordinal index, but this is simply to allow - * convenient enumeration of the contents of a NamedNodeMap, - * and does not imply that the DOM specifies an order to these Nodes. - *

NamedNodeMap objects in the DOM are live. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface NamedNodeMap { - /** - * Retrieves a node specified by name. - * @param name The nodeName of a node to retrieve. - * @return A Node (of any type) with the specified - * nodeName, or null if it does not identify - * any node in this map. - */ - public Node getNamedItem(String name); - - /** - * Adds a node using its nodeName attribute. If a node with - * that name is already present in this map, it is replaced by the new - * one. Replacing a node by itself has no effect. - *
As the nodeName attribute is used to derive the name - * which the node must be stored under, multiple nodes of certain types - * (those that have a "special" string value) cannot be stored as the - * names would clash. This is seen as preferable to allowing nodes to be - * aliased. - * @param arg A node to store in this map. The node will later be - * accessible using the value of its nodeName attribute. - * @return If the new Node replaces an existing node the - * replaced Node is returned, otherwise null - * is returned. - * @exception DOMException - * WRONG_DOCUMENT_ERR: Raised if arg was created from a - * different document than the one that created this map. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this map is readonly. - *
INUSE_ATTRIBUTE_ERR: Raised if arg is an - * Attr that is already an attribute of another - * Element object. The DOM user must explicitly clone - * Attr nodes to re-use them in other elements. - *
HIERARCHY_REQUEST_ERR: Raised if an attempt is made to add a node - * doesn't belong in this NamedNodeMap. Examples would include trying - * to insert something other than an Attr node into an Element's map - * of attributes, or a non-Entity node into the DocumentType's map of - * Entities. - */ - public Node setNamedItem(Node arg) - throws DOMException; - - /** - * Removes a node specified by name. When this map contains the attributes - * attached to an element, if the removed attribute is known to have a - * default value, an attribute immediately appears containing the - * default value as well as the corresponding namespace URI, local name, - * and prefix when applicable. - * @param name The nodeName of the node to remove. - * @return The node removed from this map if a node with such a name - * exists. - * @exception DOMException - * NOT_FOUND_ERR: Raised if there is no node named name in - * this map. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this map is readonly. - */ - public Node removeNamedItem(String name) - throws DOMException; - - /** - * Returns the indexth item in the map. If index - * is greater than or equal to the number of nodes in this map, this - * returns null. - * @param index Index into this map. - * @return The node at the indexth position in the map, or - * null if that is not a valid index. - */ - public Node item(int index); - - /** - * The number of nodes in this map. The range of valid child node indices - * is 0 to length-1 inclusive. - */ - public int getLength(); - - /** - * Retrieves a node specified by local name and namespace URI. - *
Per [XML Namespaces] - * , applications must use the value null as the namespaceURI parameter - * for methods if they wish to have no namespace. - * @param namespaceURI The namespace URI of the node to retrieve. - * @param localName The local name of the node to retrieve. - * @return A Node (of any type) with the specified local - * name and namespace URI, or null if they do not - * identify any node in this map. - * @exception DOMException - * NOT_SUPPORTED_ERR: May be raised if the implementation does not - * support the feature "XML" and the language exposed through the - * Document does not support XML Namespaces (such as [HTML 4.01]). - * @since DOM Level 2 - */ - public Node getNamedItemNS(String namespaceURI, - String localName) - throws DOMException; - - /** - * Adds a node using its namespaceURI and - * localName. If a node with that namespace URI and that - * local name is already present in this map, it is replaced by the new - * one. Replacing a node by itself has no effect. - *
Per [XML Namespaces] - * , applications must use the value null as the namespaceURI parameter - * for methods if they wish to have no namespace. - * @param arg A node to store in this map. The node will later be - * accessible using the value of its namespaceURI and - * localName attributes. - * @return If the new Node replaces an existing node the - * replaced Node is returned, otherwise null - * is returned. - * @exception DOMException - * WRONG_DOCUMENT_ERR: Raised if arg was created from a - * different document than the one that created this map. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this map is readonly. - *
INUSE_ATTRIBUTE_ERR: Raised if arg is an - * Attr that is already an attribute of another - * Element object. The DOM user must explicitly clone - * Attr nodes to re-use them in other elements. - *
HIERARCHY_REQUEST_ERR: Raised if an attempt is made to add a node - * doesn't belong in this NamedNodeMap. Examples would include trying - * to insert something other than an Attr node into an Element's map - * of attributes, or a non-Entity node into the DocumentType's map of - * Entities. - *
NOT_SUPPORTED_ERR: May be raised if the implementation does not - * support the feature "XML" and the language exposed through the - * Document does not support XML Namespaces (such as [HTML 4.01]). - * @since DOM Level 2 - */ - public Node setNamedItemNS(Node arg) - throws DOMException; - - /** - * Removes a node specified by local name and namespace URI. A removed - * attribute may be known to have a default value when this map contains - * the attributes attached to an element, as returned by the attributes - * attribute of the Node interface. If so, an attribute - * immediately appears containing the default value as well as the - * corresponding namespace URI, local name, and prefix when applicable. - *
Per [XML Namespaces] - * , applications must use the value null as the namespaceURI parameter - * for methods if they wish to have no namespace. - * @param namespaceURI The namespace URI of the node to remove. - * @param localName The local name of the node to remove. - * @return The node removed from this map if a node with such a local - * name and namespace URI exists. - * @exception DOMException - * NOT_FOUND_ERR: Raised if there is no node with the specified - * namespaceURI and localName in this map. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this map is readonly. - *
NOT_SUPPORTED_ERR: May be raised if the implementation does not - * support the feature "XML" and the language exposed through the - * Document does not support XML Namespaces (such as [HTML 4.01]). - * @since DOM Level 2 - */ - public Node removeNamedItemNS(String namespaceURI, - String localName) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/Node.java b/libjava/external/w3c_dom/org/w3c/dom/Node.java deleted file mode 100644 index 989d49a2ea0..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/Node.java +++ /dev/null @@ -1,900 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The Node interface is the primary datatype for the entire - * Document Object Model. It represents a single node in the document tree. - * While all objects implementing the Node interface expose - * methods for dealing with children, not all objects implementing the - * Node interface may have children. For example, - * Text nodes may not have children, and adding children to - * such nodes results in a DOMException being raised. - *

The attributes nodeName, nodeValue and - * attributes are included as a mechanism to get at node - * information without casting down to the specific derived interface. In - * cases where there is no obvious mapping of these attributes for a - * specific nodeType (e.g., nodeValue for an - * Element or attributes for a Comment - * ), this returns null. Note that the specialized interfaces - * may contain additional and more convenient mechanisms to get and set the - * relevant information. - *

The values of nodeName, - * nodeValue, and attributes vary according to the - * node type as follows: - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - *
InterfacenodeNamenodeValueattributes
- * Attrsame as Attr.namesame as - * Attr.valuenull
CDATASection - * "#cdata-section"same as CharacterData.data, the - * content of the CDATA Sectionnull
Comment - * "#comment"same as CharacterData.data, the - * content of the commentnull
Document - * "#document"nullnull
- * DocumentFragment"#document-fragment" - * nullnull
DocumentTypesame as - * DocumentType.namenullnull
- * Elementsame as Element.tagNamenull - * NamedNodeMap
Entityentity namenull - * null
EntityReferencename of entity referenced - * nullnull
Notationnotation name - * nullnull
ProcessingInstructionsame - * as ProcessingInstruction.targetsame as - * ProcessingInstruction.datanull
Text - * "#text"same as CharacterData.data, the content - * of the text nodenull
- *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface Node { - // NodeType - /** - * The node is an Element. - */ - public static final short ELEMENT_NODE = 1; - /** - * The node is an Attr. - */ - public static final short ATTRIBUTE_NODE = 2; - /** - * The node is a Text node. - */ - public static final short TEXT_NODE = 3; - /** - * The node is a CDATASection. - */ - public static final short CDATA_SECTION_NODE = 4; - /** - * The node is an EntityReference. - */ - public static final short ENTITY_REFERENCE_NODE = 5; - /** - * The node is an Entity. - */ - public static final short ENTITY_NODE = 6; - /** - * The node is a ProcessingInstruction. - */ - public static final short PROCESSING_INSTRUCTION_NODE = 7; - /** - * The node is a Comment. - */ - public static final short COMMENT_NODE = 8; - /** - * The node is a Document. - */ - public static final short DOCUMENT_NODE = 9; - /** - * The node is a DocumentType. - */ - public static final short DOCUMENT_TYPE_NODE = 10; - /** - * The node is a DocumentFragment. - */ - public static final short DOCUMENT_FRAGMENT_NODE = 11; - /** - * The node is a Notation. - */ - public static final short NOTATION_NODE = 12; - - /** - * The name of this node, depending on its type; see the table above. - */ - public String getNodeName(); - - /** - * The value of this node, depending on its type; see the table above. - * When it is defined to be null, setting it has no effect, - * including if the node is read-only. - * @exception DOMException - * DOMSTRING_SIZE_ERR: Raised when it would return more characters than - * fit in a DOMString variable on the implementation - * platform. - */ - public String getNodeValue() - throws DOMException; - /** - * The value of this node, depending on its type; see the table above. - * When it is defined to be null, setting it has no effect, - * including if the node is read-only. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly and if - * it is not defined to be null. - */ - public void setNodeValue(String nodeValue) - throws DOMException; - - /** - * A code representing the type of the underlying object, as defined above. - */ - public short getNodeType(); - - /** - * The parent of this node. All nodes, except Attr, - * Document, DocumentFragment, - * Entity, and Notation may have a parent. - * However, if a node has just been created and not yet added to the - * tree, or if it has been removed from the tree, this is - * null. - */ - public Node getParentNode(); - - /** - * A NodeList that contains all children of this node. If - * there are no children, this is a NodeList containing no - * nodes. - */ - public NodeList getChildNodes(); - - /** - * The first child of this node. If there is no such node, this returns - * null. - */ - public Node getFirstChild(); - - /** - * The last child of this node. If there is no such node, this returns - * null. - */ - public Node getLastChild(); - - /** - * The node immediately preceding this node. If there is no such node, - * this returns null. - */ - public Node getPreviousSibling(); - - /** - * The node immediately following this node. If there is no such node, - * this returns null. - */ - public Node getNextSibling(); - - /** - * A NamedNodeMap containing the attributes of this node (if - * it is an Element) or null otherwise. - */ - public NamedNodeMap getAttributes(); - - /** - * The Document object associated with this node. This is - * also the Document object used to create new nodes. When - * this node is a Document or a DocumentType - * which is not used with any Document yet, this is - * null. - * @version DOM Level 2 - */ - public Document getOwnerDocument(); - - /** - * Inserts the node newChild before the existing child node - * refChild. If refChild is null, - * insert newChild at the end of the list of children. - *
If newChild is a DocumentFragment object, - * all of its children are inserted, in the same order, before - * refChild. If the newChild is already in the - * tree, it is first removed. - *

Note: Inserting a node before itself is implementation - * dependent. - * @param newChild The node to insert. - * @param refChild The reference node, i.e., the node before which the - * new node must be inserted. - * @return The node being inserted. - * @exception DOMException - * HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not - * allow children of the type of the newChild node, or if - * the node to insert is one of this node's ancestors or this node - * itself, or if this node is of type Document and the - * DOM application attempts to insert a second - * DocumentType or Element node. - *
WRONG_DOCUMENT_ERR: Raised if newChild was created - * from a different document than the one that created this node. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly or - * if the parent of the node being inserted is readonly. - *
NOT_FOUND_ERR: Raised if refChild is not a child of - * this node. - *
NOT_SUPPORTED_ERR: if this node is of type Document, - * this exception might be raised if the DOM implementation doesn't - * support the insertion of a DocumentType or - * Element node. - * @version DOM Level 3 - */ - public Node insertBefore(Node newChild, - Node refChild) - throws DOMException; - - /** - * Replaces the child node oldChild with newChild - * in the list of children, and returns the oldChild node. - *
If newChild is a DocumentFragment object, - * oldChild is replaced by all of the - * DocumentFragment children, which are inserted in the - * same order. If the newChild is already in the tree, it - * is first removed. - *

Note: Replacing a node with itself is implementation - * dependent. - * @param newChild The new node to put in the child list. - * @param oldChild The node being replaced in the list. - * @return The node replaced. - * @exception DOMException - * HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not - * allow children of the type of the newChild node, or if - * the node to put in is one of this node's ancestors or this node - * itself, or if this node is of type Document and the - * result of the replacement operation would add a second - * DocumentType or Element on the - * Document node. - *
WRONG_DOCUMENT_ERR: Raised if newChild was created - * from a different document than the one that created this node. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this node or the parent of - * the new node is readonly. - *
NOT_FOUND_ERR: Raised if oldChild is not a child of - * this node. - *
NOT_SUPPORTED_ERR: if this node is of type Document, - * this exception might be raised if the DOM implementation doesn't - * support the replacement of the DocumentType child or - * Element child. - * @version DOM Level 3 - */ - public Node replaceChild(Node newChild, - Node oldChild) - throws DOMException; - - /** - * Removes the child node indicated by oldChild from the list - * of children, and returns it. - * @param oldChild The node being removed. - * @return The node removed. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - *
NOT_FOUND_ERR: Raised if oldChild is not a child of - * this node. - *
NOT_SUPPORTED_ERR: if this node is of type Document, - * this exception might be raised if the DOM implementation doesn't - * support the removal of the DocumentType child or the - * Element child. - * @version DOM Level 3 - */ - public Node removeChild(Node oldChild) - throws DOMException; - - /** - * Adds the node newChild to the end of the list of children - * of this node. If the newChild is already in the tree, it - * is first removed. - * @param newChild The node to add.If it is a - * DocumentFragment object, the entire contents of the - * document fragment are moved into the child list of this node - * @return The node added. - * @exception DOMException - * HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not - * allow children of the type of the newChild node, or if - * the node to append is one of this node's ancestors or this node - * itself, or if this node is of type Document and the - * DOM application attempts to append a second - * DocumentType or Element node. - *
WRONG_DOCUMENT_ERR: Raised if newChild was created - * from a different document than the one that created this node. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly or - * if the previous parent of the node being inserted is readonly. - *
NOT_SUPPORTED_ERR: if the newChild node is a child - * of the Document node, this exception might be raised - * if the DOM implementation doesn't support the removal of the - * DocumentType child or Element child. - * @version DOM Level 3 - */ - public Node appendChild(Node newChild) - throws DOMException; - - /** - * Returns whether this node has any children. - * @return Returns true if this node has any children, - * false otherwise. - */ - public boolean hasChildNodes(); - - /** - * Returns a duplicate of this node, i.e., serves as a generic copy - * constructor for nodes. The duplicate node has no parent ( - * parentNode is null) and no user data. User - * data associated to the imported node is not carried over. However, if - * any UserDataHandlers has been specified along with the - * associated data these handlers will be called with the appropriate - * parameters before this method returns. - *
Cloning an Element copies all attributes and their - * values, including those generated by the XML processor to represent - * defaulted attributes, but this method does not copy any children it - * contains unless it is a deep clone. This includes text contained in - * an the Element since the text is contained in a child - * Text node. Cloning an Attr directly, as - * opposed to be cloned as part of an Element cloning - * operation, returns a specified attribute (specified is - * true). Cloning an Attr always clones its - * children, since they represent its value, no matter whether this is a - * deep clone or not. Cloning an EntityReference - * automatically constructs its subtree if a corresponding - * Entity is available, no matter whether this is a deep - * clone or not. Cloning any other type of node simply returns a copy of - * this node. - *
Note that cloning an immutable subtree results in a mutable copy, - * but the children of an EntityReference clone are readonly - * . In addition, clones of unspecified Attr nodes are - * specified. And, cloning Document, - * DocumentType, Entity, and - * Notation nodes is implementation dependent. - * @param deep If true, recursively clone the subtree under - * the specified node; if false, clone only the node - * itself (and its attributes, if it is an Element). - * @return The duplicate node. - */ - public Node cloneNode(boolean deep); - - /** - * Puts all Text nodes in the full depth of the sub-tree - * underneath this Node, including attribute nodes, into a - * "normal" form where only structure (e.g., elements, comments, - * processing instructions, CDATA sections, and entity references) - * separates Text nodes, i.e., there are neither adjacent - * Text nodes nor empty Text nodes. This can - * be used to ensure that the DOM view of a document is the same as if - * it were saved and re-loaded, and is useful when operations (such as - * XPointer [XPointer] - * lookups) that depend on a particular document tree structure are to - * be used. If the parameter "normalize-characters" of the - * DOMConfiguration object attached to the - * Node.ownerDocument is true, this method - * will also fully normalize the characters of the Text - * nodes. - *

Note: In cases where the document contains - * CDATASections, the normalize operation alone may not be - * sufficient, since XPointers do not differentiate between - * Text nodes and CDATASection nodes. - * @version DOM Level 3 - */ - public void normalize(); - - /** - * Tests whether the DOM implementation implements a specific feature and - * that feature is supported by this node, as specified in . - * @param feature The name of the feature to test. - * @param version This is the version number of the feature to test. - * @return Returns true if the specified feature is - * supported on this node, false otherwise. - * @since DOM Level 2 - */ - public boolean isSupported(String feature, - String version); - - /** - * The namespace URI of this node, or null if it is - * unspecified (see ). - *
This is not a computed value that is the result of a namespace - * lookup based on an examination of the namespace declarations in - * scope. It is merely the namespace URI given at creation time. - *
For nodes of any type other than ELEMENT_NODE and - * ATTRIBUTE_NODE and nodes created with a DOM Level 1 - * method, such as Document.createElement(), this is always - * null. - *

Note: Per the Namespaces in XML Specification [XML Namespaces] - * an attribute does not inherit its namespace from the element it is - * attached to. If an attribute is not explicitly given a namespace, it - * simply has no namespace. - * @since DOM Level 2 - */ - public String getNamespaceURI(); - - /** - * The namespace prefix of this node, or null if it is - * unspecified. When it is defined to be null, setting it - * has no effect, including if the node is read-only. - *
Note that setting this attribute, when permitted, changes the - * nodeName attribute, which holds the qualified name, as - * well as the tagName and name attributes of - * the Element and Attr interfaces, when - * applicable. - *
Setting the prefix to null makes it unspecified, - * setting it to an empty string is implementation dependent. - *
Note also that changing the prefix of an attribute that is known to - * have a default value, does not make a new attribute with the default - * value and the original prefix appear, since the - * namespaceURI and localName do not change. - *
For nodes of any type other than ELEMENT_NODE and - * ATTRIBUTE_NODE and nodes created with a DOM Level 1 - * method, such as createElement from the - * Document interface, this is always null. - * @since DOM Level 2 - */ - public String getPrefix(); - /** - * The namespace prefix of this node, or null if it is - * unspecified. When it is defined to be null, setting it - * has no effect, including if the node is read-only. - *
Note that setting this attribute, when permitted, changes the - * nodeName attribute, which holds the qualified name, as - * well as the tagName and name attributes of - * the Element and Attr interfaces, when - * applicable. - *
Setting the prefix to null makes it unspecified, - * setting it to an empty string is implementation dependent. - *
Note also that changing the prefix of an attribute that is known to - * have a default value, does not make a new attribute with the default - * value and the original prefix appear, since the - * namespaceURI and localName do not change. - *
For nodes of any type other than ELEMENT_NODE and - * ATTRIBUTE_NODE and nodes created with a DOM Level 1 - * method, such as createElement from the - * Document interface, this is always null. - * @exception DOMException - * INVALID_CHARACTER_ERR: Raised if the specified prefix contains an - * illegal character according to the XML version in use specified in - * the Document.xmlVersion attribute. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - *
NAMESPACE_ERR: Raised if the specified prefix is - * malformed per the Namespaces in XML specification, if the - * namespaceURI of this node is null, if the - * specified prefix is "xml" and the namespaceURI of this - * node is different from " - * http://www.w3.org/XML/1998/namespace", if this node is an attribute and the specified prefix is "xmlns" and - * the namespaceURI of this node is different from "http://www.w3.org/2000/xmlns/", or if this node is an attribute and the qualifiedName of - * this node is "xmlns" [XML Namespaces] - * . - * @since DOM Level 2 - */ - public void setPrefix(String prefix) - throws DOMException; - - /** - * Returns the local part of the qualified name of this node. - *
For nodes of any type other than ELEMENT_NODE and - * ATTRIBUTE_NODE and nodes created with a DOM Level 1 - * method, such as Document.createElement(), this is always - * null. - * @since DOM Level 2 - */ - public String getLocalName(); - - /** - * Returns whether this node (if it is an element) has any attributes. - * @return Returns true if this node has any attributes, - * false otherwise. - * @since DOM Level 2 - */ - public boolean hasAttributes(); - - /** - * The absolute base URI of this node or null if the - * implementation wasn't able to obtain an absolute URI. This value is - * computed as described in . However, when the Document - * supports the feature "HTML" [DOM Level 2 HTML] - * , the base URI is computed using first the value of the href - * attribute of the HTML BASE element if any, and the value of the - * documentURI attribute from the Document - * interface otherwise. - * @since DOM Level 3 - */ - public String getBaseURI(); - - // DocumentPosition - /** - * The two nodes are disconnected. Order between disconnected nodes is - * always implementation-specific. - */ - public static final short DOCUMENT_POSITION_DISCONNECTED = 0x01; - /** - * The second node precedes the reference node. - */ - public static final short DOCUMENT_POSITION_PRECEDING = 0x02; - /** - * The node follows the reference node. - */ - public static final short DOCUMENT_POSITION_FOLLOWING = 0x04; - /** - * The node contains the reference node. A node which contains is always - * preceding, too. - */ - public static final short DOCUMENT_POSITION_CONTAINS = 0x08; - /** - * The node is contained by the reference node. A node which is contained - * is always following, too. - */ - public static final short DOCUMENT_POSITION_CONTAINED_BY = 0x10; - /** - * The determination of preceding versus following is - * implementation-specific. - */ - public static final short DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 0x20; - - /** - * Compares the reference node, i.e. the node on which this method is - * being called, with a node, i.e. the one passed as a parameter, with - * regard to their position in the document and according to the - * document order. - * @param other The node to compare against the reference node. - * @return Returns how the node is positioned relatively to the reference - * node. - * @exception DOMException - * NOT_SUPPORTED_ERR: when the compared nodes are from different DOM - * implementations that do not coordinate to return consistent - * implementation-specific results. - * @since DOM Level 3 - */ - public short compareDocumentPosition(Node other) - throws DOMException; - - /** - * This attribute returns the text content of this node and its - * descendants. When it is defined to be null, setting it - * has no effect. On setting, any possible children this node may have - * are removed and, if it the new string is not empty or - * null, replaced by a single Text node - * containing the string this attribute is set to. - *
On getting, no serialization is performed, the returned string - * does not contain any markup. No whitespace normalization is performed - * and the returned string does not contain the white spaces in element - * content (see the attribute - * Text.isElementContentWhitespace). Similarly, on setting, - * no parsing is performed either, the input string is taken as pure - * textual content. - *
The string returned is made of the text content of this node - * depending on its type, as defined below: - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - *
Node typeContent
- * ELEMENT_NODE, ATTRIBUTE_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, - * DOCUMENT_FRAGMENT_NODEconcatenation of the textContent - * attribute value of every child node, excluding COMMENT_NODE and - * PROCESSING_INSTRUCTION_NODE nodes. This is the empty string if the - * node has no children.
TEXT_NODE, CDATA_SECTION_NODE, COMMENT_NODE, - * PROCESSING_INSTRUCTION_NODEnodeValue
DOCUMENT_NODE, - * DOCUMENT_TYPE_NODE, NOTATION_NODEnull
- * @exception DOMException - * DOMSTRING_SIZE_ERR: Raised when it would return more characters than - * fit in a DOMString variable on the implementation - * platform. - * @since DOM Level 3 - */ - public String getTextContent() - throws DOMException; - /** - * This attribute returns the text content of this node and its - * descendants. When it is defined to be null, setting it - * has no effect. On setting, any possible children this node may have - * are removed and, if it the new string is not empty or - * null, replaced by a single Text node - * containing the string this attribute is set to. - *
On getting, no serialization is performed, the returned string - * does not contain any markup. No whitespace normalization is performed - * and the returned string does not contain the white spaces in element - * content (see the attribute - * Text.isElementContentWhitespace). Similarly, on setting, - * no parsing is performed either, the input string is taken as pure - * textual content. - *
The string returned is made of the text content of this node - * depending on its type, as defined below: - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - *
Node typeContent
- * ELEMENT_NODE, ATTRIBUTE_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, - * DOCUMENT_FRAGMENT_NODEconcatenation of the textContent - * attribute value of every child node, excluding COMMENT_NODE and - * PROCESSING_INSTRUCTION_NODE nodes. This is the empty string if the - * node has no children.
TEXT_NODE, CDATA_SECTION_NODE, COMMENT_NODE, - * PROCESSING_INSTRUCTION_NODEnodeValue
DOCUMENT_NODE, - * DOCUMENT_TYPE_NODE, NOTATION_NODEnull
- * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly. - * @since DOM Level 3 - */ - public void setTextContent(String textContent) - throws DOMException; - - /** - * Returns whether this node is the same node as the given one. - *
This method provides a way to determine whether two - * Node references returned by the implementation reference - * the same object. When two Node references are references - * to the same object, even if through a proxy, the references may be - * used completely interchangeably, such that all attributes have the - * same values and calling the same DOM method on either reference - * always has exactly the same effect. - * @param other The node to test against. - * @return Returns true if the nodes are the same, - * false otherwise. - * @since DOM Level 3 - */ - public boolean isSameNode(Node other); - - /** - * Look up the prefix associated to the given namespace URI, starting from - * this node. The default namespace declarations are ignored by this - * method. - *
See for details on the algorithm used by this method. - * @param namespaceURI The namespace URI to look for. - * @return Returns an associated namespace prefix if found or - * null if none is found. If more than one prefix are - * associated to the namespace prefix, the returned namespace prefix - * is implementation dependent. - * @since DOM Level 3 - */ - public String lookupPrefix(String namespaceURI); - - /** - * This method checks if the specified namespaceURI is the - * default namespace or not. - * @param namespaceURI The namespace URI to look for. - * @return Returns true if the specified - * namespaceURI is the default namespace, - * false otherwise. - * @since DOM Level 3 - */ - public boolean isDefaultNamespace(String namespaceURI); - - /** - * Look up the namespace URI associated to the given prefix, starting from - * this node. - *
See for details on the algorithm used by this method. - * @param prefix The prefix to look for. If this parameter is - * null, the method will return the default namespace URI - * if any. - * @return Returns the associated namespace URI or null if - * none is found. - * @since DOM Level 3 - */ - public String lookupNamespaceURI(String prefix); - - /** - * Tests whether two nodes are equal. - *
This method tests for equality of nodes, not sameness (i.e., - * whether the two nodes are references to the same object) which can be - * tested with Node.isSameNode(). All nodes that are the - * same will also be equal, though the reverse may not be true. - *
Two nodes are equal if and only if the following conditions are - * satisfied: - *

    - *
  • The two nodes are of the same type. - *
  • - *
  • The following string - * attributes are equal: nodeName, localName, - * namespaceURI, prefix, nodeValue - * . This is: they are both null, or they have the same - * length and are character for character identical. - *
  • - *
  • The - * attributes NamedNodeMaps are equal. This - * is: they are both null, or they have the same length and - * for each node that exists in one map there is a node that exists in - * the other map and is equal, although not necessarily at the same - * index. - *
  • - *
  • The childNodes NodeLists are equal. - * This is: they are both null, or they have the same - * length and contain equal nodes at the same index. Note that - * normalization can affect equality; to avoid this, nodes should be - * normalized before being compared. - *
  • - *
- *
For two DocumentType nodes to be equal, the following - * conditions must also be satisfied: - *
    - *
  • The following string attributes - * are equal: publicId, systemId, - * internalSubset. - *
  • - *
  • The entities - * NamedNodeMaps are equal. - *
  • - *
  • The notations - * NamedNodeMaps are equal. - *
  • - *
- *
On the other hand, the following do not affect equality: the - * ownerDocument, baseURI, and - * parentNode attributes, the specified - * attribute for Attr nodes, the schemaTypeInfo - * attribute for Attr and Element nodes, the - * Text.isElementContentWhitespace attribute for - * Text nodes, as well as any user data or event listeners - * registered on the nodes. - *

Note: As a general rule, anything not mentioned in the - * description above is not significant in consideration of equality - * checking. Note that future versions of this specification may take - * into account more attributes and implementations conform to this - * specification are expected to be updated accordingly. - * @param arg The node to compare equality with. - * @return Returns true if the nodes are equal, - * false otherwise. - * @since DOM Level 3 - */ - public boolean isEqualNode(Node arg); - - /** - * This method returns a specialized object which implements the - * specialized APIs of the specified feature and version, as specified - * in . The specialized object may also be obtained by using - * binding-specific casting methods but is not necessarily expected to, - * as discussed in . This method also allow the implementation to - * provide specialized objects which do not support the Node - * interface. - * @param feature The name of the feature requested. Note that any plus - * sign "+" prepended to the name of the feature will be ignored since - * it is not significant in the context of this method. - * @param version This is the version number of the feature to test. - * @return Returns an object which implements the specialized APIs of - * the specified feature and version, if any, or null if - * there is no object which implements interfaces associated with that - * feature. If the DOMObject returned by this method - * implements the Node interface, it must delegate to the - * primary core Node and not return results inconsistent - * with the primary core Node such as attributes, - * childNodes, etc. - * @since DOM Level 3 - */ - public Object getFeature(String feature, - String version); - - /** - * Associate an object to a key on this node. The object can later be - * retrieved from this node by calling getUserData with the - * same key. - * @param key The key to associate the object to. - * @param data The object to associate to the given key, or - * null to remove any existing association to that key. - * @param handler The handler to associate to that key, or - * null. - * @return Returns the DOMUserData previously associated to - * the given key on this node, or null if there was none. - * @since DOM Level 3 - */ - public Object setUserData(String key, - Object data, - UserDataHandler handler); - - /** - * Retrieves the object associated to a key on a this node. The object - * must first have been set to this node by calling - * setUserData with the same key. - * @param key The key the object is associated to. - * @return Returns the DOMUserData associated to the given - * key on this node, or null if there was none. - * @since DOM Level 3 - */ - public Object getUserData(String key); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/NodeList.java b/libjava/external/w3c_dom/org/w3c/dom/NodeList.java deleted file mode 100644 index e4204ec974c..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/NodeList.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The NodeList interface provides the abstraction of an ordered - * collection of nodes, without defining or constraining how this collection - * is implemented. NodeList objects in the DOM are live. - *

The items in the NodeList are accessible via an integral - * index, starting from 0. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface NodeList { - /** - * Returns the indexth item in the collection. If - * index is greater than or equal to the number of nodes in - * the list, this returns null. - * @param index Index into the collection. - * @return The node at the indexth position in the - * NodeList, or null if that is not a valid - * index. - */ - public Node item(int index); - - /** - * The number of nodes in the list. The range of valid child node indices - * is 0 to length-1 inclusive. - */ - public int getLength(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/Notation.java b/libjava/external/w3c_dom/org/w3c/dom/Notation.java deleted file mode 100644 index 3739f928443..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/Notation.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * This interface represents a notation declared in the DTD. A notation either - * declares, by name, the format of an unparsed entity (see section 4.7 of the XML 1.0 specification [XML 1.0]), or is - * used for formal declaration of processing instruction targets (see section 2.6 of the XML 1.0 specification [XML 1.0]). The - * nodeName attribute inherited from Node is set - * to the declared name of the notation. - *

The DOM Core does not support editing Notation nodes; they - * are therefore readonly. - *

A Notation node does not have any parent. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface Notation extends Node { - /** - * The public identifier of this notation. If the public identifier was - * not specified, this is null. - */ - public String getPublicId(); - - /** - * The system identifier of this notation. If the system identifier was - * not specified, this is null. This may be an absolute URI - * or not. - */ - public String getSystemId(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ProcessingInstruction.java b/libjava/external/w3c_dom/org/w3c/dom/ProcessingInstruction.java deleted file mode 100644 index 0b6825f104c..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ProcessingInstruction.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The ProcessingInstruction interface represents a "processing - * instruction", used in XML as a way to keep processor-specific information - * in the text of the document. - *

No lexical check is done on the content of a processing instruction and - * it is therefore possible to have the character sequence - * "?>" in the content, which is illegal a processing - * instruction per section 2.6 of [XML 1.0]. The - * presence of this character sequence must generate a fatal error during - * serialization. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface ProcessingInstruction extends Node { - /** - * The target of this processing instruction. XML defines this as being - * the first token following the markup that begins the processing - * instruction. - */ - public String getTarget(); - - /** - * The content of this processing instruction. This is from the first non - * white space character after the target to the character immediately - * preceding the ?>. - */ - public String getData(); - /** - * The content of this processing instruction. This is from the first non - * white space character after the target to the character immediately - * preceding the ?>. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised when the node is readonly. - */ - public void setData(String data) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/Text.java b/libjava/external/w3c_dom/org/w3c/dom/Text.java deleted file mode 100644 index 9c294a4a488..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/Text.java +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The Text interface inherits from CharacterData - * and represents the textual content (termed character data in XML) of an Element or Attr. If there is no - * markup inside an element's content, the text is contained in a single - * object implementing the Text interface that is the only - * child of the element. If there is markup, it is parsed into the - * information items (elements, comments, etc.) and Text nodes - * that form the list of children of the element. - *

When a document is first made available via the DOM, there is only one - * Text node for each block of text. Users may create adjacent - * Text nodes that represent the contents of a given element - * without any intervening markup, but should be aware that there is no way - * to represent the separations between these nodes in XML or HTML, so they - * will not (in general) persist between DOM editing sessions. The - * Node.normalize() method merges any such adjacent - * Text objects into a single node for each block of text. - *

No lexical check is done on the content of a Text node - * and, depending on its position in the document, some characters must be - * escaped during serialization using character references; e.g. the - * characters "<&" if the textual content is part of an element or of - * an attribute, the character sequence "]]>" when part of an element, - * the quotation mark character " or the apostrophe character ' when part of - * an attribute. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - */ -public interface Text extends CharacterData { - /** - * Breaks this node into two nodes at the specified offset, - * keeping both in the tree as siblings. After being split, this node - * will contain all the content up to the offset point. A - * new node of the same type, which contains all the content at and - * after the offset point, is returned. If the original - * node had a parent node, the new node is inserted as the next sibling - * of the original node. When the offset is equal to the - * length of this node, the new node has no data. - * @param offset The 16-bit unit offset at which to split, starting from - * 0. - * @return The new node, of the same type as this node. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified offset is negative or greater - * than the number of 16-bit units in data. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this node is readonly. - */ - public Text splitText(int offset) - throws DOMException; - - /** - * Returns whether this text node contains - * element content whitespace, often abusively called "ignorable whitespace". The text node is - * determined to contain whitespace in element content during the load - * of the document or if validation occurs while using - * Document.normalizeDocument(). - * @since DOM Level 3 - */ - public boolean isElementContentWhitespace(); - - /** - * Returns all text of Text nodes logically-adjacent text - * nodes to this node, concatenated in document order. - *
For instance, in the example below wholeText on the - * Text node that contains "bar" returns "barfoo", while on - * the Text node that contains "foo" it returns "barfoo". - * @since DOM Level 3 - */ - public String getWholeText(); - - /** - * Replaces the text of the current node and all logically-adjacent text - * nodes with the specified text. All logically-adjacent text nodes are - * removed including the current node unless it was the recipient of the - * replacement text. - *
This method returns the node which received the replacement text. - * The returned node is: - *

    - *
  • null, when the replacement text is - * the empty string; - *
  • - *
  • the current node, except when the current node is - * read-only; - *
  • - *
  • a new Text node of the same type ( - * Text or CDATASection) as the current node - * inserted at the location of the replacement. - *
  • - *
- *
For instance, in the above example calling - * replaceWholeText on the Text node that - * contains "bar" with "yo" in argument results in the following: - *
Where the nodes to be removed are read-only descendants of an - * EntityReference, the EntityReference must - * be removed instead of the read-only nodes. If any - * EntityReference to be removed has descendants that are - * not EntityReference, Text, or - * CDATASection nodes, the replaceWholeText - * method must fail before performing any modification of the document, - * raising a DOMException with the code - * NO_MODIFICATION_ALLOWED_ERR. - *
For instance, in the example below calling - * replaceWholeText on the Text node that - * contains "bar" fails, because the EntityReference node - * "ent" contains an Element node which cannot be removed. - * @param content The content of the replacing Text node. - * @return The Text node created with the specified content. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if one of the Text - * nodes being replaced is readonly. - * @since DOM Level 3 - */ - public Text replaceWholeText(String content) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/TypeInfo.java b/libjava/external/w3c_dom/org/w3c/dom/TypeInfo.java deleted file mode 100644 index 054f9907245..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/TypeInfo.java +++ /dev/null @@ -1,185 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * The TypeInfo interface represents a type referenced from - * Element or Attr nodes, specified in the schemas - * associated with the document. The type is a pair of a namespace URI and - * name properties, and depends on the document's schema. - *

If the document's schema is an XML DTD [XML 1.0], the values - * are computed as follows: - *

    - *
  • If this type is referenced from an - * Attr node, typeNamespace is - * "http://www.w3.org/TR/REC-xml" and typeName - * represents the [attribute type] property in the [XML Information Set] - * . If there is no declaration for the attribute, typeNamespace - * and typeName are null. - *
  • - *
  • If this type is - * referenced from an Element node, typeNamespace - * and typeName are null. - *
  • - *
- *

If the document's schema is an XML Schema [XML Schema Part 1] - * , the values are computed as follows using the post-schema-validation - * infoset contributions (also called PSVI contributions): - *

    - *
  • If the [validity] property exists AND is "invalid" or "notKnown": the {target namespace} and {name} properties of the declared type if - * available, otherwise null. - *

    Note: At the time of writing, the XML Schema specification does - * not require exposing the declared type. Thus, DOM implementations might - * choose not to provide type information if validity is not valid. - *

  • - *
  • If the [validity] property exists and is "valid": - *
      - *
    1. If [member type definition] exists: - *
        - *
      1. If {name} is not absent, then expose {name} and {target - * namespace} properties of the [member type definition] property; - *
      2. - *
      3. Otherwise, expose the namespace and local name of the - * corresponding anonymous type name. - *
      4. - *
      - *
    2. - *
    3. If the [type definition] property exists: - *
        - *
      1. If {name} is not absent, then expose {name} and {target - * namespace} properties of the [type definition] property; - *
      2. - *
      3. Otherwise, expose the namespace and local name of the - * corresponding anonymous type name. - *
      4. - *
      - *
    4. - *
    5. If the [member type definition anonymous] exists: - *
        - *
      1. If it is false, then expose [member type definition name] and [member type definition namespace] properties; - *
      2. - *
      3. Otherwise, expose the namespace and local name of the - * corresponding anonymous type name. - *
      4. - *
      - *
    6. - *
    7. If the [type definition anonymous] exists: - *
        - *
      1. If it is false, then expose [type definition name] and [type definition namespace] properties; - *
      2. - *
      3. Otherwise, expose the namespace and local name of the - * corresponding anonymous type name. - *
      4. - *
      - *
    8. - *
    - *
  • - *
- *

Note: Other schema languages are outside the scope of the W3C - * and therefore should define how to represent their type systems using - * TypeInfo. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - * @since DOM Level 3 - */ -public interface TypeInfo { - /** - * The name of a type declared for the associated element or attribute, - * or null if unknown. - */ - public String getTypeName(); - - /** - * The namespace of the type declared for the associated element or - * attribute or null if the element does not have - * declaration or if no namespace information is available. - */ - public String getTypeNamespace(); - - // DerivationMethods - /** - * If the document's schema is an XML Schema [XML Schema Part 1] - * , this constant represents the derivation by - * restriction if complex types are involved, or a - * restriction if simple types are involved. - *
The reference type definition is derived by restriction from the - * other type definition if the other type definition is the same as the - * reference type definition, or if the other type definition can be - * reached recursively following the {base type definition} property - * from the reference type definition, and all the derivation methods involved are restriction. - */ - public static final int DERIVATION_RESTRICTION = 0x00000001; - /** - * If the document's schema is an XML Schema [XML Schema Part 1] - * , this constant represents the derivation by - * extension. - *
The reference type definition is derived by extension from the - * other type definition if the other type definition can be reached - * recursively following the {base type definition} property from the - * reference type definition, and at least one of the derivation methods involved is an extension. - */ - public static final int DERIVATION_EXTENSION = 0x00000002; - /** - * If the document's schema is an XML Schema [XML Schema Part 1] - * , this constant represents the - * union if simple types are involved. - *
The reference type definition is derived by union from the other - * type definition if there exists two type definitions T1 and T2 such - * as the reference type definition is derived from T1 by - * DERIVATION_RESTRICTION or - * DERIVATION_EXTENSION, T2 is derived from the other type - * definition by DERIVATION_RESTRICTION, T1 has {variety} union, and one of the {member type definitions} is T2. Note that T1 could be - * the same as the reference type definition, and T2 could be the same - * as the other type definition. - */ - public static final int DERIVATION_UNION = 0x00000004; - /** - * If the document's schema is an XML Schema [XML Schema Part 1] - * , this constant represents the list. - *
The reference type definition is derived by list from the other - * type definition if there exists two type definitions T1 and T2 such - * as the reference type definition is derived from T1 by - * DERIVATION_RESTRICTION or - * DERIVATION_EXTENSION, T2 is derived from the other type - * definition by DERIVATION_RESTRICTION, T1 has {variety} list, and T2 is the {item type definition}. Note that T1 could be the same as - * the reference type definition, and T2 could be the same as the other - * type definition. - */ - public static final int DERIVATION_LIST = 0x00000008; - - /** - * This method returns if there is a derivation between the reference - * type definition, i.e. the TypeInfo on which the method - * is being called, and the other type definition, i.e. the one passed - * as parameters. - * @param typeNamespaceArg the namespace of the other type definition. - * @param typeNameArg the name of the other type definition. - * @param derivationMethod the type of derivation and conditions applied - * between two types, as described in the list of constants provided - * in this interface. - * @return If the document's schema is a DTD or no schema is associated - * with the document, this method will always return false - * . If the document's schema is an XML Schema, the method will - * true if the reference type definition is derived from - * the other type definition according to the derivation parameter. If - * the value of the parameter is 0 (no bit is set to - * 1 for the derivationMethod parameter), - * the method will return true if the other type - * definition can be reached by recursing any combination of {base - * type definition}, {item type definition}, or {member type - * definitions} from the reference type definition. - */ - public boolean isDerivedFrom(String typeNamespaceArg, - String typeNameArg, - int derivationMethod); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/UserDataHandler.java b/libjava/external/w3c_dom/org/w3c/dom/UserDataHandler.java deleted file mode 100644 index a16ea7308c2..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/UserDataHandler.java +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom; - -/** - * When associating an object to a key on a node using - * Node.setUserData() the application can provide a handler - * that gets called when the node the object is associated to is being - * cloned, imported, or renamed. This can be used by the application to - * implement various behaviors regarding the data it associates to the DOM - * nodes. This interface defines that handler. - *

See also the Document Object Model (DOM) Level 3 Core Specification. - * @since DOM Level 3 - */ -public interface UserDataHandler { - // OperationType - /** - * The node is cloned, using Node.cloneNode(). - */ - public static final short NODE_CLONED = 1; - /** - * The node is imported, using Document.importNode(). - */ - public static final short NODE_IMPORTED = 2; - /** - * The node is deleted. - *

Note: This may not be supported or may not be reliable in - * certain environments, such as Java, where the implementation has no - * real control over when objects are actually deleted. - */ - public static final short NODE_DELETED = 3; - /** - * The node is renamed, using Document.renameNode(). - */ - public static final short NODE_RENAMED = 4; - /** - * The node is adopted, using Document.adoptNode(). - */ - public static final short NODE_ADOPTED = 5; - - /** - * This method is called whenever the node for which this handler is - * registered is imported or cloned. - *
DOM applications must not raise exceptions in a - * UserDataHandler. The effect of throwing exceptions from - * the handler is DOM implementation dependent. - * @param operation Specifies the type of operation that is being - * performed on the node. - * @param key Specifies the key for which this handler is being called. - * @param data Specifies the data for which this handler is being called. - * @param src Specifies the node being cloned, adopted, imported, or - * renamed. This is null when the node is being deleted. - * @param dst Specifies the node newly created if any, or - * null. - */ - public void handle(short operation, - String key, - Object data, - Node src, - Node dst); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/bootstrap/DOMImplementationRegistry.java b/libjava/external/w3c_dom/org/w3c/dom/bootstrap/DOMImplementationRegistry.java deleted file mode 100644 index be73f396bd8..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/bootstrap/DOMImplementationRegistry.java +++ /dev/null @@ -1,387 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - - -package org.w3c.dom.bootstrap; - -import java.util.StringTokenizer; -import java.util.Vector; -import org.w3c.dom.DOMImplementationSource; -import org.w3c.dom.DOMImplementationList; -import org.w3c.dom.DOMImplementation; -import java.io.InputStream; -import java.io.BufferedReader; -import java.io.InputStreamReader; -import java.security.AccessController; -import java.security.PrivilegedAction; - -/** - * A factory that enables applications to obtain instances of - * DOMImplementation. - * - *

- * Example: - *

- * - *
- *  // get an instance of the DOMImplementation registry
- *  DOMImplementationRegistry registry =
- *       DOMImplementationRegistry.newInstance();
- *  // get a DOM implementation the Level 3 XML module
- *  DOMImplementation domImpl =
- *       registry.getDOMImplementation("XML 3.0");
- * 
- * - *

- * This provides an application with an implementation-independent starting - * point. DOM implementations may modify this class to meet new security - * standards or to provide *additional* fallbacks for the list of - * DOMImplementationSources. - *

- * - * @see DOMImplementation - * @see DOMImplementationSource - * @since DOM Level 3 - */ -public final class DOMImplementationRegistry { - /** - * The system property to specify the - * DOMImplementationSource class names. - */ - public static final String PROPERTY = - "org.w3c.dom.DOMImplementationSourceList"; - - /** - * Default columns per line. - */ - private static final int DEFAULT_LINE_LENGTH = 80; - - /** - * The list of DOMImplementationSources. - */ - private Vector sources; - - /** - * Private constructor. - * @param srcs Vector List of DOMImplementationSources - */ - private DOMImplementationRegistry(final Vector srcs) { - sources = srcs; - } - - /** - * Obtain a new instance of a DOMImplementationRegistry. - * - - * The DOMImplementationRegistry is initialized by the - * application or the implementation, depending on the context, by - * first checking the value of the Java system property - * org.w3c.dom.DOMImplementationSourceList and - * the the service provider whose contents are at - * "META_INF/services/org.w3c.dom.DOMImplementationSourceList" - * The value of this property is a white-space separated list of - * names of availables classes implementing the - * DOMImplementationSource interface. Each class listed - * in the class name list is instantiated and any exceptions - * encountered are thrown to the application. - * - * @return an initialized instance of DOMImplementationRegistry - * @throws ClassNotFoundException - * If any specified class can not be found - * @throws InstantiationException - * If any specified class is an interface or abstract class - * @throws IllegalAccessException - * If the default constructor of a specified class is not accessible - * @throws ClassCastException - * If any specified class does not implement - * DOMImplementationSource - */ - public static DOMImplementationRegistry newInstance() - throws - ClassNotFoundException, - InstantiationException, - IllegalAccessException, - ClassCastException { - Vector sources = new Vector(); - - ClassLoader classLoader = getClassLoader(); - // fetch system property: - String p = getSystemProperty(PROPERTY); - - // - // if property is not specified then use contents of - // META_INF/org.w3c.dom.DOMImplementationSourceList from classpath - if (p == null) { - p = getServiceValue(classLoader); - } - if (p == null) { - // - // DOM Implementations can modify here to add *additional* fallback - // mechanisms to access a list of default DOMImplementationSources. - p = "gnu.xml.dom.ImplementationSource"; - } - if (p != null) { - StringTokenizer st = new StringTokenizer(p); - while (st.hasMoreTokens()) { - String sourceName = st.nextToken(); - // Use context class loader, falling back to Class.forName - // if and only if this fails... - Class sourceClass = null; - if (classLoader != null) { - sourceClass = classLoader.loadClass(sourceName); - } else { - sourceClass = Class.forName(sourceName); - } - DOMImplementationSource source = - (DOMImplementationSource) sourceClass.newInstance(); - sources.addElement(source); - } - } - return new DOMImplementationRegistry(sources); - } - - /** - * Return the first implementation that has the desired - * features, or null if none is found. - * - * @param features - * A string that specifies which features are required. This is - * a space separated list in which each feature is specified by - * its name optionally followed by a space and a version number. - * This is something like: "XML 1.0 Traversal +Events 2.0" - * @return An implementation that has the desired features, - * or null if none found. - */ - public DOMImplementation getDOMImplementation(final String features) { - int size = sources.size(); - String name = null; - for (int i = 0; i < size; i++) { - DOMImplementationSource source = - (DOMImplementationSource) sources.elementAt(i); - DOMImplementation impl = source.getDOMImplementation(features); - if (impl != null) { - return impl; - } - } - return null; - } - - /** - * Return a list of implementations that support the - * desired features. - * - * @param features - * A string that specifies which features are required. This is - * a space separated list in which each feature is specified by - * its name optionally followed by a space and a version number. - * This is something like: "XML 1.0 Traversal +Events 2.0" - * @return A list of DOMImplementations that support the desired features. - */ - public DOMImplementationList getDOMImplementationList(final String features) { - final Vector implementations = new Vector(); - int size = sources.size(); - for (int i = 0; i < size; i++) { - DOMImplementationSource source = - (DOMImplementationSource) sources.elementAt(i); - DOMImplementationList impls = - source.getDOMImplementationList(features); - for (int j = 0; j < impls.getLength(); j++) { - DOMImplementation impl = impls.item(j); - implementations.addElement(impl); - } - } - return new DOMImplementationList() { - public DOMImplementation item(final int index) { - if (index >= 0 && index < implementations.size()) { - try { - return (DOMImplementation) - implementations.elementAt(index); - } catch (ArrayIndexOutOfBoundsException e) { - return null; - } - } - return null; - } - - public int getLength() { - return implementations.size(); - } - }; - } - - /** - * Register an implementation. - * - * @param s The source to be registered, may not be null - */ - public void addSource(final DOMImplementationSource s) { - if (s == null) { - throw new NullPointerException(); - } - if (!sources.contains(s)) { - sources.addElement(s); - } - } - - /** - * - * Gets a class loader. - * - * @return A class loader, possibly null - */ - private static ClassLoader getClassLoader() { - try { - ClassLoader contextClassLoader = getContextClassLoader(); - - if (contextClassLoader != null) { - return contextClassLoader; - } - } catch (Exception e) { - // Assume that the DOM application is in a JRE 1.1, use the - // current ClassLoader - return DOMImplementationRegistry.class.getClassLoader(); - } - return DOMImplementationRegistry.class.getClassLoader(); - } - - /** - * This method attempts to return the first line of the resource - * META_INF/services/org.w3c.dom.DOMImplementationSourceList - * from the provided ClassLoader. - * - * @param classLoader classLoader, may not be null. - * @return first line of resource, or null - */ - private static String getServiceValue(final ClassLoader classLoader) { - String serviceId = "META-INF/services/" + PROPERTY; - // try to find services in CLASSPATH - try { - InputStream is = getResourceAsStream(classLoader, serviceId); - - if (is != null) { - BufferedReader rd; - try { - rd = - new BufferedReader(new InputStreamReader(is, "UTF-8"), - DEFAULT_LINE_LENGTH); - } catch (java.io.UnsupportedEncodingException e) { - rd = - new BufferedReader(new InputStreamReader(is), - DEFAULT_LINE_LENGTH); - } - String serviceValue = rd.readLine(); - rd.close(); - if (serviceValue != null && serviceValue.length() > 0) { - return serviceValue; - } - } - } catch (Exception ex) { - return null; - } - return null; - } - - /** - * A simple JRE (Java Runtime Environment) 1.1 test - * - * @return true if JRE 1.1 - */ - private static boolean isJRE11() { - try { - Class c = Class.forName("java.security.AccessController"); - // java.security.AccessController existed since 1.2 so, if no - // exception was thrown, the DOM application is running in a JRE - // 1.2 or higher - return false; - } catch (Exception ex) { - // ignore - } - return true; - } - - /** - * This method returns the ContextClassLoader or null if - * running in a JRE 1.1 - * - * @return The Context Classloader - */ - private static ClassLoader getContextClassLoader() { - return isJRE11() - ? null - : (ClassLoader) - AccessController.doPrivileged(new PrivilegedAction() { - public Object run() { - ClassLoader classLoader = null; - try { - classLoader = - Thread.currentThread().getContextClassLoader(); - } catch (SecurityException ex) { - } - return classLoader; - } - }); - } - - /** - * This method returns the system property indicated by the specified name - * after checking access control privileges. For a JRE 1.1, this check is - * not done. - * - * @param name the name of the system property - * @return the system property - */ - private static String getSystemProperty(final String name) { - return isJRE11() - ? (String) System.getProperty(name) - : (String) AccessController.doPrivileged(new PrivilegedAction() { - public Object run() { - return System.getProperty(name); - } - }); - } - - /** - * This method returns an Inputstream for the reading resource - * META_INF/services/org.w3c.dom.DOMImplementationSourceList after checking - * access control privileges. For a JRE 1.1, this check is not done. - * - * @param classLoader classLoader - * @param name the resource - * @return an Inputstream for the resource specified - */ - private static InputStream getResourceAsStream(final ClassLoader classLoader, - final String name) { - if (isJRE11()) { - InputStream ris; - if (classLoader == null) { - ris = ClassLoader.getSystemResourceAsStream(name); - } else { - ris = classLoader.getResourceAsStream(name); - } - return ris; - } else { - return (InputStream) - AccessController.doPrivileged(new PrivilegedAction() { - public Object run() { - InputStream ris; - if (classLoader == null) { - ris = - ClassLoader.getSystemResourceAsStream(name); - } else { - ris = classLoader.getResourceAsStream(name); - } - return ris; - } - }); - } - } -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSS2Properties.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSS2Properties.java deleted file mode 100644 index 89ccf5048ef..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSS2Properties.java +++ /dev/null @@ -1,1777 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSS2Properties interface represents a convenience - * mechanism for retrieving and setting properties within a - * CSSStyleDeclaration. The attributes of this interface - * correspond to all the properties specified in CSS2. Getting an attribute - * of this interface is equivalent to calling the - * getPropertyValue method of the - * CSSStyleDeclaration interface. Setting an attribute of this - * interface is equivalent to calling the setProperty method of - * the CSSStyleDeclaration interface. - *

A conformant implementation of the CSS module is not required to - * implement the CSS2Properties interface. If an implementation - * does implement this interface, the expectation is that language-specific - * methods can be used to cast from an instance of the - * CSSStyleDeclaration interface to the - * CSS2Properties interface. - *

If an implementation does implement this interface, it is expected to - * understand the specific syntax of the shorthand properties, and apply - * their semantics; when the margin property is set, for - * example, the marginTop, marginRight, - * marginBottom and marginLeft properties are - * actually being set by the underlying implementation. - *

When dealing with CSS "shorthand" properties, the shorthand properties - * should be decomposed into their component longhand properties as - * appropriate, and when querying for their value, the form returned should - * be the shortest form exactly equivalent to the declarations made in the - * ruleset. However, if there is no shorthand declaration that could be - * added to the ruleset without changing in any way the rules already - * declared in the ruleset (i.e., by adding longhand rules that were - * previously not declared in the ruleset), then the empty string should be - * returned for the shorthand property. - *

For example, querying for the font property should not - * return "normal normal normal 14pt/normal Arial, sans-serif", when "14pt - * Arial, sans-serif" suffices. (The normals are initial values, and are - * implied by use of the longhand property.) - *

If the values for all the longhand properties that compose a particular - * string are the initial values, then a string consisting of all the - * initial values should be returned (e.g. a border-width value - * of "medium" should be returned as such, not as ""). - *

For some shorthand properties that take missing values from other - * sides, such as the margin, padding, and - * border-[width|style|color] properties, the minimum number of - * sides possible should be used; i.e., "0px 10px" will be returned instead - * of "0px 10px 0px 10px". - *

If the value of a shorthand property can not be decomposed into its - * component longhand properties, as is the case for the font - * property with a value of "menu", querying for the values of the component - * longhand properties should return the empty string. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSS2Properties { - /** - * See the azimuth property definition in CSS2. - */ - public String getAzimuth(); - /** - * See the azimuth property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setAzimuth(String azimuth) - throws DOMException; - - /** - * See the background property definition in CSS2. - */ - public String getBackground(); - /** - * See the background property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBackground(String background) - throws DOMException; - - /** - * See the background-attachment property definition in CSS2. - */ - public String getBackgroundAttachment(); - /** - * See the background-attachment property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBackgroundAttachment(String backgroundAttachment) - throws DOMException; - - /** - * See the background-color property definition in CSS2. - */ - public String getBackgroundColor(); - /** - * See the background-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBackgroundColor(String backgroundColor) - throws DOMException; - - /** - * See the background-image property definition in CSS2. - */ - public String getBackgroundImage(); - /** - * See the background-image property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBackgroundImage(String backgroundImage) - throws DOMException; - - /** - * See the background-position property definition in CSS2. - */ - public String getBackgroundPosition(); - /** - * See the background-position property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBackgroundPosition(String backgroundPosition) - throws DOMException; - - /** - * See the background-repeat property definition in CSS2. - */ - public String getBackgroundRepeat(); - /** - * See the background-repeat property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBackgroundRepeat(String backgroundRepeat) - throws DOMException; - - /** - * See the border property definition in CSS2. - */ - public String getBorder(); - /** - * See the border property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorder(String border) - throws DOMException; - - /** - * See the border-collapse property definition in CSS2. - */ - public String getBorderCollapse(); - /** - * See the border-collapse property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderCollapse(String borderCollapse) - throws DOMException; - - /** - * See the border-color property definition in CSS2. - */ - public String getBorderColor(); - /** - * See the border-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderColor(String borderColor) - throws DOMException; - - /** - * See the border-spacing property definition in CSS2. - */ - public String getBorderSpacing(); - /** - * See the border-spacing property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderSpacing(String borderSpacing) - throws DOMException; - - /** - * See the border-style property definition in CSS2. - */ - public String getBorderStyle(); - /** - * See the border-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderStyle(String borderStyle) - throws DOMException; - - /** - * See the border-top property definition in CSS2. - */ - public String getBorderTop(); - /** - * See the border-top property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderTop(String borderTop) - throws DOMException; - - /** - * See the border-right property definition in CSS2. - */ - public String getBorderRight(); - /** - * See the border-right property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderRight(String borderRight) - throws DOMException; - - /** - * See the border-bottom property definition in CSS2. - */ - public String getBorderBottom(); - /** - * See the border-bottom property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderBottom(String borderBottom) - throws DOMException; - - /** - * See the border-left property definition in CSS2. - */ - public String getBorderLeft(); - /** - * See the border-left property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderLeft(String borderLeft) - throws DOMException; - - /** - * See the border-top-color property definition in CSS2. - */ - public String getBorderTopColor(); - /** - * See the border-top-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderTopColor(String borderTopColor) - throws DOMException; - - /** - * See the border-right-color property definition in CSS2. - */ - public String getBorderRightColor(); - /** - * See the border-right-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderRightColor(String borderRightColor) - throws DOMException; - - /** - * See the border-bottom-color property definition in CSS2. - */ - public String getBorderBottomColor(); - /** - * See the border-bottom-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderBottomColor(String borderBottomColor) - throws DOMException; - - /** - * See the border-left-color property definition in CSS2. - */ - public String getBorderLeftColor(); - /** - * See the border-left-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderLeftColor(String borderLeftColor) - throws DOMException; - - /** - * See the border-top-style property definition in CSS2. - */ - public String getBorderTopStyle(); - /** - * See the border-top-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderTopStyle(String borderTopStyle) - throws DOMException; - - /** - * See the border-right-style property definition in CSS2. - */ - public String getBorderRightStyle(); - /** - * See the border-right-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderRightStyle(String borderRightStyle) - throws DOMException; - - /** - * See the border-bottom-style property definition in CSS2. - */ - public String getBorderBottomStyle(); - /** - * See the border-bottom-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderBottomStyle(String borderBottomStyle) - throws DOMException; - - /** - * See the border-left-style property definition in CSS2. - */ - public String getBorderLeftStyle(); - /** - * See the border-left-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderLeftStyle(String borderLeftStyle) - throws DOMException; - - /** - * See the border-top-width property definition in CSS2. - */ - public String getBorderTopWidth(); - /** - * See the border-top-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderTopWidth(String borderTopWidth) - throws DOMException; - - /** - * See the border-right-width property definition in CSS2. - */ - public String getBorderRightWidth(); - /** - * See the border-right-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderRightWidth(String borderRightWidth) - throws DOMException; - - /** - * See the border-bottom-width property definition in CSS2. - */ - public String getBorderBottomWidth(); - /** - * See the border-bottom-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderBottomWidth(String borderBottomWidth) - throws DOMException; - - /** - * See the border-left-width property definition in CSS2. - */ - public String getBorderLeftWidth(); - /** - * See the border-left-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderLeftWidth(String borderLeftWidth) - throws DOMException; - - /** - * See the border-width property definition in CSS2. - */ - public String getBorderWidth(); - /** - * See the border-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBorderWidth(String borderWidth) - throws DOMException; - - /** - * See the bottom property definition in CSS2. - */ - public String getBottom(); - /** - * See the bottom property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setBottom(String bottom) - throws DOMException; - - /** - * See the caption-side property definition in CSS2. - */ - public String getCaptionSide(); - /** - * See the caption-side property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setCaptionSide(String captionSide) - throws DOMException; - - /** - * See the clear property definition in CSS2. - */ - public String getClear(); - /** - * See the clear property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setClear(String clear) - throws DOMException; - - /** - * See the clip property definition in CSS2. - */ - public String getClip(); - /** - * See the clip property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setClip(String clip) - throws DOMException; - - /** - * See the color property definition in CSS2. - */ - public String getColor(); - /** - * See the color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setColor(String color) - throws DOMException; - - /** - * See the content property definition in CSS2. - */ - public String getContent(); - /** - * See the content property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setContent(String content) - throws DOMException; - - /** - * See the counter-increment property definition in CSS2. - */ - public String getCounterIncrement(); - /** - * See the counter-increment property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setCounterIncrement(String counterIncrement) - throws DOMException; - - /** - * See the counter-reset property definition in CSS2. - */ - public String getCounterReset(); - /** - * See the counter-reset property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setCounterReset(String counterReset) - throws DOMException; - - /** - * See the cue property definition in CSS2. - */ - public String getCue(); - /** - * See the cue property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setCue(String cue) - throws DOMException; - - /** - * See the cue-after property definition in CSS2. - */ - public String getCueAfter(); - /** - * See the cue-after property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setCueAfter(String cueAfter) - throws DOMException; - - /** - * See the cue-before property definition in CSS2. - */ - public String getCueBefore(); - /** - * See the cue-before property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setCueBefore(String cueBefore) - throws DOMException; - - /** - * See the cursor property definition in CSS2. - */ - public String getCursor(); - /** - * See the cursor property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setCursor(String cursor) - throws DOMException; - - /** - * See the direction property definition in CSS2. - */ - public String getDirection(); - /** - * See the direction property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setDirection(String direction) - throws DOMException; - - /** - * See the display property definition in CSS2. - */ - public String getDisplay(); - /** - * See the display property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setDisplay(String display) - throws DOMException; - - /** - * See the elevation property definition in CSS2. - */ - public String getElevation(); - /** - * See the elevation property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setElevation(String elevation) - throws DOMException; - - /** - * See the empty-cells property definition in CSS2. - */ - public String getEmptyCells(); - /** - * See the empty-cells property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setEmptyCells(String emptyCells) - throws DOMException; - - /** - * See the float property definition in CSS2. - */ - public String getCssFloat(); - /** - * See the float property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setCssFloat(String cssFloat) - throws DOMException; - - /** - * See the font property definition in CSS2. - */ - public String getFont(); - /** - * See the font property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setFont(String font) - throws DOMException; - - /** - * See the font-family property definition in CSS2. - */ - public String getFontFamily(); - /** - * See the font-family property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setFontFamily(String fontFamily) - throws DOMException; - - /** - * See the font-size property definition in CSS2. - */ - public String getFontSize(); - /** - * See the font-size property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setFontSize(String fontSize) - throws DOMException; - - /** - * See the font-size-adjust property definition in CSS2. - */ - public String getFontSizeAdjust(); - /** - * See the font-size-adjust property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setFontSizeAdjust(String fontSizeAdjust) - throws DOMException; - - /** - * See the font-stretch property definition in CSS2. - */ - public String getFontStretch(); - /** - * See the font-stretch property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setFontStretch(String fontStretch) - throws DOMException; - - /** - * See the font-style property definition in CSS2. - */ - public String getFontStyle(); - /** - * See the font-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setFontStyle(String fontStyle) - throws DOMException; - - /** - * See the font-variant property definition in CSS2. - */ - public String getFontVariant(); - /** - * See the font-variant property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setFontVariant(String fontVariant) - throws DOMException; - - /** - * See the font-weight property definition in CSS2. - */ - public String getFontWeight(); - /** - * See the font-weight property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setFontWeight(String fontWeight) - throws DOMException; - - /** - * See the height property definition in CSS2. - */ - public String getHeight(); - /** - * See the height property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setHeight(String height) - throws DOMException; - - /** - * See the left property definition in CSS2. - */ - public String getLeft(); - /** - * See the left property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setLeft(String left) - throws DOMException; - - /** - * See the letter-spacing property definition in CSS2. - */ - public String getLetterSpacing(); - /** - * See the letter-spacing property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setLetterSpacing(String letterSpacing) - throws DOMException; - - /** - * See the line-height property definition in CSS2. - */ - public String getLineHeight(); - /** - * See the line-height property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setLineHeight(String lineHeight) - throws DOMException; - - /** - * See the list-style property definition in CSS2. - */ - public String getListStyle(); - /** - * See the list-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setListStyle(String listStyle) - throws DOMException; - - /** - * See the list-style-image property definition in CSS2. - */ - public String getListStyleImage(); - /** - * See the list-style-image property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setListStyleImage(String listStyleImage) - throws DOMException; - - /** - * See the list-style-position property definition in CSS2. - */ - public String getListStylePosition(); - /** - * See the list-style-position property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setListStylePosition(String listStylePosition) - throws DOMException; - - /** - * See the list-style-type property definition in CSS2. - */ - public String getListStyleType(); - /** - * See the list-style-type property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setListStyleType(String listStyleType) - throws DOMException; - - /** - * See the margin property definition in CSS2. - */ - public String getMargin(); - /** - * See the margin property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setMargin(String margin) - throws DOMException; - - /** - * See the margin-top property definition in CSS2. - */ - public String getMarginTop(); - /** - * See the margin-top property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setMarginTop(String marginTop) - throws DOMException; - - /** - * See the margin-right property definition in CSS2. - */ - public String getMarginRight(); - /** - * See the margin-right property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setMarginRight(String marginRight) - throws DOMException; - - /** - * See the margin-bottom property definition in CSS2. - */ - public String getMarginBottom(); - /** - * See the margin-bottom property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setMarginBottom(String marginBottom) - throws DOMException; - - /** - * See the margin-left property definition in CSS2. - */ - public String getMarginLeft(); - /** - * See the margin-left property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setMarginLeft(String marginLeft) - throws DOMException; - - /** - * See the marker-offset property definition in CSS2. - */ - public String getMarkerOffset(); - /** - * See the marker-offset property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setMarkerOffset(String markerOffset) - throws DOMException; - - /** - * See the marks property definition in CSS2. - */ - public String getMarks(); - /** - * See the marks property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setMarks(String marks) - throws DOMException; - - /** - * See the max-height property definition in CSS2. - */ - public String getMaxHeight(); - /** - * See the max-height property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setMaxHeight(String maxHeight) - throws DOMException; - - /** - * See the max-width property definition in CSS2. - */ - public String getMaxWidth(); - /** - * See the max-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setMaxWidth(String maxWidth) - throws DOMException; - - /** - * See the min-height property definition in CSS2. - */ - public String getMinHeight(); - /** - * See the min-height property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setMinHeight(String minHeight) - throws DOMException; - - /** - * See the min-width property definition in CSS2. - */ - public String getMinWidth(); - /** - * See the min-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setMinWidth(String minWidth) - throws DOMException; - - /** - * See the orphans property definition in CSS2. - */ - public String getOrphans(); - /** - * See the orphans property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setOrphans(String orphans) - throws DOMException; - - /** - * See the outline property definition in CSS2. - */ - public String getOutline(); - /** - * See the outline property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setOutline(String outline) - throws DOMException; - - /** - * See the outline-color property definition in CSS2. - */ - public String getOutlineColor(); - /** - * See the outline-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setOutlineColor(String outlineColor) - throws DOMException; - - /** - * See the outline-style property definition in CSS2. - */ - public String getOutlineStyle(); - /** - * See the outline-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setOutlineStyle(String outlineStyle) - throws DOMException; - - /** - * See the outline-width property definition in CSS2. - */ - public String getOutlineWidth(); - /** - * See the outline-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setOutlineWidth(String outlineWidth) - throws DOMException; - - /** - * See the overflow property definition in CSS2. - */ - public String getOverflow(); - /** - * See the overflow property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setOverflow(String overflow) - throws DOMException; - - /** - * See the padding property definition in CSS2. - */ - public String getPadding(); - /** - * See the padding property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPadding(String padding) - throws DOMException; - - /** - * See the padding-top property definition in CSS2. - */ - public String getPaddingTop(); - /** - * See the padding-top property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPaddingTop(String paddingTop) - throws DOMException; - - /** - * See the padding-right property definition in CSS2. - */ - public String getPaddingRight(); - /** - * See the padding-right property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPaddingRight(String paddingRight) - throws DOMException; - - /** - * See the padding-bottom property definition in CSS2. - */ - public String getPaddingBottom(); - /** - * See the padding-bottom property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPaddingBottom(String paddingBottom) - throws DOMException; - - /** - * See the padding-left property definition in CSS2. - */ - public String getPaddingLeft(); - /** - * See the padding-left property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPaddingLeft(String paddingLeft) - throws DOMException; - - /** - * See the page property definition in CSS2. - */ - public String getPage(); - /** - * See the page property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPage(String page) - throws DOMException; - - /** - * See the page-break-after property definition in CSS2. - */ - public String getPageBreakAfter(); - /** - * See the page-break-after property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPageBreakAfter(String pageBreakAfter) - throws DOMException; - - /** - * See the page-break-before property definition in CSS2. - */ - public String getPageBreakBefore(); - /** - * See the page-break-before property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPageBreakBefore(String pageBreakBefore) - throws DOMException; - - /** - * See the page-break-inside property definition in CSS2. - */ - public String getPageBreakInside(); - /** - * See the page-break-inside property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPageBreakInside(String pageBreakInside) - throws DOMException; - - /** - * See the pause property definition in CSS2. - */ - public String getPause(); - /** - * See the pause property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPause(String pause) - throws DOMException; - - /** - * See the pause-after property definition in CSS2. - */ - public String getPauseAfter(); - /** - * See the pause-after property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPauseAfter(String pauseAfter) - throws DOMException; - - /** - * See the pause-before property definition in CSS2. - */ - public String getPauseBefore(); - /** - * See the pause-before property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPauseBefore(String pauseBefore) - throws DOMException; - - /** - * See the pitch property definition in CSS2. - */ - public String getPitch(); - /** - * See the pitch property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPitch(String pitch) - throws DOMException; - - /** - * See the pitch-range property definition in CSS2. - */ - public String getPitchRange(); - /** - * See the pitch-range property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPitchRange(String pitchRange) - throws DOMException; - - /** - * See the play-during property definition in CSS2. - */ - public String getPlayDuring(); - /** - * See the play-during property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPlayDuring(String playDuring) - throws DOMException; - - /** - * See the position property definition in CSS2. - */ - public String getPosition(); - /** - * See the position property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setPosition(String position) - throws DOMException; - - /** - * See the quotes property definition in CSS2. - */ - public String getQuotes(); - /** - * See the quotes property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setQuotes(String quotes) - throws DOMException; - - /** - * See the richness property definition in CSS2. - */ - public String getRichness(); - /** - * See the richness property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setRichness(String richness) - throws DOMException; - - /** - * See the right property definition in CSS2. - */ - public String getRight(); - /** - * See the right property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setRight(String right) - throws DOMException; - - /** - * See the size property definition in CSS2. - */ - public String getSize(); - /** - * See the size property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setSize(String size) - throws DOMException; - - /** - * See the speak property definition in CSS2. - */ - public String getSpeak(); - /** - * See the speak property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setSpeak(String speak) - throws DOMException; - - /** - * See the speak-header property definition in CSS2. - */ - public String getSpeakHeader(); - /** - * See the speak-header property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setSpeakHeader(String speakHeader) - throws DOMException; - - /** - * See the speak-numeral property definition in CSS2. - */ - public String getSpeakNumeral(); - /** - * See the speak-numeral property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setSpeakNumeral(String speakNumeral) - throws DOMException; - - /** - * See the speak-punctuation property definition in CSS2. - */ - public String getSpeakPunctuation(); - /** - * See the speak-punctuation property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setSpeakPunctuation(String speakPunctuation) - throws DOMException; - - /** - * See the speech-rate property definition in CSS2. - */ - public String getSpeechRate(); - /** - * See the speech-rate property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setSpeechRate(String speechRate) - throws DOMException; - - /** - * See the stress property definition in CSS2. - */ - public String getStress(); - /** - * See the stress property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setStress(String stress) - throws DOMException; - - /** - * See the table-layout property definition in CSS2. - */ - public String getTableLayout(); - /** - * See the table-layout property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setTableLayout(String tableLayout) - throws DOMException; - - /** - * See the text-align property definition in CSS2. - */ - public String getTextAlign(); - /** - * See the text-align property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setTextAlign(String textAlign) - throws DOMException; - - /** - * See the text-decoration property definition in CSS2. - */ - public String getTextDecoration(); - /** - * See the text-decoration property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setTextDecoration(String textDecoration) - throws DOMException; - - /** - * See the text-indent property definition in CSS2. - */ - public String getTextIndent(); - /** - * See the text-indent property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setTextIndent(String textIndent) - throws DOMException; - - /** - * See the text-shadow property definition in CSS2. - */ - public String getTextShadow(); - /** - * See the text-shadow property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setTextShadow(String textShadow) - throws DOMException; - - /** - * See the text-transform property definition in CSS2. - */ - public String getTextTransform(); - /** - * See the text-transform property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setTextTransform(String textTransform) - throws DOMException; - - /** - * See the top property definition in CSS2. - */ - public String getTop(); - /** - * See the top property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setTop(String top) - throws DOMException; - - /** - * See the unicode-bidi property definition in CSS2. - */ - public String getUnicodeBidi(); - /** - * See the unicode-bidi property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setUnicodeBidi(String unicodeBidi) - throws DOMException; - - /** - * See the vertical-align property definition in CSS2. - */ - public String getVerticalAlign(); - /** - * See the vertical-align property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setVerticalAlign(String verticalAlign) - throws DOMException; - - /** - * See the visibility property definition in CSS2. - */ - public String getVisibility(); - /** - * See the visibility property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setVisibility(String visibility) - throws DOMException; - - /** - * See the voice-family property definition in CSS2. - */ - public String getVoiceFamily(); - /** - * See the voice-family property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setVoiceFamily(String voiceFamily) - throws DOMException; - - /** - * See the volume property definition in CSS2. - */ - public String getVolume(); - /** - * See the volume property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setVolume(String volume) - throws DOMException; - - /** - * See the white-space property definition in CSS2. - */ - public String getWhiteSpace(); - /** - * See the white-space property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setWhiteSpace(String whiteSpace) - throws DOMException; - - /** - * See the widows property definition in CSS2. - */ - public String getWidows(); - /** - * See the widows property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setWidows(String widows) - throws DOMException; - - /** - * See the width property definition in CSS2. - */ - public String getWidth(); - /** - * See the width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setWidth(String width) - throws DOMException; - - /** - * See the word-spacing property definition in CSS2. - */ - public String getWordSpacing(); - /** - * See the word-spacing property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setWordSpacing(String wordSpacing) - throws DOMException; - - /** - * See the z-index property definition in CSS2. - */ - public String getZIndex(); - /** - * See the z-index property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setZIndex(String zIndex) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSCharsetRule.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSCharsetRule.java deleted file mode 100644 index 8c0defa4753..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSCharsetRule.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSCharsetRule interface represents a @charset rule in a - * CSS style sheet. The value of the encoding attribute does - * not affect the encoding of text data in the DOM objects; this encoding is - * always UTF-16. After a stylesheet is loaded, the value of the - * encoding attribute is the value found in the - * @charset rule. If there was no @charset in the - * original document, then no CSSCharsetRule is created. The - * value of the encoding attribute may also be used as a hint - * for the encoding used on serialization of the style sheet. - *

The value of the @charset rule (and therefore of the - * CSSCharsetRule) may not correspond to the encoding the - * document actually came in; character encoding information e.g. in an HTTP - * header, has priority (see CSS document representation) but this is not - * reflected in the CSSCharsetRule. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSCharsetRule extends CSSRule { - /** - * The encoding information used in this @charset rule. - */ - public String getEncoding(); - /** - * The encoding information used in this @charset rule. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified encoding value has a syntax error - * and is unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this encoding rule is - * readonly. - */ - public void setEncoding(String encoding) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSFontFaceRule.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSFontFaceRule.java deleted file mode 100644 index a1795706118..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSFontFaceRule.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The CSSFontFaceRule interface represents a @font-face rule in - * a CSS style sheet. The @font-face rule is used to hold a set - * of font descriptions. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSFontFaceRule extends CSSRule { - /** - * The declaration-block of this rule. - */ - public CSSStyleDeclaration getStyle(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSImportRule.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSImportRule.java deleted file mode 100644 index e18ad569bcb..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSImportRule.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.stylesheets.MediaList; - -/** - * The CSSImportRule interface represents a @import rule within - * a CSS style sheet. The @import rule is used to import style - * rules from other style sheets. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSImportRule extends CSSRule { - /** - * The location of the style sheet to be imported. The attribute will not - * contain the "url(...)" specifier around the URI. - */ - public String getHref(); - - /** - * A list of media types for which this style sheet may be used. - */ - public MediaList getMedia(); - - /** - * The style sheet referred to by this rule, if it has been loaded. The - * value of this attribute is null if the style sheet has - * not yet been loaded or if it will not be loaded (e.g. if the style - * sheet is for a media type not supported by the user agent). - */ - public CSSStyleSheet getStyleSheet(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSMediaRule.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSMediaRule.java deleted file mode 100644 index 68a73045ede..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSMediaRule.java +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; -import org.w3c.dom.stylesheets.MediaList; - -/** - * The CSSMediaRule interface represents a @media rule in a CSS - * style sheet. A @media rule can be used to delimit style - * rules for specific media types. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSMediaRule extends CSSRule { - /** - * A list of media types for this rule. - */ - public MediaList getMedia(); - - /** - * A list of all CSS rules contained within the media block. - */ - public CSSRuleList getCssRules(); - - /** - * Used to insert a new rule into the media block. - * @param rule The parsable text representing the rule. For rule sets - * this contains both the selector and the style declaration. For - * at-rules, this specifies both the at-identifier and the rule - * content. - * @param index The index within the media block's rule collection of - * the rule before which to insert the specified rule. If the - * specified index is equal to the length of the media blocks's rule - * collection, the rule will be added to the end of the media block. - * @return The index within the media block's rule collection of the - * newly inserted rule. - * @exception DOMException - * HIERARCHY_REQUEST_ERR: Raised if the rule cannot be inserted at the - * specified index, e.g., if an @import rule is inserted - * after a standard rule set or other at-rule. - *
INDEX_SIZE_ERR: Raised if the specified index is not a valid - * insertion point. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this media rule is - * readonly. - *
SYNTAX_ERR: Raised if the specified rule has a syntax error and - * is unparsable. - */ - public int insertRule(String rule, - int index) - throws DOMException; - - /** - * Used to delete a rule from the media block. - * @param index The index within the media block's rule collection of - * the rule to remove. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified index does not correspond to - * a rule in the media rule list. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this media rule is - * readonly. - */ - public void deleteRule(int index) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSPageRule.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSPageRule.java deleted file mode 100644 index 538626a97e9..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSPageRule.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSPageRule interface represents a @page rule within a - * CSS style sheet. The @page rule is used to specify the - * dimensions, orientation, margins, etc. of a page box for paged media. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSPageRule extends CSSRule { - /** - * The parsable textual representation of the page selector for the rule. - */ - public String getSelectorText(); - /** - * The parsable textual representation of the page selector for the rule. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified CSS string value has a syntax - * error and is unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this rule is readonly. - */ - public void setSelectorText(String selectorText) - throws DOMException; - - /** - * The declaration-block of this rule. - */ - public CSSStyleDeclaration getStyle(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSPrimitiveValue.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSPrimitiveValue.java deleted file mode 100644 index 4131d26cda3..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSPrimitiveValue.java +++ /dev/null @@ -1,296 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSPrimitiveValue interface represents a single CSS value - * . This interface may be used to determine the value of a specific style - * property currently set in a block or to set a specific style property - * explicitly within the block. An instance of this interface might be - * obtained from the getPropertyCSSValue method of the - * CSSStyleDeclaration interface. A - * CSSPrimitiveValue object only occurs in a context of a CSS - * property. - *

Conversions are allowed between absolute values (from millimeters to - * centimeters, from degrees to radians, and so on) but not between relative - * values. (For example, a pixel value cannot be converted to a centimeter - * value.) Percentage values can't be converted since they are relative to - * the parent value (or another property value). There is one exception for - * color percentage values: since a color percentage value is relative to - * the range 0-255, a color percentage value can be converted to a number; - * (see also the RGBColor interface). - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSPrimitiveValue extends CSSValue { - // UnitTypes - /** - * The value is not a recognized CSS2 value. The value can only be - * obtained by using the cssText attribute. - */ - public static final short CSS_UNKNOWN = 0; - /** - * The value is a simple number. The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_NUMBER = 1; - /** - * The value is a percentage. The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_PERCENTAGE = 2; - /** - * The value is a length (ems). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_EMS = 3; - /** - * The value is a length (exs). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_EXS = 4; - /** - * The value is a length (px). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_PX = 5; - /** - * The value is a length (cm). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_CM = 6; - /** - * The value is a length (mm). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_MM = 7; - /** - * The value is a length (in). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_IN = 8; - /** - * The value is a length (pt). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_PT = 9; - /** - * The value is a length (pc). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_PC = 10; - /** - * The value is an angle (deg). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_DEG = 11; - /** - * The value is an angle (rad). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_RAD = 12; - /** - * The value is an angle (grad). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_GRAD = 13; - /** - * The value is a time (ms). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_MS = 14; - /** - * The value is a time (s). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_S = 15; - /** - * The value is a frequency (Hz). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_HZ = 16; - /** - * The value is a frequency (kHz). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_KHZ = 17; - /** - * The value is a number with an unknown dimension. The value can be - * obtained by using the getFloatValue method. - */ - public static final short CSS_DIMENSION = 18; - /** - * The value is a STRING. The value can be obtained by using the - * getStringValue method. - */ - public static final short CSS_STRING = 19; - /** - * The value is a URI. The value can be obtained by using the - * getStringValue method. - */ - public static final short CSS_URI = 20; - /** - * The value is an identifier. The value can be obtained by using the - * getStringValue method. - */ - public static final short CSS_IDENT = 21; - /** - * The value is a attribute function. The value can be obtained by using - * the getStringValue method. - */ - public static final short CSS_ATTR = 22; - /** - * The value is a counter or counters function. The value can be obtained - * by using the getCounterValue method. - */ - public static final short CSS_COUNTER = 23; - /** - * The value is a rect function. The value can be obtained by using the - * getRectValue method. - */ - public static final short CSS_RECT = 24; - /** - * The value is a RGB color. The value can be obtained by using the - * getRGBColorValue method. - */ - public static final short CSS_RGBCOLOR = 25; - - /** - * The type of the value as defined by the constants specified above. - */ - public short getPrimitiveType(); - - /** - * A method to set the float value with a specified unit. If the property - * attached with this value can not accept the specified unit or the - * float value, the value will be unchanged and a - * DOMException will be raised. - * @param unitType A unit code as defined above. The unit code can only - * be a float unit type (i.e. CSS_NUMBER, - * CSS_PERCENTAGE, CSS_EMS, - * CSS_EXS, CSS_PX, CSS_CM, - * CSS_MM, CSS_IN, CSS_PT, - * CSS_PC, CSS_DEG, CSS_RAD, - * CSS_GRAD, CSS_MS, CSS_S, - * CSS_HZ, CSS_KHZ, - * CSS_DIMENSION). - * @param floatValue The new float value. - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the attached property doesn't support - * the float value or the unit type. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setFloatValue(short unitType, - float floatValue) - throws DOMException; - - /** - * This method is used to get a float value in a specified unit. If this - * CSS value doesn't contain a float value or can't be converted into - * the specified unit, a DOMException is raised. - * @param unitType A unit code to get the float value. The unit code can - * only be a float unit type (i.e. CSS_NUMBER, - * CSS_PERCENTAGE, CSS_EMS, - * CSS_EXS, CSS_PX, CSS_CM, - * CSS_MM, CSS_IN, CSS_PT, - * CSS_PC, CSS_DEG, CSS_RAD, - * CSS_GRAD, CSS_MS, CSS_S, - * CSS_HZ, CSS_KHZ, - * CSS_DIMENSION). - * @return The float value in the specified unit. - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a float - * value or if the float value can't be converted into the specified - * unit. - */ - public float getFloatValue(short unitType) - throws DOMException; - - /** - * A method to set the string value with the specified unit. If the - * property attached to this value can't accept the specified unit or - * the string value, the value will be unchanged and a - * DOMException will be raised. - * @param stringType A string code as defined above. The string code can - * only be a string unit type (i.e. CSS_STRING, - * CSS_URI, CSS_IDENT, and - * CSS_ATTR). - * @param stringValue The new string value. - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a string - * value or if the string value can't be converted into the specified - * unit. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setStringValue(short stringType, - String stringValue) - throws DOMException; - - /** - * This method is used to get the string value. If the CSS value doesn't - * contain a string value, a DOMException is raised. Some - * properties (like 'font-family' or 'voice-family') convert a - * whitespace separated list of idents to a string. - * @return The string value in the current unit. The current - * primitiveType can only be a string unit type (i.e. - * CSS_STRING, CSS_URI, - * CSS_IDENT and CSS_ATTR). - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a string - * value. - */ - public String getStringValue() - throws DOMException; - - /** - * This method is used to get the Counter value. If this CSS value - * doesn't contain a counter value, a DOMException is - * raised. Modification to the corresponding style property can be - * achieved using the Counter interface. - * @return The Counter value. - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a - * Counter value (e.g. this is not CSS_COUNTER). - */ - public Counter getCounterValue() - throws DOMException; - - /** - * This method is used to get the Rect value. If this CSS value doesn't - * contain a rect value, a DOMException is raised. - * Modification to the corresponding style property can be achieved - * using the Rect interface. - * @return The Rect value. - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a Rect - * value. (e.g. this is not CSS_RECT). - */ - public Rect getRectValue() - throws DOMException; - - /** - * This method is used to get the RGB color. If this CSS value doesn't - * contain a RGB color value, a DOMException is raised. - * Modification to the corresponding style property can be achieved - * using the RGBColor interface. - * @return the RGB color value. - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the attached property can't return a - * RGB color value (e.g. this is not CSS_RGBCOLOR). - */ - public RGBColor getRGBColorValue() - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSRule.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSRule.java deleted file mode 100644 index 788f946eca5..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSRule.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSRule interface is the abstract base interface for any - * type of CSS statement. This includes both rule sets and at-rules. An - * implementation is expected to preserve all rules specified in a CSS style - * sheet, even if the rule is not recognized by the parser. Unrecognized - * rules are represented using the CSSUnknownRule interface. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSRule { - // RuleType - /** - * The rule is a CSSUnknownRule. - */ - public static final short UNKNOWN_RULE = 0; - /** - * The rule is a CSSStyleRule. - */ - public static final short STYLE_RULE = 1; - /** - * The rule is a CSSCharsetRule. - */ - public static final short CHARSET_RULE = 2; - /** - * The rule is a CSSImportRule. - */ - public static final short IMPORT_RULE = 3; - /** - * The rule is a CSSMediaRule. - */ - public static final short MEDIA_RULE = 4; - /** - * The rule is a CSSFontFaceRule. - */ - public static final short FONT_FACE_RULE = 5; - /** - * The rule is a CSSPageRule. - */ - public static final short PAGE_RULE = 6; - - /** - * The type of the rule, as defined above. The expectation is that - * binding-specific casting methods can be used to cast down from an - * instance of the CSSRule interface to the specific - * derived interface implied by the type. - */ - public short getType(); - - /** - * The parsable textual representation of the rule. This reflects the - * current state of the rule and not its initial value. - */ - public String getCssText(); - /** - * The parsable textual representation of the rule. This reflects the - * current state of the rule and not its initial value. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified CSS string value has a syntax - * error and is unparsable. - *
INVALID_MODIFICATION_ERR: Raised if the specified CSS string - * value represents a different type of rule than the current one. - *
HIERARCHY_REQUEST_ERR: Raised if the rule cannot be inserted at - * this point in the style sheet. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if the rule is readonly. - */ - public void setCssText(String cssText) - throws DOMException; - - /** - * The style sheet that contains this rule. - */ - public CSSStyleSheet getParentStyleSheet(); - - /** - * If this rule is contained inside another rule (e.g. a style rule - * inside an @media block), this is the containing rule. If this rule is - * not nested inside any other rules, this returns null. - */ - public CSSRule getParentRule(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSRuleList.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSRuleList.java deleted file mode 100644 index 41c2c68377c..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSRuleList.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The CSSRuleList interface provides the abstraction of an - * ordered collection of CSS rules. - *

The items in the CSSRuleList are accessible via an - * integral index, starting from 0. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSRuleList { - /** - * The number of CSSRules in the list. The range of valid - * child rule indices is 0 to length-1 - * inclusive. - */ - public int getLength(); - - /** - * Used to retrieve a CSS rule by ordinal index. The order in this - * collection represents the order of the rules in the CSS style sheet. - * If index is greater than or equal to the number of rules in the list, - * this returns null. - * @param index Index into the collection - * @return The style rule at the index position in the - * CSSRuleList, or null if that is not a - * valid index. - */ - public CSSRule item(int index); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSStyleDeclaration.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSStyleDeclaration.java deleted file mode 100644 index e5e346b0a71..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSStyleDeclaration.java +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSStyleDeclaration interface represents a single CSS - * declaration block. This interface may be used to determine the style - * properties currently set in a block or to set style properties explicitly - * within the block. - *

While an implementation may not recognize all CSS properties within a - * CSS declaration block, it is expected to provide access to all specified - * properties in the style sheet through the CSSStyleDeclaration - * interface. Furthermore, implementations that support a specific level of - * CSS should correctly handle CSS shorthand properties for that level. For - * a further discussion of shorthand properties, see the - * CSS2Properties interface. - *

This interface is also used to provide a read-only access to the - * computed values of an element. See also the ViewCSS - * interface. The CSS Object Model doesn't provide an access to the - * specified or actual values of the CSS cascade. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSStyleDeclaration { - /** - * The parsable textual representation of the declaration block - * (excluding the surrounding curly braces). Setting this attribute will - * result in the parsing of the new value and resetting of all the - * properties in the declaration block including the removal or addition - * of properties. - */ - public String getCssText(); - /** - * The parsable textual representation of the declaration block - * (excluding the surrounding curly braces). Setting this attribute will - * result in the parsing of the new value and resetting of all the - * properties in the declaration block including the removal or addition - * of properties. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified CSS string value has a syntax - * error and is unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is - * readonly or a property is readonly. - */ - public void setCssText(String cssText) - throws DOMException; - - /** - * Used to retrieve the value of a CSS property if it has been explicitly - * set within this declaration block. - * @param propertyName The name of the CSS property. See the CSS - * property index. - * @return Returns the value of the property if it has been explicitly - * set for this declaration block. Returns the empty string if the - * property has not been set. - */ - public String getPropertyValue(String propertyName); - - /** - * Used to retrieve the object representation of the value of a CSS - * property if it has been explicitly set within this declaration block. - * This method returns null if the property is a shorthand - * property. Shorthand property values can only be accessed and modified - * as strings, using the getPropertyValue and - * setProperty methods. - * @param propertyName The name of the CSS property. See the CSS - * property index. - * @return Returns the value of the property if it has been explicitly - * set for this declaration block. Returns null if the - * property has not been set. - */ - public CSSValue getPropertyCSSValue(String propertyName); - - /** - * Used to remove a CSS property if it has been explicitly set within - * this declaration block. - * @param propertyName The name of the CSS property. See the CSS - * property index. - * @return Returns the value of the property if it has been explicitly - * set for this declaration block. Returns the empty string if the - * property has not been set or the property name does not correspond - * to a known CSS property. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is readonly - * or the property is readonly. - */ - public String removeProperty(String propertyName) - throws DOMException; - - /** - * Used to retrieve the priority of a CSS property (e.g. the - * "important" qualifier) if the priority has been - * explicitly set in this declaration block. - * @param propertyName The name of the CSS property. See the CSS - * property index. - * @return A string representing the priority (e.g. - * "important") if the property has been explicitly set - * in this declaration block and has a priority specified. The empty - * string otherwise. - */ - public String getPropertyPriority(String propertyName); - - /** - * Used to set a property value and priority within this declaration - * block. setProperty permits to modify a property or add a - * new one in the declaration block. Any call to this method may modify - * the order of properties in the item method. - * @param propertyName The name of the CSS property. See the CSS - * property index. - * @param value The new value of the property. - * @param priority The new priority of the property (e.g. - * "important") or the empty string if none. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is - * readonly or the property is readonly. - */ - public void setProperty(String propertyName, - String value, - String priority) - throws DOMException; - - /** - * The number of properties that have been explicitly set in this - * declaration block. The range of valid indices is 0 to length-1 - * inclusive. - */ - public int getLength(); - - /** - * Used to retrieve the properties that have been explicitly set in this - * declaration block. The order of the properties retrieved using this - * method does not have to be the order in which they were set. This - * method can be used to iterate over all properties in this declaration - * block. - * @param index Index of the property name to retrieve. - * @return The name of the property at this ordinal position. The empty - * string if no property exists at this position. - */ - public String item(int index); - - /** - * The CSS rule that contains this declaration block or null - * if this CSSStyleDeclaration is not attached to a - * CSSRule. - */ - public CSSRule getParentRule(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSStyleRule.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSStyleRule.java deleted file mode 100644 index 626f3224b4c..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSStyleRule.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSStyleRule interface represents a single rule set in a - * CSS style sheet. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSStyleRule extends CSSRule { - /** - * The textual representation of the selector for the rule set. The - * implementation may have stripped out insignificant whitespace while - * parsing the selector. - */ - public String getSelectorText(); - /** - * The textual representation of the selector for the rule set. The - * implementation may have stripped out insignificant whitespace while - * parsing the selector. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified CSS string value has a syntax - * error and is unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this rule is readonly. - */ - public void setSelectorText(String selectorText) - throws DOMException; - - /** - * The declaration-block of this rule set. - */ - public CSSStyleDeclaration getStyle(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSStyleSheet.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSStyleSheet.java deleted file mode 100644 index b529e5db089..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSStyleSheet.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; -import org.w3c.dom.stylesheets.StyleSheet; - -/** - * The CSSStyleSheet interface is a concrete interface used to - * represent a CSS style sheet i.e., a style sheet whose content type is - * "text/css". - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSStyleSheet extends StyleSheet { - /** - * If this style sheet comes from an @import rule, the - * ownerRule attribute will contain the - * CSSImportRule. In that case, the ownerNode - * attribute in the StyleSheet interface will be - * null. If the style sheet comes from an element or a - * processing instruction, the ownerRule attribute will be - * null and the ownerNode attribute will - * contain the Node. - */ - public CSSRule getOwnerRule(); - - /** - * The list of all CSS rules contained within the style sheet. This - * includes both rule sets and at-rules. - */ - public CSSRuleList getCssRules(); - - /** - * Used to insert a new rule into the style sheet. The new rule now - * becomes part of the cascade. - * @param rule The parsable text representing the rule. For rule sets - * this contains both the selector and the style declaration. For - * at-rules, this specifies both the at-identifier and the rule - * content. - * @param index The index within the style sheet's rule list of the rule - * before which to insert the specified rule. If the specified index - * is equal to the length of the style sheet's rule collection, the - * rule will be added to the end of the style sheet. - * @return The index within the style sheet's rule collection of the - * newly inserted rule. - * @exception DOMException - * HIERARCHY_REQUEST_ERR: Raised if the rule cannot be inserted at the - * specified index e.g. if an @import rule is inserted - * after a standard rule set or other at-rule. - *
INDEX_SIZE_ERR: Raised if the specified index is not a valid - * insertion point. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this style sheet is - * readonly. - *
SYNTAX_ERR: Raised if the specified rule has a syntax error and - * is unparsable. - */ - public int insertRule(String rule, - int index) - throws DOMException; - - /** - * Used to delete a rule from the style sheet. - * @param index The index within the style sheet's rule list of the rule - * to remove. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified index does not correspond to - * a rule in the style sheet's rule list. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this style sheet is - * readonly. - */ - public void deleteRule(int index) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSUnknownRule.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSUnknownRule.java deleted file mode 100644 index 763d5f1b61f..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSUnknownRule.java +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The CSSUnknownRule interface represents an at-rule not - * supported by this user agent. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSUnknownRule extends CSSRule { -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSValue.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSValue.java deleted file mode 100644 index 0285bcc7721..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSValue.java +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSValue interface represents a simple or a complex - * value. A CSSValue object only occurs in a context of a CSS - * property. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSValue { - // UnitTypes - /** - * The value is inherited and the cssText contains "inherit". - */ - public static final short CSS_INHERIT = 0; - /** - * The value is a primitive value and an instance of the - * CSSPrimitiveValue interface can be obtained by using - * binding-specific casting methods on this instance of the - * CSSValue interface. - */ - public static final short CSS_PRIMITIVE_VALUE = 1; - /** - * The value is a CSSValue list and an instance of the - * CSSValueList interface can be obtained by using - * binding-specific casting methods on this instance of the - * CSSValue interface. - */ - public static final short CSS_VALUE_LIST = 2; - /** - * The value is a custom value. - */ - public static final short CSS_CUSTOM = 3; - - /** - * A string representation of the current value. - */ - public String getCssText(); - /** - * A string representation of the current value. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified CSS string value has a syntax - * error (according to the attached property) or is unparsable. - *
INVALID_MODIFICATION_ERR: Raised if the specified CSS string - * value represents a different type of values than the values allowed - * by the CSS property. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this value is readonly. - */ - public void setCssText(String cssText) - throws DOMException; - - /** - * A code defining the type of the value as defined above. - */ - public short getCssValueType(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/CSSValueList.java b/libjava/external/w3c_dom/org/w3c/dom/css/CSSValueList.java deleted file mode 100644 index bf15bb3ebfd..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/CSSValueList.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The CSSValueList interface provides the abstraction of an - * ordered collection of CSS values. - *

Some properties allow an empty list into their syntax. In that case, - * these properties take the none identifier. So, an empty list - * means that the property has the value none. - *

The items in the CSSValueList are accessible via an - * integral index, starting from 0. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSValueList extends CSSValue { - /** - * The number of CSSValues in the list. The range of valid - * values of the indices is 0 to length-1 - * inclusive. - */ - public int getLength(); - - /** - * Used to retrieve a CSSValue by ordinal index. The order in - * this collection represents the order of the values in the CSS style - * property. If index is greater than or equal to the number of values - * in the list, this returns null. - * @param index Index into the collection. - * @return The CSSValue at the index position - * in the CSSValueList, or null if that is - * not a valid index. - */ - public CSSValue item(int index); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/Counter.java b/libjava/external/w3c_dom/org/w3c/dom/css/Counter.java deleted file mode 100644 index 8cd4967b32d..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/Counter.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The Counter interface is used to represent any counter or - * counters function value. This interface reflects the values in the - * underlying style property. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface Counter { - /** - * This attribute is used for the identifier of the counter. - */ - public String getIdentifier(); - - /** - * This attribute is used for the style of the list. - */ - public String getListStyle(); - - /** - * This attribute is used for the separator of the nested counters. - */ - public String getSeparator(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/DOMImplementationCSS.java b/libjava/external/w3c_dom/org/w3c/dom/css/DOMImplementationCSS.java deleted file mode 100644 index 65c97291ef4..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/DOMImplementationCSS.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMImplementation; -import org.w3c.dom.DOMException; - -/** - * This interface allows the DOM user to create a CSSStyleSheet - * outside the context of a document. There is no way to associate the new - * CSSStyleSheet with a document in DOM Level 2. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface DOMImplementationCSS extends DOMImplementation { - /** - * Creates a new CSSStyleSheet. - * @param title The advisory title. See also the section. - * @param media The comma-separated list of media associated with the - * new style sheet. See also the section. - * @return A new CSS style sheet. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified media string value has a syntax - * error and is unparsable. - */ - public CSSStyleSheet createCSSStyleSheet(String title, - String media) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/DocumentCSS.java b/libjava/external/w3c_dom/org/w3c/dom/css/DocumentCSS.java deleted file mode 100644 index 8fe93c79a7e..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/DocumentCSS.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.Element; -import org.w3c.dom.stylesheets.DocumentStyle; - -/** - * This interface represents a document with a CSS view. - *

The getOverrideStyle method provides a mechanism through - * which a DOM author could effect immediate change to the style of an - * element without modifying the explicitly linked style sheets of a - * document or the inline style of elements in the style sheets. This style - * sheet comes after the author style sheet in the cascade algorithm and is - * called override style sheet. The override style sheet takes precedence - * over author style sheets. An "!important" declaration still takes - * precedence over a normal declaration. Override, author, and user style - * sheets all may contain "!important" declarations. User "!important" rules - * take precedence over both override and author "!important" rules, and - * override "!important" rules take precedence over author "!important" - * rules. - *

The expectation is that an instance of the DocumentCSS - * interface can be obtained by using binding-specific casting methods on an - * instance of the Document interface. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface DocumentCSS extends DocumentStyle { - /** - * This method is used to retrieve the override style declaration for a - * specified element and a specified pseudo-element. - * @param elt The element whose style is to be modified. This parameter - * cannot be null. - * @param pseudoElt The pseudo-element or null if none. - * @return The override style declaration. - */ - public CSSStyleDeclaration getOverrideStyle(Element elt, - String pseudoElt); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/ElementCSSInlineStyle.java b/libjava/external/w3c_dom/org/w3c/dom/css/ElementCSSInlineStyle.java deleted file mode 100644 index 98b60bf9ddf..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/ElementCSSInlineStyle.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * Inline style information attached to elements is exposed through the - * style attribute. This represents the contents of the STYLE - * attribute for HTML elements (or elements in other schemas or DTDs which - * use the STYLE attribute in the same way). The expectation is that an - * instance of the ElementCSSInlineStyle interface can be obtained by using - * binding-specific casting methods on an instance of the Element interface - * when the element supports inline CSS style informations. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface ElementCSSInlineStyle { - /** - * The style attribute. - */ - public CSSStyleDeclaration getStyle(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/RGBColor.java b/libjava/external/w3c_dom/org/w3c/dom/css/RGBColor.java deleted file mode 100644 index cd5daa56703..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/RGBColor.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The RGBColor interface is used to represent any RGB color - * value. This interface reflects the values in the underlying style - * property. Hence, modifications made to the CSSPrimitiveValue - * objects modify the style property. - *

A specified RGB color is not clipped (even if the number is outside the - * range 0-255 or 0%-100%). A computed RGB color is clipped depending on the - * device. - *

Even if a style sheet can only contain an integer for a color value, - * the internal storage of this integer is a float, and this can be used as - * a float in the specified or the computed style. - *

A color percentage value can always be converted to a number and vice - * versa. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface RGBColor { - /** - * This attribute is used for the red value of the RGB color. - */ - public CSSPrimitiveValue getRed(); - - /** - * This attribute is used for the green value of the RGB color. - */ - public CSSPrimitiveValue getGreen(); - - /** - * This attribute is used for the blue value of the RGB color. - */ - public CSSPrimitiveValue getBlue(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/Rect.java b/libjava/external/w3c_dom/org/w3c/dom/css/Rect.java deleted file mode 100644 index f5efb1084d9..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/Rect.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The Rect interface is used to represent any rect value. This - * interface reflects the values in the underlying style property. Hence, - * modifications made to the CSSPrimitiveValue objects modify - * the style property. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface Rect { - /** - * This attribute is used for the top of the rect. - */ - public CSSPrimitiveValue getTop(); - - /** - * This attribute is used for the right of the rect. - */ - public CSSPrimitiveValue getRight(); - - /** - * This attribute is used for the bottom of the rect. - */ - public CSSPrimitiveValue getBottom(); - - /** - * This attribute is used for the left of the rect. - */ - public CSSPrimitiveValue getLeft(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/css/ViewCSS.java b/libjava/external/w3c_dom/org/w3c/dom/css/ViewCSS.java deleted file mode 100644 index 76b585a54d2..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/css/ViewCSS.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.Element; -import org.w3c.dom.views.AbstractView; - -/** - * This interface represents a CSS view. The getComputedStyle - * method provides a read only access to the computed values of an element. - *

The expectation is that an instance of the ViewCSS - * interface can be obtained by using binding-specific casting methods on an - * instance of the AbstractView interface. - *

Since a computed style is related to an Element node, if - * this element is removed from the document, the associated - * CSSStyleDeclaration and CSSValue related to - * this declaration are no longer valid. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface ViewCSS extends AbstractView { - /** - * This method is used to get the computed style as it is defined in [CSS2]. - * @param elt The element whose style is to be computed. This parameter - * cannot be null. - * @param pseudoElt The pseudo-element or null if none. - * @return The computed style. The CSSStyleDeclaration is - * read-only and contains only absolute values. - */ - public CSSStyleDeclaration getComputedStyle(Element elt, - String pseudoElt); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/events/DocumentEvent.java b/libjava/external/w3c_dom/org/w3c/dom/events/DocumentEvent.java deleted file mode 100644 index 76644bc5a3d..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/events/DocumentEvent.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.events; - -import org.w3c.dom.DOMException; - -/** - * The DocumentEvent interface provides a mechanism by which the - * user can create an Event of a type supported by the implementation. It is - * expected that the DocumentEvent interface will be - * implemented on the same object which implements the Document - * interface in an implementation which supports the Event model. - *

See also the Document Object Model (DOM) Level 2 Events Specification. - * @since DOM Level 2 - */ -public interface DocumentEvent { - /** - * - * @param eventType The eventType parameter specifies the - * type of Event interface to be created. If the - * Event interface specified is supported by the - * implementation this method will return a new Event of - * the interface type requested. If the Event is to be - * dispatched via the dispatchEvent method the - * appropriate event init method must be called after creation in - * order to initialize the Event's values. As an example, - * a user wishing to synthesize some kind of UIEvent - * would call createEvent with the parameter "UIEvents". - * The initUIEvent method could then be called on the - * newly created UIEvent to set the specific type of - * UIEvent to be dispatched and set its context information.The - * createEvent method is used in creating - * Events when it is either inconvenient or unnecessary - * for the user to create an Event themselves. In cases - * where the implementation provided Event is - * insufficient, users may supply their own Event - * implementations for use with the dispatchEvent method. - * @return The newly created Event - * @exception DOMException - * NOT_SUPPORTED_ERR: Raised if the implementation does not support the - * type of Event interface requested - */ - public Event createEvent(String eventType) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/events/Event.java b/libjava/external/w3c_dom/org/w3c/dom/events/Event.java deleted file mode 100644 index 14a9239ed76..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/events/Event.java +++ /dev/null @@ -1,141 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.events; - -/** - * The Event interface is used to provide contextual information - * about an event to the handler processing the event. An object which - * implements the Event interface is generally passed as the - * first parameter to an event handler. More specific context information is - * passed to event handlers by deriving additional interfaces from - * Event which contain information directly relating to the - * type of event they accompany. These derived interfaces are also - * implemented by the object passed to the event listener. - *

See also the Document Object Model (DOM) Level 2 Events Specification. - * @since DOM Level 2 - */ -public interface Event { - // PhaseType - /** - * The current event phase is the capturing phase. - */ - public static final short CAPTURING_PHASE = 1; - /** - * The event is currently being evaluated at the target - * EventTarget. - */ - public static final short AT_TARGET = 2; - /** - * The current event phase is the bubbling phase. - */ - public static final short BUBBLING_PHASE = 3; - - /** - * The name of the event (case-insensitive). The name must be an XML name. - */ - public String getType(); - - /** - * Used to indicate the EventTarget to which the event was - * originally dispatched. - */ - public EventTarget getTarget(); - - /** - * Used to indicate the EventTarget whose - * EventListeners are currently being processed. This is - * particularly useful during capturing and bubbling. - */ - public EventTarget getCurrentTarget(); - - /** - * Used to indicate which phase of event flow is currently being - * evaluated. - */ - public short getEventPhase(); - - /** - * Used to indicate whether or not an event is a bubbling event. If the - * event can bubble the value is true, else the value is false. - */ - public boolean getBubbles(); - - /** - * Used to indicate whether or not an event can have its default action - * prevented. If the default action can be prevented the value is true, - * else the value is false. - */ - public boolean getCancelable(); - - /** - * Used to specify the time (in milliseconds relative to the epoch) at - * which the event was created. Due to the fact that some systems may - * not provide this information the value of timeStamp may - * be not available for all events. When not available, a value of 0 - * will be returned. Examples of epoch time are the time of the system - * start or 0:0:0 UTC 1st January 1970. - */ - public long getTimeStamp(); - - /** - * The stopPropagation method is used prevent further - * propagation of an event during event flow. If this method is called - * by any EventListener the event will cease propagating - * through the tree. The event will complete dispatch to all listeners - * on the current EventTarget before event flow stops. This - * method may be used during any stage of event flow. - */ - public void stopPropagation(); - - /** - * If an event is cancelable, the preventDefault method is - * used to signify that the event is to be canceled, meaning any default - * action normally taken by the implementation as a result of the event - * will not occur. If, during any stage of event flow, the - * preventDefault method is called the event is canceled. - * Any default action associated with the event will not occur. Calling - * this method for a non-cancelable event has no effect. Once - * preventDefault has been called it will remain in effect - * throughout the remainder of the event's propagation. This method may - * be used during any stage of event flow. - */ - public void preventDefault(); - - /** - * The initEvent method is used to initialize the value of an - * Event created through the DocumentEvent - * interface. This method may only be called before the - * Event has been dispatched via the - * dispatchEvent method, though it may be called multiple - * times during that phase if necessary. If called multiple times the - * final invocation takes precedence. If called from a subclass of - * Event interface only the values specified in the - * initEvent method are modified, all other attributes are - * left unchanged. - * @param eventTypeArg Specifies the event type. This type may be any - * event type currently defined in this specification or a new event - * type.. The string must be an XML name. Any new event type must not - * begin with any upper, lower, or mixed case version of the string - * "DOM". This prefix is reserved for future DOM event sets. It is - * also strongly recommended that third parties adding their own - * events use their own prefix to avoid confusion and lessen the - * probability of conflicts with other new events. - * @param canBubbleArg Specifies whether or not the event can bubble. - * @param cancelableArg Specifies whether or not the event's default - * action can be prevented. - */ - public void initEvent(String eventTypeArg, - boolean canBubbleArg, - boolean cancelableArg); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/events/EventException.java b/libjava/external/w3c_dom/org/w3c/dom/events/EventException.java deleted file mode 100644 index 7a6ff262052..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/events/EventException.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.events; - -/** - * Event operations may throw an EventException as specified in - * their method descriptions. - *

See also the Document Object Model (DOM) Level 2 Events Specification. - * @since DOM Level 2 - */ -public class EventException extends RuntimeException { - public EventException(short code, String message) { - super(message); - this.code = code; - } - public short code; - // EventExceptionCode - /** - * If the Event's type was not specified by initializing the - * event before the method was called. Specification of the Event's type - * as null or an empty string will also trigger this - * exception. - */ - public static final short UNSPECIFIED_EVENT_TYPE_ERR = 0; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/events/EventListener.java b/libjava/external/w3c_dom/org/w3c/dom/events/EventListener.java deleted file mode 100644 index 1df80202cea..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/events/EventListener.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.events; - -/** - * The EventListener interface is the primary method for - * handling events. Users implement the EventListener interface - * and register their listener on an EventTarget using the - * AddEventListener method. The users should also remove their - * EventListener from its EventTarget after they - * have completed using the listener. - *

When a Node is copied using the cloneNode - * method the EventListeners attached to the source - * Node are not attached to the copied Node. If - * the user wishes the same EventListeners to be added to the - * newly created copy the user must add them manually. - *

See also the Document Object Model (DOM) Level 2 Events Specification. - * @since DOM Level 2 - */ -public interface EventListener { - /** - * This method is called whenever an event occurs of the type for which - * the EventListener interface was registered. - * @param evt The Event contains contextual information - * about the event. It also contains the stopPropagation - * and preventDefault methods which are used in - * determining the event's flow and default action. - */ - public void handleEvent(Event evt); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/events/EventTarget.java b/libjava/external/w3c_dom/org/w3c/dom/events/EventTarget.java deleted file mode 100644 index f07663660fd..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/events/EventTarget.java +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.events; - -/** - * The EventTarget interface is implemented by all - * Nodes in an implementation which supports the DOM Event - * Model. Therefore, this interface can be obtained by using - * binding-specific casting methods on an instance of the Node - * interface. The interface allows registration and removal of - * EventListeners on an EventTarget and dispatch - * of events to that EventTarget. - *

See also the Document Object Model (DOM) Level 2 Events Specification. - * @since DOM Level 2 - */ -public interface EventTarget { - /** - * This method allows the registration of event listeners on the event - * target. If an EventListener is added to an - * EventTarget while it is processing an event, it will not - * be triggered by the current actions but may be triggered during a - * later stage of event flow, such as the bubbling phase. - *
If multiple identical EventListeners are registered - * on the same EventTarget with the same parameters the - * duplicate instances are discarded. They do not cause the - * EventListener to be called twice and since they are - * discarded they do not need to be removed with the - * removeEventListener method. - * @param type The event type for which the user is registering - * @param listener The listener parameter takes an interface - * implemented by the user which contains the methods to be called - * when the event occurs. - * @param useCapture If true, useCapture indicates that the - * user wishes to initiate capture. After initiating capture, all - * events of the specified type will be dispatched to the registered - * EventListener before being dispatched to any - * EventTargets beneath them in the tree. Events which - * are bubbling upward through the tree will not trigger an - * EventListener designated to use capture. - */ - public void addEventListener(String type, - EventListener listener, - boolean useCapture); - - /** - * This method allows the removal of event listeners from the event - * target. If an EventListener is removed from an - * EventTarget while it is processing an event, it will not - * be triggered by the current actions. EventListeners can - * never be invoked after being removed. - *
Calling removeEventListener with arguments which do - * not identify any currently registered EventListener on - * the EventTarget has no effect. - * @param type Specifies the event type of the EventListener - * being removed. - * @param listener The EventListener parameter indicates the - * EventListener to be removed. - * @param useCapture Specifies whether the EventListener - * being removed was registered as a capturing listener or not. If a - * listener was registered twice, one with capture and one without, - * each must be removed separately. Removal of a capturing listener - * does not affect a non-capturing version of the same listener, and - * vice versa. - */ - public void removeEventListener(String type, - EventListener listener, - boolean useCapture); - - /** - * This method allows the dispatch of events into the implementations - * event model. Events dispatched in this manner will have the same - * capturing and bubbling behavior as events dispatched directly by the - * implementation. The target of the event is the - * EventTarget on which dispatchEvent is - * called. - * @param evt Specifies the event type, behavior, and contextual - * information to be used in processing the event. - * @return The return value of dispatchEvent indicates - * whether any of the listeners which handled the event called - * preventDefault. If preventDefault was - * called the value is false, else the value is true. - * @exception EventException - * UNSPECIFIED_EVENT_TYPE_ERR: Raised if the Event's type - * was not specified by initializing the event before - * dispatchEvent was called. Specification of the - * Event's type as null or an empty string - * will also trigger this exception. - */ - public boolean dispatchEvent(Event evt) - throws EventException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/events/MouseEvent.java b/libjava/external/w3c_dom/org/w3c/dom/events/MouseEvent.java deleted file mode 100644 index be780357a88..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/events/MouseEvent.java +++ /dev/null @@ -1,156 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.events; - -import org.w3c.dom.views.AbstractView; - -/** - * The MouseEvent interface provides specific contextual - * information associated with Mouse events. - *

The detail attribute inherited from UIEvent - * indicates the number of times a mouse button has been pressed and - * released over the same screen location during a user action. The - * attribute value is 1 when the user begins this action and increments by 1 - * for each full sequence of pressing and releasing. If the user moves the - * mouse between the mousedown and mouseup the value will be set to 0, - * indicating that no click is occurring. - *

In the case of nested elements mouse events are always targeted at the - * most deeply nested element. Ancestors of the targeted element may use - * bubbling to obtain notification of mouse events which occur within its - * descendent elements. - *

See also the Document Object Model (DOM) Level 2 Events Specification. - * @since DOM Level 2 - */ -public interface MouseEvent extends UIEvent { - /** - * The horizontal coordinate at which the event occurred relative to the - * origin of the screen coordinate system. - */ - public int getScreenX(); - - /** - * The vertical coordinate at which the event occurred relative to the - * origin of the screen coordinate system. - */ - public int getScreenY(); - - /** - * The horizontal coordinate at which the event occurred relative to the - * DOM implementation's client area. - */ - public int getClientX(); - - /** - * The vertical coordinate at which the event occurred relative to the DOM - * implementation's client area. - */ - public int getClientY(); - - /** - * Used to indicate whether the 'ctrl' key was depressed during the firing - * of the event. - */ - public boolean getCtrlKey(); - - /** - * Used to indicate whether the 'shift' key was depressed during the - * firing of the event. - */ - public boolean getShiftKey(); - - /** - * Used to indicate whether the 'alt' key was depressed during the firing - * of the event. On some platforms this key may map to an alternative - * key name. - */ - public boolean getAltKey(); - - /** - * Used to indicate whether the 'meta' key was depressed during the firing - * of the event. On some platforms this key may map to an alternative - * key name. - */ - public boolean getMetaKey(); - - /** - * During mouse events caused by the depression or release of a mouse - * button, button is used to indicate which mouse button - * changed state. The values for button range from zero to - * indicate the left button of the mouse, one to indicate the middle - * button if present, and two to indicate the right button. For mice - * configured for left handed use in which the button actions are - * reversed the values are instead read from right to left. - */ - public short getButton(); - - /** - * Used to identify a secondary EventTarget related to a UI - * event. Currently this attribute is used with the mouseover event to - * indicate the EventTarget which the pointing device - * exited and with the mouseout event to indicate the - * EventTarget which the pointing device entered. - */ - public EventTarget getRelatedTarget(); - - /** - * The initMouseEvent method is used to initialize the value - * of a MouseEvent created through the - * DocumentEvent interface. This method may only be called - * before the MouseEvent has been dispatched via the - * dispatchEvent method, though it may be called multiple - * times during that phase if necessary. If called multiple times, the - * final invocation takes precedence. - * @param typeArg Specifies the event type. - * @param canBubbleArg Specifies whether or not the event can bubble. - * @param cancelableArg Specifies whether or not the event's default - * action can be prevented. - * @param viewArg Specifies the Event's - * AbstractView. - * @param detailArg Specifies the Event's mouse click count. - * @param screenXArg Specifies the Event's screen x - * coordinate - * @param screenYArg Specifies the Event's screen y - * coordinate - * @param clientXArg Specifies the Event's client x - * coordinate - * @param clientYArg Specifies the Event's client y - * coordinate - * @param ctrlKeyArg Specifies whether or not control key was depressed - * during the Event. - * @param altKeyArg Specifies whether or not alt key was depressed during - * the Event. - * @param shiftKeyArg Specifies whether or not shift key was depressed - * during the Event. - * @param metaKeyArg Specifies whether or not meta key was depressed - * during the Event. - * @param buttonArg Specifies the Event's mouse button. - * @param relatedTargetArg Specifies the Event's related - * EventTarget. - */ - public void initMouseEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - int detailArg, - int screenXArg, - int screenYArg, - int clientXArg, - int clientYArg, - boolean ctrlKeyArg, - boolean altKeyArg, - boolean shiftKeyArg, - boolean metaKeyArg, - short buttonArg, - EventTarget relatedTargetArg); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/events/MutationEvent.java b/libjava/external/w3c_dom/org/w3c/dom/events/MutationEvent.java deleted file mode 100644 index 3db40038e93..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/events/MutationEvent.java +++ /dev/null @@ -1,108 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.events; - -import org.w3c.dom.Node; - -/** - * The MutationEvent interface provides specific contextual - * information associated with Mutation events. - *

See also the Document Object Model (DOM) Level 2 Events Specification. - * @since DOM Level 2 - */ -public interface MutationEvent extends Event { - // attrChangeType - /** - * The Attr was modified in place. - */ - public static final short MODIFICATION = 1; - /** - * The Attr was just added. - */ - public static final short ADDITION = 2; - /** - * The Attr was just removed. - */ - public static final short REMOVAL = 3; - - /** - * relatedNode is used to identify a secondary node related - * to a mutation event. For example, if a mutation event is dispatched - * to a node indicating that its parent has changed, the - * relatedNode is the changed parent. If an event is - * instead dispatched to a subtree indicating a node was changed within - * it, the relatedNode is the changed node. In the case of - * the DOMAttrModified event it indicates the Attr node - * which was modified, added, or removed. - */ - public Node getRelatedNode(); - - /** - * prevValue indicates the previous value of the - * Attr node in DOMAttrModified events, and of the - * CharacterData node in DOMCharacterDataModified events. - */ - public String getPrevValue(); - - /** - * newValue indicates the new value of the Attr - * node in DOMAttrModified events, and of the CharacterData - * node in DOMCharacterDataModified events. - */ - public String getNewValue(); - - /** - * attrName indicates the name of the changed - * Attr node in a DOMAttrModified event. - */ - public String getAttrName(); - - /** - * attrChange indicates the type of change which triggered - * the DOMAttrModified event. The values can be MODIFICATION - * , ADDITION, or REMOVAL. - */ - public short getAttrChange(); - - /** - * The initMutationEvent method is used to initialize the - * value of a MutationEvent created through the - * DocumentEvent interface. This method may only be called - * before the MutationEvent has been dispatched via the - * dispatchEvent method, though it may be called multiple - * times during that phase if necessary. If called multiple times, the - * final invocation takes precedence. - * @param typeArg Specifies the event type. - * @param canBubbleArg Specifies whether or not the event can bubble. - * @param cancelableArg Specifies whether or not the event's default - * action can be prevented. - * @param relatedNodeArg Specifies the Event's related Node. - * @param prevValueArg Specifies the Event's - * prevValue attribute. This value may be null. - * @param newValueArg Specifies the Event's - * newValue attribute. This value may be null. - * @param attrNameArg Specifies the Event's - * attrName attribute. This value may be null. - * @param attrChangeArg Specifies the Event's - * attrChange attribute - */ - public void initMutationEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - Node relatedNodeArg, - String prevValueArg, - String newValueArg, - String attrNameArg, - short attrChangeArg); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/events/UIEvent.java b/libjava/external/w3c_dom/org/w3c/dom/events/UIEvent.java deleted file mode 100644 index 15affe8791e..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/events/UIEvent.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.events; - -import org.w3c.dom.views.AbstractView; - -/** - * The UIEvent interface provides specific contextual information - * associated with User Interface events. - *

See also the Document Object Model (DOM) Level 2 Events Specification. - * @since DOM Level 2 - */ -public interface UIEvent extends Event { - /** - * The view attribute identifies the AbstractView - * from which the event was generated. - */ - public AbstractView getView(); - - /** - * Specifies some detail information about the Event, - * depending on the type of event. - */ - public int getDetail(); - - /** - * The initUIEvent method is used to initialize the value of - * a UIEvent created through the DocumentEvent - * interface. This method may only be called before the - * UIEvent has been dispatched via the - * dispatchEvent method, though it may be called multiple - * times during that phase if necessary. If called multiple times, the - * final invocation takes precedence. - * @param typeArg Specifies the event type. - * @param canBubbleArg Specifies whether or not the event can bubble. - * @param cancelableArg Specifies whether or not the event's default - * action can be prevented. - * @param viewArg Specifies the Event's - * AbstractView. - * @param detailArg Specifies the Event's detail. - */ - public void initUIEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - int detailArg); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLAnchorElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLAnchorElement.java deleted file mode 100644 index eaac35c8a76..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLAnchorElement.java +++ /dev/null @@ -1,156 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * The anchor element. See the A element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLAnchorElement extends HTMLElement { - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public String getAccessKey(); - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public void setAccessKey(String accessKey); - - /** - * The character encoding of the linked resource. See the charset - * attribute definition in HTML 4.01. - */ - public String getCharset(); - /** - * The character encoding of the linked resource. See the charset - * attribute definition in HTML 4.01. - */ - public void setCharset(String charset); - - /** - * Comma-separated list of lengths, defining an active region geometry. - * See also shape for the shape of the region. See the - * coords attribute definition in HTML 4.01. - */ - public String getCoords(); - /** - * Comma-separated list of lengths, defining an active region geometry. - * See also shape for the shape of the region. See the - * coords attribute definition in HTML 4.01. - */ - public void setCoords(String coords); - - /** - * The absolute URI [IETF RFC 2396] of the linked resource. See the href attribute - * definition in HTML 4.01. - */ - public String getHref(); - /** - * The absolute URI [IETF RFC 2396] of the linked resource. See the href attribute - * definition in HTML 4.01. - */ - public void setHref(String href); - - /** - * Language code of the linked resource. See the hreflang attribute - * definition in HTML 4.01. - */ - public String getHreflang(); - /** - * Language code of the linked resource. See the hreflang attribute - * definition in HTML 4.01. - */ - public void setHreflang(String hreflang); - - /** - * Anchor name. See the name attribute definition in HTML 4.01. - */ - public String getName(); - /** - * Anchor name. See the name attribute definition in HTML 4.01. - */ - public void setName(String name); - - /** - * Forward link type. See the rel attribute definition in HTML 4.01. - */ - public String getRel(); - /** - * Forward link type. See the rel attribute definition in HTML 4.01. - */ - public void setRel(String rel); - - /** - * Reverse link type. See the rev attribute definition in HTML 4.01. - */ - public String getRev(); - /** - * Reverse link type. See the rev attribute definition in HTML 4.01. - */ - public void setRev(String rev); - - /** - * The shape of the active area. The coordinates are given by - * coords. See the shape attribute definition in HTML 4.01. - */ - public String getShape(); - /** - * The shape of the active area. The coordinates are given by - * coords. See the shape attribute definition in HTML 4.01. - */ - public void setShape(String shape); - - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public int getTabIndex(); - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public void setTabIndex(int tabIndex); - - /** - * Frame to render the resource in. See the target attribute definition in - * HTML 4.01. - */ - public String getTarget(); - /** - * Frame to render the resource in. See the target attribute definition in - * HTML 4.01. - */ - public void setTarget(String target); - - /** - * Advisory content type. See the type attribute definition in HTML 4.01. - */ - public String getType(); - /** - * Advisory content type. See the type attribute definition in HTML 4.01. - */ - public void setType(String type); - - /** - * Removes keyboard focus from this element. - */ - public void blur(); - - /** - * Gives keyboard focus to this element. - */ - public void focus(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLAppletElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLAppletElement.java deleted file mode 100644 index f27b51afb7a..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLAppletElement.java +++ /dev/null @@ -1,156 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * An embedded Java applet. See the APPLET element definition in HTML 4.01. - * This element is deprecated in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLAppletElement extends HTMLElement { - /** - * Aligns this object (vertically or horizontally) with respect to its - * surrounding text. See the align attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public String getAlign(); - /** - * Aligns this object (vertically or horizontally) with respect to its - * surrounding text. See the align attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setAlign(String align); - - /** - * Alternate text for user agents not rendering the normal content of this - * element. See the alt attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public String getAlt(); - /** - * Alternate text for user agents not rendering the normal content of this - * element. See the alt attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public void setAlt(String alt); - - /** - * Comma-separated archive list. See the archive attribute definition in - * HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getArchive(); - /** - * Comma-separated archive list. See the archive attribute definition in - * HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setArchive(String archive); - - /** - * Applet class file. See the code attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public String getCode(); - /** - * Applet class file. See the code attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public void setCode(String code); - - /** - * Optional base URI [IETF RFC 2396] for applet. See the codebase attribute definition in - * HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getCodeBase(); - /** - * Optional base URI [IETF RFC 2396] for applet. See the codebase attribute definition in - * HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setCodeBase(String codeBase); - - /** - * Override height. See the height attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public String getHeight(); - /** - * Override height. See the height attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public void setHeight(String height); - - /** - * Horizontal space, in pixels, to the left and right of this image, - * applet, or object. See the hspace attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - * @version DOM Level 2 - */ - public int getHspace(); - /** - * Horizontal space, in pixels, to the left and right of this image, - * applet, or object. See the hspace attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - * @version DOM Level 2 - */ - public void setHspace(int hspace); - - /** - * The name of the applet. See the name attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public String getName(); - /** - * The name of the applet. See the name attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setName(String name); - - /** - * The value of the "object" attribute. See the object attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - * @version DOM Level 2 - */ - public String getObject(); - /** - * The value of the "object" attribute. See the object attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - * @version DOM Level 2 - */ - public void setObject(String object); - - /** - * Vertical space, in pixels, above and below this image, applet, or - * object. See the vspace attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - * @version DOM Level 2 - */ - public int getVspace(); - /** - * Vertical space, in pixels, above and below this image, applet, or - * object. See the vspace attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - * @version DOM Level 2 - */ - public void setVspace(int vspace); - - /** - * Override width. See the width attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public String getWidth(); - /** - * Override width. See the width attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public void setWidth(String width); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLAreaElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLAreaElement.java deleted file mode 100644 index 75d1dc5cfa9..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLAreaElement.java +++ /dev/null @@ -1,111 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Client-side image map area definition. See the AREA element definition in - * HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLAreaElement extends HTMLElement { - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public String getAccessKey(); - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public void setAccessKey(String accessKey); - - /** - * Alternate text for user agents not rendering the normal content of this - * element. See the alt attribute definition in HTML 4.01. - */ - public String getAlt(); - /** - * Alternate text for user agents not rendering the normal content of this - * element. See the alt attribute definition in HTML 4.01. - */ - public void setAlt(String alt); - - /** - * Comma-separated list of lengths, defining an active region geometry. - * See also shape for the shape of the region. See the - * coords attribute definition in HTML 4.01. - */ - public String getCoords(); - /** - * Comma-separated list of lengths, defining an active region geometry. - * See also shape for the shape of the region. See the - * coords attribute definition in HTML 4.01. - */ - public void setCoords(String coords); - - /** - * The URI [IETF RFC 2396] of the linked resource. See the href attribute definition in - * HTML 4.01. - */ - public String getHref(); - /** - * The URI [IETF RFC 2396] of the linked resource. See the href attribute definition in - * HTML 4.01. - */ - public void setHref(String href); - - /** - * Specifies that this area is inactive, i.e., has no associated action. - * See the nohref attribute definition in HTML 4.01. - */ - public boolean getNoHref(); - /** - * Specifies that this area is inactive, i.e., has no associated action. - * See the nohref attribute definition in HTML 4.01. - */ - public void setNoHref(boolean noHref); - - /** - * The shape of the active area. The coordinates are given by - * coords. See the shape attribute definition in HTML 4.01. - */ - public String getShape(); - /** - * The shape of the active area. The coordinates are given by - * coords. See the shape attribute definition in HTML 4.01. - */ - public void setShape(String shape); - - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public int getTabIndex(); - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public void setTabIndex(int tabIndex); - - /** - * Frame to render the resource in. See the target attribute definition in - * HTML 4.01. - */ - public String getTarget(); - /** - * Frame to render the resource in. See the target attribute definition in - * HTML 4.01. - */ - public void setTarget(String target); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBRElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBRElement.java deleted file mode 100644 index a865d282d41..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBRElement.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Force a line break. See the BR element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLBRElement extends HTMLElement { - /** - * Control flow of text around floats. See the clear attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getClear(); - /** - * Control flow of text around floats. See the clear attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setClear(String clear); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBaseElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBaseElement.java deleted file mode 100644 index 7b52dbcc209..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBaseElement.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Document base URI [IETF RFC 2396]. See the BASE element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLBaseElement extends HTMLElement { - /** - * The base URI [IETF RFC 2396]. See the href attribute definition in HTML 4.01. - */ - public String getHref(); - /** - * The base URI [IETF RFC 2396]. See the href attribute definition in HTML 4.01. - */ - public void setHref(String href); - - /** - * The default target frame. See the target attribute definition in HTML - * 4.01. - */ - public String getTarget(); - /** - * The default target frame. See the target attribute definition in HTML - * 4.01. - */ - public void setTarget(String target); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBaseFontElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBaseFontElement.java deleted file mode 100644 index 5a3c5c93cee..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBaseFontElement.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Base font. See the BASEFONT element definition in HTML 4.01. This element - * is deprecated in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLBaseFontElement extends HTMLElement { - /** - * Font color. See the color attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public String getColor(); - /** - * Font color. See the color attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public void setColor(String color); - - /** - * Font face identifier. See the face attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public String getFace(); - /** - * Font face identifier. See the face attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setFace(String face); - - /** - * Computed font size. See the size attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - * @version DOM Level 2 - */ - public int getSize(); - /** - * Computed font size. See the size attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - * @version DOM Level 2 - */ - public void setSize(int size); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBodyElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBodyElement.java deleted file mode 100644 index 8898c5de030..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLBodyElement.java +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * The HTML document body. This element is always present in the DOM API, even - * if the tags are not present in the source document. See the BODY element - * definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLBodyElement extends HTMLElement { - /** - * Color of active links (after mouse-button down, but before mouse-button - * up). See the alink attribute definition in HTML 4.01. This attribute - * is deprecated in HTML 4.01. - */ - public String getALink(); - /** - * Color of active links (after mouse-button down, but before mouse-button - * up). See the alink attribute definition in HTML 4.01. This attribute - * is deprecated in HTML 4.01. - */ - public void setALink(String aLink); - - /** - * URI [IETF RFC 2396] of the background texture tile image. See the background attribute - * definition in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getBackground(); - /** - * URI [IETF RFC 2396] of the background texture tile image. See the background attribute - * definition in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setBackground(String background); - - /** - * Document background color. See the bgcolor attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getBgColor(); - /** - * Document background color. See the bgcolor attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setBgColor(String bgColor); - - /** - * Color of links that are not active and unvisited. See the link - * attribute definition in HTML 4.01. This attribute is deprecated in - * HTML 4.01. - */ - public String getLink(); - /** - * Color of links that are not active and unvisited. See the link - * attribute definition in HTML 4.01. This attribute is deprecated in - * HTML 4.01. - */ - public void setLink(String link); - - /** - * Document text color. See the text attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public String getText(); - /** - * Document text color. See the text attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setText(String text); - - /** - * Color of links that have been visited by the user. See the vlink - * attribute definition in HTML 4.01. This attribute is deprecated in - * HTML 4.01. - */ - public String getVLink(); - /** - * Color of links that have been visited by the user. See the vlink - * attribute definition in HTML 4.01. This attribute is deprecated in - * HTML 4.01. - */ - public void setVLink(String vLink); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLButtonElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLButtonElement.java deleted file mode 100644 index 7efe1834c26..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLButtonElement.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Push button. See the BUTTON element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLButtonElement extends HTMLElement { - /** - * Returns the FORM element containing this control. Returns - * null if this control is not within the context of a - * form. - */ - public HTMLFormElement getForm(); - - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public String getAccessKey(); - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public void setAccessKey(String accessKey); - - /** - * The control is unavailable in this context. See the disabled attribute - * definition in HTML 4.01. - */ - public boolean getDisabled(); - /** - * The control is unavailable in this context. See the disabled attribute - * definition in HTML 4.01. - */ - public void setDisabled(boolean disabled); - - /** - * Form control or object name when submitted with a form. See the name - * attribute definition in HTML 4.01. - */ - public String getName(); - /** - * Form control or object name when submitted with a form. See the name - * attribute definition in HTML 4.01. - */ - public void setName(String name); - - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public int getTabIndex(); - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public void setTabIndex(int tabIndex); - - /** - * The type of button (all lower case). See the type attribute definition - * in HTML 4.01. - */ - public String getType(); - - /** - * The current form control value. See the value attribute definition in - * HTML 4.01. - */ - public String getValue(); - /** - * The current form control value. See the value attribute definition in - * HTML 4.01. - */ - public void setValue(String value); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLCollection.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLCollection.java deleted file mode 100644 index 6b6751783fe..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLCollection.java +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -import org.w3c.dom.Node; - -/** - * An HTMLCollection is a list of nodes. An individual node may - * be accessed by either ordinal index or the node's name or - * id attributes. Collections in the HTML DOM are assumed to be - * live meaning that they are automatically updated when the underlying - * document is changed. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLCollection { - /** - * This attribute specifies the length or size of the list. - */ - public int getLength(); - - /** - * This method retrieves a node specified by ordinal index. Nodes are - * numbered in tree order (depth-first traversal order). - * @param index The index of the node to be fetched. The index origin is - * 0. - * @return The Node at the corresponding position upon - * success. A value of null is returned if the index is - * out of range. - */ - public Node item(int index); - - /** - * This method retrieves a Node using a name. With [HTML 4.01] - * documents, it first searches for a Node with a matching - * id attribute. If it doesn't find one, it then searches - * for a Node with a matching name attribute, - * but only on those elements that are allowed a name attribute. With [XHTML 1.0] - * documents, this method only searches for Nodes with a - * matching id attribute. This method is case insensitive - * in HTML documents and case sensitive in XHTML documents. - * @param name The name of the Node to be fetched. - * @return The Node with a name or - * id attribute whose value corresponds to the specified - * string. Upon failure (e.g., no node with this name exists), returns - * null. - */ - public Node namedItem(String name); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDListElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDListElement.java deleted file mode 100644 index e8a3bb4a064..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDListElement.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Definition list. See the DL element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLDListElement extends HTMLElement { - /** - * Reduce spacing between list items. See the compact attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public boolean getCompact(); - /** - * Reduce spacing between list items. See the compact attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setCompact(boolean compact); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDirectoryElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDirectoryElement.java deleted file mode 100644 index 5a405c80432..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDirectoryElement.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Directory list. See the DIR element definition in HTML 4.01. This element - * is deprecated in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLDirectoryElement extends HTMLElement { - /** - * Reduce spacing between list items. See the compact attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public boolean getCompact(); - /** - * Reduce spacing between list items. See the compact attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setCompact(boolean compact); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDivElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDivElement.java deleted file mode 100644 index 31107c5f168..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDivElement.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Generic block container. See the DIV element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLDivElement extends HTMLElement { - /** - * Horizontal text alignment. See the align attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getAlign(); - /** - * Horizontal text alignment. See the align attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setAlign(String align); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDocument.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDocument.java deleted file mode 100644 index 79ad1b3363f..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLDocument.java +++ /dev/null @@ -1,237 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -import org.w3c.dom.Document; -import org.w3c.dom.NodeList; -import org.w3c.dom.DOMException; - -/** - * An HTMLDocument is the root of the HTML hierarchy and holds - * the entire content. Besides providing access to the hierarchy, it also - * provides some convenience methods for accessing certain sets of - * information from the document. - *

The following properties have been deprecated in favor of the - * corresponding ones for the BODY element:alinkColorbackground - * bgColorfgColorlinkColorvlinkColorIn DOM Level 2, the method - * getElementById is inherited from the Document - * interface where it was moved to. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLDocument extends Document { - /** - * The title of a document as specified by the TITLE element - * in the head of the document. - */ - public String getTitle(); - /** - * The title of a document as specified by the TITLE element - * in the head of the document. - */ - public void setTitle(String title); - - /** - * Returns the URI [IETF RFC 2396] of the page that linked to this page. The value is an - * empty string if the user navigated to the page directly (not through - * a link, but, for example, via a bookmark). - */ - public String getReferrer(); - - /** - * The domain name of the server that served the document, or - * null if the server cannot be identified by a domain - * name. - */ - public String getDomain(); - - /** - * The absolute URI [IETF RFC 2396] of the document. - */ - public String getURL(); - - /** - * The element that contains the content for the document. In documents - * with BODY contents, returns the BODY - * element. In frameset documents, this returns the outermost - * FRAMESET element. - */ - public HTMLElement getBody(); - /** - * The element that contains the content for the document. In documents - * with BODY contents, returns the BODY - * element. In frameset documents, this returns the outermost - * FRAMESET element. - */ - public void setBody(HTMLElement body); - - /** - * A collection of all the IMG elements in a document. The - * behavior is limited to IMG elements for backwards - * compatibility. As suggested by [HTML 4.01], to include images, authors may use - * the OBJECT element or the IMG element. - * Therefore, it is recommended not to use this attribute to find the - * images in the document but getElementsByTagName with - * HTML 4.01 or getElementsByTagNameNS with XHTML 1.0. - */ - public HTMLCollection getImages(); - - /** - * A collection of all the OBJECT elements that include - * applets and APPLET (deprecated) elements in a document. - */ - public HTMLCollection getApplets(); - - /** - * A collection of all AREA elements and anchor ( - * A) elements in a document with a value for the - * href attribute. - */ - public HTMLCollection getLinks(); - - /** - * A collection of all the forms of a document. - */ - public HTMLCollection getForms(); - - /** - * A collection of all the anchor (A) elements in a document - * with a value for the name attribute. For reasons of - * backward compatibility, the returned set of anchors only contains - * those anchors created with the name attribute, not those - * created with the id attribute. Note that in [XHTML 1.0], the - * name attribute (see section 4.10) has no semantics and - * is only present for legacy user agents: the id attribute - * is used instead. Users should prefer the iterator mechanisms provided - * by [DOM Level 2 Traversal] instead. - */ - public HTMLCollection getAnchors(); - - /** - * This mutable string attribute denotes persistent state information - * that (1) is associated with the current frame or document and (2) is - * composed of information described by the cookies - * non-terminal of [IETF RFC 2965], Section 4.2.2. - *
If no persistent state information is available for the current - * frame or document document, then this property's value is an empty - * string. - *
When this attribute is read, all cookies are returned as a single - * string, with each cookie's name-value pair concatenated into a list - * of name-value pairs, each list item being separated by a ';' - * (semicolon). - *
When this attribute is set, the value it is set to should be a - * string that adheres to the cookie non-terminal of [IETF RFC 2965]; that - * is, it should be a single name-value pair followed by zero or more - * cookie attribute values. If no domain attribute is specified, then - * the domain attribute for the new value defaults to the host portion - * of an absolute URI [IETF RFC 2396] of the current frame or document. If no path - * attribute is specified, then the path attribute for the new value - * defaults to the absolute path portion of the URI [IETF RFC 2396] of the current - * frame or document. If no max-age attribute is specified, then the - * max-age attribute for the new value defaults to a user agent defined - * value. If a cookie with the specified name is already associated with - * the current frame or document, then the new value as well as the new - * attributes replace the old value and attributes. If a max-age - * attribute of 0 is specified for the new value, then any existing - * cookies of the specified name are removed from the cookie storage. - * See [IETF RFC 2965] for the semantics of persistent state item attribute value - * pairs. The precise nature of a user agent session is not defined by - * this specification. - */ - public String getCookie(); - /** - * This mutable string attribute denotes persistent state information - * that (1) is associated with the current frame or document and (2) is - * composed of information described by the cookies - * non-terminal of [IETF RFC 2965], Section 4.2.2. - *
If no persistent state information is available for the current - * frame or document document, then this property's value is an empty - * string. - *
When this attribute is read, all cookies are returned as a single - * string, with each cookie's name-value pair concatenated into a list - * of name-value pairs, each list item being separated by a ';' - * (semicolon). - *
When this attribute is set, the value it is set to should be a - * string that adheres to the cookie non-terminal of [IETF RFC 2965]; that - * is, it should be a single name-value pair followed by zero or more - * cookie attribute values. If no domain attribute is specified, then - * the domain attribute for the new value defaults to the host portion - * of an absolute URI [IETF RFC 2396] of the current frame or document. If no path - * attribute is specified, then the path attribute for the new value - * defaults to the absolute path portion of the URI [IETF RFC 2396] of the current - * frame or document. If no max-age attribute is specified, then the - * max-age attribute for the new value defaults to a user agent defined - * value. If a cookie with the specified name is already associated with - * the current frame or document, then the new value as well as the new - * attributes replace the old value and attributes. If a max-age - * attribute of 0 is specified for the new value, then any existing - * cookies of the specified name are removed from the cookie storage. - * See [IETF RFC 2965] for the semantics of persistent state item attribute value - * pairs. The precise nature of a user agent session is not defined by - * this specification. - * @exception DOMException - * SYNTAX_ERR: If the new value does not adhere to the cookie syntax - * specified by [IETF RFC 2965]. - */ - public void setCookie(String cookie) - throws DOMException; - - /** - * Open a document stream for writing. If a document exists in the target, - * this method clears it. This method and the ones following allow a - * user to add to or replace the structure model of a document using - * strings of unparsed HTML. At the time of writing alternate methods - * for providing similar functionality for both HTML and XML documents - * were being considered (see [DOM Level 3 Load and Save]). - */ - public void open(); - - /** - * Closes a document stream opened by open() and forces - * rendering. - */ - public void close(); - - /** - * Write a string of text to a document stream opened by - * open(). Note that the function will produce a document - * which is not necessarily driven by a DTD and therefore might be - * produce an invalid result in the context of the document. - * @param text The string to be parsed into some structure in the - * document structure model. - */ - public void write(String text); - - /** - * Write a string of text followed by a newline character to a document - * stream opened by open(). Note that the function will - * produce a document which is not necessarily driven by a DTD and - * therefore might be produce an invalid result in the context of the - * document - * @param text The string to be parsed into some structure in the - * document structure model. - */ - public void writeln(String text); - - /** - * With [HTML 4.01] documents, this method returns the (possibly empty) collection - * of elements whose name value is given by - * elementName. In [XHTML 1.0] documents, this methods only return the - * (possibly empty) collection of form controls with matching name. This - * method is case sensitive. - * @param elementName The name attribute value for an - * element. - * @return The matching elements. - */ - public NodeList getElementsByName(String elementName); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLElement.java deleted file mode 100644 index ed37419d3bc..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLElement.java +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -import org.w3c.dom.Element; - -/** - * All HTML element interfaces derive from this class. Elements that only - * expose the HTML core attributes are represented by the base - * HTMLElement interface. These elements are as follows: - * special: SUB, SUP, SPAN, BDOfont: TT, I, B, U, S, STRIKE, BIG, SMALL - * phrase: EM, STRONG, DFN, CODE, SAMP, KBD, VAR, CITE, ACRONYM, ABBRlist: - * DD, DTNOFRAMES, NOSCRIPTADDRESS, CENTERThe style attribute - * of an HTML element is accessible through the - * ElementCSSInlineStyle interface which is defined in the CSS - * module [DOM Level 2 Style Sheets and CSS]. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLElement extends Element { - /** - * The element's identifier. See the id attribute definition in HTML 4.01. - */ - public String getId(); - /** - * The element's identifier. See the id attribute definition in HTML 4.01. - */ - public void setId(String id); - - /** - * The element's advisory title. See the title attribute definition in - * HTML 4.01. - */ - public String getTitle(); - /** - * The element's advisory title. See the title attribute definition in - * HTML 4.01. - */ - public void setTitle(String title); - - /** - * Language code defined in RFC 1766. See the lang attribute definition in - * HTML 4.01. - */ - public String getLang(); - /** - * Language code defined in RFC 1766. See the lang attribute definition in - * HTML 4.01. - */ - public void setLang(String lang); - - /** - * Specifies the base direction of directionally neutral text and the - * directionality of tables. See the dir attribute definition in HTML - * 4.01. - */ - public String getDir(); - /** - * Specifies the base direction of directionally neutral text and the - * directionality of tables. See the dir attribute definition in HTML - * 4.01. - */ - public void setDir(String dir); - - /** - * The class attribute of the element. This attribute has been renamed due - * to conflicts with the "class" keyword exposed by many languages. See - * the class attribute definition in HTML 4.01. - */ - public String getClassName(); - /** - * The class attribute of the element. This attribute has been renamed due - * to conflicts with the "class" keyword exposed by many languages. See - * the class attribute definition in HTML 4.01. - */ - public void setClassName(String className); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFieldSetElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFieldSetElement.java deleted file mode 100644 index c962a567d1b..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFieldSetElement.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Organizes form controls into logical groups. See the FIELDSET element - * definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLFieldSetElement extends HTMLElement { - /** - * Returns the FORM element containing this control. Returns - * null if this control is not within the context of a - * form. - */ - public HTMLFormElement getForm(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFontElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFontElement.java deleted file mode 100644 index 8fa25893c35..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFontElement.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Local change to font. See the FONT element definition in HTML 4.01. This - * element is deprecated in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLFontElement extends HTMLElement { - /** - * Font color. See the color attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public String getColor(); - /** - * Font color. See the color attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public void setColor(String color); - - /** - * Font face identifier. See the face attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public String getFace(); - /** - * Font face identifier. See the face attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setFace(String face); - - /** - * Font size. See the size attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public String getSize(); - /** - * Font size. See the size attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public void setSize(String size); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFormElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFormElement.java deleted file mode 100644 index 109f31a57dd..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFormElement.java +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * The FORM element encompasses behavior similar to a collection - * and an element. It provides direct access to the contained form controls - * as well as the attributes of the form element. See the FORM element - * definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLFormElement extends HTMLElement { - /** - * Returns a collection of all form control elements in the form. - */ - public HTMLCollection getElements(); - - /** - * The number of form controls in the form. - */ - public int getLength(); - - /** - * Names the form. - */ - public String getName(); - /** - * Names the form. - */ - public void setName(String name); - - /** - * List of character sets supported by the server. See the accept-charset - * attribute definition in HTML 4.01. - */ - public String getAcceptCharset(); - /** - * List of character sets supported by the server. See the accept-charset - * attribute definition in HTML 4.01. - */ - public void setAcceptCharset(String acceptCharset); - - /** - * Server-side form handler. See the action attribute definition in HTML - * 4.01. - */ - public String getAction(); - /** - * Server-side form handler. See the action attribute definition in HTML - * 4.01. - */ - public void setAction(String action); - - /** - * The content type of the submitted form, generally - * "application/x-www-form-urlencoded". See the enctype attribute - * definition in HTML 4.01. The onsubmit even handler is not guaranteed - * to be triggered when invoking this method. The behavior is - * inconsistent for historical reasons and authors should not rely on a - * particular one. - */ - public String getEnctype(); - /** - * The content type of the submitted form, generally - * "application/x-www-form-urlencoded". See the enctype attribute - * definition in HTML 4.01. The onsubmit even handler is not guaranteed - * to be triggered when invoking this method. The behavior is - * inconsistent for historical reasons and authors should not rely on a - * particular one. - */ - public void setEnctype(String enctype); - - /** - * HTTP method [IETF RFC 2616] used to submit form. See the method attribute definition - * in HTML 4.01. - */ - public String getMethod(); - /** - * HTTP method [IETF RFC 2616] used to submit form. See the method attribute definition - * in HTML 4.01. - */ - public void setMethod(String method); - - /** - * Frame to render the resource in. See the target attribute definition in - * HTML 4.01. - */ - public String getTarget(); - /** - * Frame to render the resource in. See the target attribute definition in - * HTML 4.01. - */ - public void setTarget(String target); - - /** - * Submits the form. It performs the same action as a submit button. - */ - public void submit(); - - /** - * Restores a form element's default values. It performs the same action - * as a reset button. - */ - public void reset(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFrameElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFrameElement.java deleted file mode 100644 index d6100815f5a..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFrameElement.java +++ /dev/null @@ -1,117 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -import org.w3c.dom.Document; - -/** - * Create a frame. See the FRAME element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLFrameElement extends HTMLElement { - /** - * Request frame borders. See the frameborder attribute definition in HTML - * 4.01. - */ - public String getFrameBorder(); - /** - * Request frame borders. See the frameborder attribute definition in HTML - * 4.01. - */ - public void setFrameBorder(String frameBorder); - - /** - * URI [IETF RFC 2396] designating a long description of this image or frame. See the - * longdesc attribute definition in HTML 4.01. - */ - public String getLongDesc(); - /** - * URI [IETF RFC 2396] designating a long description of this image or frame. See the - * longdesc attribute definition in HTML 4.01. - */ - public void setLongDesc(String longDesc); - - /** - * Frame margin height, in pixels. See the marginheight attribute - * definition in HTML 4.01. - */ - public String getMarginHeight(); - /** - * Frame margin height, in pixels. See the marginheight attribute - * definition in HTML 4.01. - */ - public void setMarginHeight(String marginHeight); - - /** - * Frame margin width, in pixels. See the marginwidth attribute definition - * in HTML 4.01. - */ - public String getMarginWidth(); - /** - * Frame margin width, in pixels. See the marginwidth attribute definition - * in HTML 4.01. - */ - public void setMarginWidth(String marginWidth); - - /** - * The frame name (object of the target attribute). See the - * name attribute definition in HTML 4.01. - */ - public String getName(); - /** - * The frame name (object of the target attribute). See the - * name attribute definition in HTML 4.01. - */ - public void setName(String name); - - /** - * When true, forbid user from resizing frame. See the noresize attribute - * definition in HTML 4.01. - */ - public boolean getNoResize(); - /** - * When true, forbid user from resizing frame. See the noresize attribute - * definition in HTML 4.01. - */ - public void setNoResize(boolean noResize); - - /** - * Specify whether or not the frame should have scrollbars. See the - * scrolling attribute definition in HTML 4.01. - */ - public String getScrolling(); - /** - * Specify whether or not the frame should have scrollbars. See the - * scrolling attribute definition in HTML 4.01. - */ - public void setScrolling(String scrolling); - - /** - * A URI [IETF RFC 2396] designating the initial frame contents. See the src attribute - * definition in HTML 4.01. - */ - public String getSrc(); - /** - * A URI [IETF RFC 2396] designating the initial frame contents. See the src attribute - * definition in HTML 4.01. - */ - public void setSrc(String src); - - /** - * The document this frame contains, if there is any and it is available, - * or null otherwise. - * @since DOM Level 2 - */ - public Document getContentDocument(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFrameSetElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFrameSetElement.java deleted file mode 100644 index 4e5d75bde1b..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLFrameSetElement.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Create a grid of frames. See the FRAMESET element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLFrameSetElement extends HTMLElement { - /** - * The number of columns of frames in the frameset. See the cols attribute - * definition in HTML 4.01. - */ - public String getCols(); - /** - * The number of columns of frames in the frameset. See the cols attribute - * definition in HTML 4.01. - */ - public void setCols(String cols); - - /** - * The number of rows of frames in the frameset. See the rows attribute - * definition in HTML 4.01. - */ - public String getRows(); - /** - * The number of rows of frames in the frameset. See the rows attribute - * definition in HTML 4.01. - */ - public void setRows(String rows); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHRElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHRElement.java deleted file mode 100644 index b09ec0f3fb1..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHRElement.java +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Create a horizontal rule. See the HR element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLHRElement extends HTMLElement { - /** - * Align the rule on the page. See the align attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getAlign(); - /** - * Align the rule on the page. See the align attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setAlign(String align); - - /** - * Indicates to the user agent that there should be no shading in the - * rendering of this element. See the noshade attribute definition in - * HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public boolean getNoShade(); - /** - * Indicates to the user agent that there should be no shading in the - * rendering of this element. See the noshade attribute definition in - * HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setNoShade(boolean noShade); - - /** - * The height of the rule. See the size attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public String getSize(); - /** - * The height of the rule. See the size attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setSize(String size); - - /** - * The width of the rule. See the width attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public String getWidth(); - /** - * The width of the rule. See the width attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setWidth(String width); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHeadElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHeadElement.java deleted file mode 100644 index c4550a50711..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHeadElement.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Document head information. See the HEAD element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLHeadElement extends HTMLElement { - /** - * URI [IETF RFC 2396] designating a metadata profile. See the profile attribute - * definition in HTML 4.01. - */ - public String getProfile(); - /** - * URI [IETF RFC 2396] designating a metadata profile. See the profile attribute - * definition in HTML 4.01. - */ - public void setProfile(String profile); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHeadingElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHeadingElement.java deleted file mode 100644 index 149752507e3..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHeadingElement.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * For the H1 to H6 elements. See the H1 element - * definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLHeadingElement extends HTMLElement { - /** - * Horizontal text alignment. See the align attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getAlign(); - /** - * Horizontal text alignment. See the align attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setAlign(String align); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHtmlElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHtmlElement.java deleted file mode 100644 index 5ba30fe3177..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLHtmlElement.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Root of an HTML document. See the HTML element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLHtmlElement extends HTMLElement { - /** - * Version information about the document's DTD. See the version attribute - * definition in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getVersion(); - /** - * Version information about the document's DTD. See the version attribute - * definition in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setVersion(String version); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLIFrameElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLIFrameElement.java deleted file mode 100644 index 7cac12f89e5..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLIFrameElement.java +++ /dev/null @@ -1,137 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -import org.w3c.dom.Document; - -/** - * Inline subwindows. See the IFRAME element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLIFrameElement extends HTMLElement { - /** - * Aligns this object (vertically or horizontally) with respect to its - * surrounding text. See the align attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public String getAlign(); - /** - * Aligns this object (vertically or horizontally) with respect to its - * surrounding text. See the align attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setAlign(String align); - - /** - * Request frame borders. See the frameborder attribute definition in HTML - * 4.01. - */ - public String getFrameBorder(); - /** - * Request frame borders. See the frameborder attribute definition in HTML - * 4.01. - */ - public void setFrameBorder(String frameBorder); - - /** - * Frame height. See the height attribute definition in HTML 4.01. - */ - public String getHeight(); - /** - * Frame height. See the height attribute definition in HTML 4.01. - */ - public void setHeight(String height); - - /** - * URI [IETF RFC 2396] designating a long description of this image or frame. See the - * longdesc attribute definition in HTML 4.01. - */ - public String getLongDesc(); - /** - * URI [IETF RFC 2396] designating a long description of this image or frame. See the - * longdesc attribute definition in HTML 4.01. - */ - public void setLongDesc(String longDesc); - - /** - * Frame margin height, in pixels. See the marginheight attribute - * definition in HTML 4.01. - */ - public String getMarginHeight(); - /** - * Frame margin height, in pixels. See the marginheight attribute - * definition in HTML 4.01. - */ - public void setMarginHeight(String marginHeight); - - /** - * Frame margin width, in pixels. See the marginwidth attribute definition - * in HTML 4.01. - */ - public String getMarginWidth(); - /** - * Frame margin width, in pixels. See the marginwidth attribute definition - * in HTML 4.01. - */ - public void setMarginWidth(String marginWidth); - - /** - * The frame name (object of the target attribute). See the - * name attribute definition in HTML 4.01. - */ - public String getName(); - /** - * The frame name (object of the target attribute). See the - * name attribute definition in HTML 4.01. - */ - public void setName(String name); - - /** - * Specify whether or not the frame should have scrollbars. See the - * scrolling attribute definition in HTML 4.01. - */ - public String getScrolling(); - /** - * Specify whether or not the frame should have scrollbars. See the - * scrolling attribute definition in HTML 4.01. - */ - public void setScrolling(String scrolling); - - /** - * A URI [IETF RFC 2396] designating the initial frame contents. See the src attribute - * definition in HTML 4.01. - */ - public String getSrc(); - /** - * A URI [IETF RFC 2396] designating the initial frame contents. See the src attribute - * definition in HTML 4.01. - */ - public void setSrc(String src); - - /** - * Frame width. See the width attribute definition in HTML 4.01. - */ - public String getWidth(); - /** - * Frame width. See the width attribute definition in HTML 4.01. - */ - public void setWidth(String width); - - /** - * The document this frame contains, if there is any and it is available, - * or null otherwise. - * @since DOM Level 2 - */ - public Document getContentDocument(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLImageElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLImageElement.java deleted file mode 100644 index 8e8142184d4..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLImageElement.java +++ /dev/null @@ -1,176 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Embedded image. See the IMG element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLImageElement extends HTMLElement { - /** - * The name of the element (for backwards compatibility). - */ - public String getName(); - /** - * The name of the element (for backwards compatibility). - */ - public void setName(String name); - - /** - * Aligns this object (vertically or horizontally) with respect to its - * surrounding text. See the align attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public String getAlign(); - /** - * Aligns this object (vertically or horizontally) with respect to its - * surrounding text. See the align attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setAlign(String align); - - /** - * Alternate text for user agents not rendering the normal content of this - * element. See the alt attribute definition in HTML 4.01. - */ - public String getAlt(); - /** - * Alternate text for user agents not rendering the normal content of this - * element. See the alt attribute definition in HTML 4.01. - */ - public void setAlt(String alt); - - /** - * Width of border around image. See the border attribute definition in - * HTML 4.01. This attribute is deprecated in HTML 4.01. Note that the - * type of this attribute was DOMString in DOM Level 1 HTML [DOM Level 1] - * . - */ - public String getBorder(); - /** - * Width of border around image. See the border attribute definition in - * HTML 4.01. This attribute is deprecated in HTML 4.01. Note that the - * type of this attribute was DOMString in DOM Level 1 HTML [DOM Level 1] - * . - */ - public void setBorder(String border); - - /** - * Height of the image in pixels. See the height attribute definition in - * HTML 4.01. Note that the type of this attribute was - * DOMString in DOM Level 1 HTML [DOM Level 1]. - * @version DOM Level 2 - */ - public int getHeight(); - /** - * Height of the image in pixels. See the height attribute definition in - * HTML 4.01. Note that the type of this attribute was - * DOMString in DOM Level 1 HTML [DOM Level 1]. - * @version DOM Level 2 - */ - public void setHeight(int height); - - /** - * Horizontal space to the left and right of this image in pixels. See the - * hspace attribute definition in HTML 4.01. This attribute is - * deprecated in HTML 4.01. Note that the type of this attribute was - * DOMString in DOM Level 1 HTML [DOM Level 1]. - * @version DOM Level 2 - */ - public int getHspace(); - /** - * Horizontal space to the left and right of this image in pixels. See the - * hspace attribute definition in HTML 4.01. This attribute is - * deprecated in HTML 4.01. Note that the type of this attribute was - * DOMString in DOM Level 1 HTML [DOM Level 1]. - * @version DOM Level 2 - */ - public void setHspace(int hspace); - - /** - * Use server-side image map. See the ismap attribute definition in HTML - * 4.01. - */ - public boolean getIsMap(); - /** - * Use server-side image map. See the ismap attribute definition in HTML - * 4.01. - */ - public void setIsMap(boolean isMap); - - /** - * URI [IETF RFC 2396] designating a long description of this image or frame. See the - * longdesc attribute definition in HTML 4.01. - */ - public String getLongDesc(); - /** - * URI [IETF RFC 2396] designating a long description of this image or frame. See the - * longdesc attribute definition in HTML 4.01. - */ - public void setLongDesc(String longDesc); - - /** - * URI [IETF RFC 2396] designating the source of this image. See the src attribute - * definition in HTML 4.01. - */ - public String getSrc(); - /** - * URI [IETF RFC 2396] designating the source of this image. See the src attribute - * definition in HTML 4.01. - */ - public void setSrc(String src); - - /** - * Use client-side image map. See the usemap attribute definition in HTML - * 4.01. - */ - public String getUseMap(); - /** - * Use client-side image map. See the usemap attribute definition in HTML - * 4.01. - */ - public void setUseMap(String useMap); - - /** - * Vertical space above and below this image in pixels. See the vspace - * attribute definition in HTML 4.01. This attribute is deprecated in - * HTML 4.01. Note that the type of this attribute was "DOMString" in - * DOM Level 1 HTML [DOM Level 1]. - * @version DOM Level 2 - */ - public int getVspace(); - /** - * Vertical space above and below this image in pixels. See the vspace - * attribute definition in HTML 4.01. This attribute is deprecated in - * HTML 4.01. Note that the type of this attribute was "DOMString" in - * DOM Level 1 HTML [DOM Level 1]. - * @version DOM Level 2 - */ - public void setVspace(int vspace); - - /** - * The width of the image in pixels. See the width attribute definition in - * HTML 4.01. Note that the type of this attribute was - * DOMString in DOM Level 1 HTML [DOM Level 1]. - * @version DOM Level 2 - */ - public int getWidth(); - /** - * The width of the image in pixels. See the width attribute definition in - * HTML 4.01. Note that the type of this attribute was - * DOMString in DOM Level 1 HTML [DOM Level 1]. - * @version DOM Level 2 - */ - public void setWidth(int width); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLInputElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLInputElement.java deleted file mode 100644 index b0d0d9d091b..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLInputElement.java +++ /dev/null @@ -1,303 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Form control.Depending upon the environment in which the page is being - * viewed, the value property may be read-only for the file upload input - * type. For the "password" input type, the actual value returned may be - * masked to prevent unauthorized use. See the INPUT element definition in [HTML 4.01]. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLInputElement extends HTMLElement { - /** - * When the type attribute of the element has the value - * "text", "file" or "password", this represents the HTML value - * attribute of the element. The value of this attribute does not change - * if the contents of the corresponding form control, in an interactive - * user agent, changes. See the value attribute definition in HTML 4.01. - */ - public String getDefaultValue(); - /** - * When the type attribute of the element has the value - * "text", "file" or "password", this represents the HTML value - * attribute of the element. The value of this attribute does not change - * if the contents of the corresponding form control, in an interactive - * user agent, changes. See the value attribute definition in HTML 4.01. - */ - public void setDefaultValue(String defaultValue); - - /** - * When type has the value "radio" or "checkbox", this - * represents the HTML checked attribute of the element. The value of - * this attribute does not change if the state of the corresponding form - * control, in an interactive user agent, changes. See the checked - * attribute definition in HTML 4.01. - */ - public boolean getDefaultChecked(); - /** - * When type has the value "radio" or "checkbox", this - * represents the HTML checked attribute of the element. The value of - * this attribute does not change if the state of the corresponding form - * control, in an interactive user agent, changes. See the checked - * attribute definition in HTML 4.01. - */ - public void setDefaultChecked(boolean defaultChecked); - - /** - * Returns the FORM element containing this control. Returns - * null if this control is not within the context of a - * form. - */ - public HTMLFormElement getForm(); - - /** - * A comma-separated list of content types that a server processing this - * form will handle correctly. See the accept attribute definition in - * HTML 4.01. - */ - public String getAccept(); - /** - * A comma-separated list of content types that a server processing this - * form will handle correctly. See the accept attribute definition in - * HTML 4.01. - */ - public void setAccept(String accept); - - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public String getAccessKey(); - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public void setAccessKey(String accessKey); - - /** - * Aligns this object (vertically or horizontally) with respect to its - * surrounding text. See the align attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public String getAlign(); - /** - * Aligns this object (vertically or horizontally) with respect to its - * surrounding text. See the align attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setAlign(String align); - - /** - * Alternate text for user agents not rendering the normal content of this - * element. See the alt attribute definition in HTML 4.01. - */ - public String getAlt(); - /** - * Alternate text for user agents not rendering the normal content of this - * element. See the alt attribute definition in HTML 4.01. - */ - public void setAlt(String alt); - - /** - * When the type attribute of the element has the value - * "radio" or "checkbox", this represents the current state of the form - * control, in an interactive user agent. Changes to this attribute - * change the state of the form control, but do not change the value of - * the HTML checked attribute of the INPUT element.During the handling - * of a click event on an input element with a type attribute that has - * the value "radio" or "checkbox", some implementations may change the - * value of this property before the event is being dispatched in the - * document. If the default action of the event is canceled, the value - * of the property may be changed back to its original value. This means - * that the value of this property during the handling of click events - * is implementation dependent. - */ - public boolean getChecked(); - /** - * When the type attribute of the element has the value - * "radio" or "checkbox", this represents the current state of the form - * control, in an interactive user agent. Changes to this attribute - * change the state of the form control, but do not change the value of - * the HTML checked attribute of the INPUT element.During the handling - * of a click event on an input element with a type attribute that has - * the value "radio" or "checkbox", some implementations may change the - * value of this property before the event is being dispatched in the - * document. If the default action of the event is canceled, the value - * of the property may be changed back to its original value. This means - * that the value of this property during the handling of click events - * is implementation dependent. - */ - public void setChecked(boolean checked); - - /** - * The control is unavailable in this context. See the disabled attribute - * definition in HTML 4.01. - */ - public boolean getDisabled(); - /** - * The control is unavailable in this context. See the disabled attribute - * definition in HTML 4.01. - */ - public void setDisabled(boolean disabled); - - /** - * Maximum number of characters for text fields, when type - * has the value "text" or "password". See the maxlength attribute - * definition in HTML 4.01. - */ - public int getMaxLength(); - /** - * Maximum number of characters for text fields, when type - * has the value "text" or "password". See the maxlength attribute - * definition in HTML 4.01. - */ - public void setMaxLength(int maxLength); - - /** - * Form control or object name when submitted with a form. See the name - * attribute definition in HTML 4.01. - */ - public String getName(); - /** - * Form control or object name when submitted with a form. See the name - * attribute definition in HTML 4.01. - */ - public void setName(String name); - - /** - * This control is read-only. Relevant only when type has the - * value "text" or "password". See the readonly attribute definition in - * HTML 4.01. - */ - public boolean getReadOnly(); - /** - * This control is read-only. Relevant only when type has the - * value "text" or "password". See the readonly attribute definition in - * HTML 4.01. - */ - public void setReadOnly(boolean readOnly); - - /** - * Size information. The precise meaning is specific to each type of - * field. See the size attribute definition in HTML 4.01. - * @version DOM Level 2 - */ - public int getSize(); - /** - * Size information. The precise meaning is specific to each type of - * field. See the size attribute definition in HTML 4.01. - * @version DOM Level 2 - */ - public void setSize(int size); - - /** - * When the type attribute has the value "image", this - * attribute specifies the location of the image to be used to decorate - * the graphical submit button. See the src attribute definition in HTML - * 4.01. - */ - public String getSrc(); - /** - * When the type attribute has the value "image", this - * attribute specifies the location of the image to be used to decorate - * the graphical submit button. See the src attribute definition in HTML - * 4.01. - */ - public void setSrc(String src); - - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public int getTabIndex(); - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public void setTabIndex(int tabIndex); - - /** - * The type of control created (all lower case). See the type attribute - * definition in HTML 4.01. - * @version DOM Level 2 - */ - public String getType(); - /** - * The type of control created (all lower case). See the type attribute - * definition in HTML 4.01. - * @version DOM Level 2 - */ - public void setType(String type); - - /** - * Use client-side image map. See the usemap attribute definition in HTML - * 4.01. - */ - public String getUseMap(); - /** - * Use client-side image map. See the usemap attribute definition in HTML - * 4.01. - */ - public void setUseMap(String useMap); - - /** - * When the type attribute of the element has the value - * "text", "file" or "password", this represents the current contents of - * the corresponding form control, in an interactive user agent. - * Changing this attribute changes the contents of the form control, but - * does not change the value of the HTML value attribute of the element. - * When the type attribute of the element has the value - * "button", "hidden", "submit", "reset", "image", "checkbox" or - * "radio", this represents the HTML value attribute of the element. See - * the value attribute definition in HTML 4.01. - */ - public String getValue(); - /** - * When the type attribute of the element has the value - * "text", "file" or "password", this represents the current contents of - * the corresponding form control, in an interactive user agent. - * Changing this attribute changes the contents of the form control, but - * does not change the value of the HTML value attribute of the element. - * When the type attribute of the element has the value - * "button", "hidden", "submit", "reset", "image", "checkbox" or - * "radio", this represents the HTML value attribute of the element. See - * the value attribute definition in HTML 4.01. - */ - public void setValue(String value); - - /** - * Removes keyboard focus from this element. - */ - public void blur(); - - /** - * Gives keyboard focus to this element. - */ - public void focus(); - - /** - * Select the contents of the text area. For INPUT elements - * whose type attribute has one of the following values: - * "text", "file", or "password". - */ - public void select(); - - /** - * Simulate a mouse-click. For INPUT elements whose - * type attribute has one of the following values: - * "button", "checkbox", "radio", "reset", or "submit". - */ - public void click(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLIsIndexElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLIsIndexElement.java deleted file mode 100644 index 898b9e46a01..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLIsIndexElement.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * This element is used for single-line text input. See the ISINDEX element - * definition in HTML 4.01. This element is deprecated in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLIsIndexElement extends HTMLElement { - /** - * Returns the FORM element containing this control. Returns - * null if this control is not within the context of a - * form. - */ - public HTMLFormElement getForm(); - - /** - * The prompt message. See the prompt attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public String getPrompt(); - /** - * The prompt message. See the prompt attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setPrompt(String prompt); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLIElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLIElement.java deleted file mode 100644 index df20c000ac2..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLIElement.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * List item. See the LI element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLLIElement extends HTMLElement { - /** - * List item bullet style. See the type attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public String getType(); - /** - * List item bullet style. See the type attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setType(String type); - - /** - * Reset sequence number when used in OL. See the value - * attribute definition in HTML 4.01. This attribute is deprecated in - * HTML 4.01. - */ - public int getValue(); - /** - * Reset sequence number when used in OL. See the value - * attribute definition in HTML 4.01. This attribute is deprecated in - * HTML 4.01. - */ - public void setValue(int value); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLabelElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLabelElement.java deleted file mode 100644 index 69a104053c2..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLabelElement.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Form field label text. See the LABEL element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLLabelElement extends HTMLElement { - /** - * Returns the FORM element containing this control. Returns - * null if this control is not within the context of a - * form. - */ - public HTMLFormElement getForm(); - - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public String getAccessKey(); - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public void setAccessKey(String accessKey); - - /** - * This attribute links this label with another form control by - * id attribute. See the for attribute definition in HTML - * 4.01. - */ - public String getHtmlFor(); - /** - * This attribute links this label with another form control by - * id attribute. See the for attribute definition in HTML - * 4.01. - */ - public void setHtmlFor(String htmlFor); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLegendElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLegendElement.java deleted file mode 100644 index b976d099a6a..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLegendElement.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Provides a caption for a FIELDSET grouping. See the LEGEND - * element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLLegendElement extends HTMLElement { - /** - * Returns the FORM element containing this control. Returns - * null if this control is not within the context of a - * form. - */ - public HTMLFormElement getForm(); - - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public String getAccessKey(); - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public void setAccessKey(String accessKey); - - /** - * Text alignment relative to FIELDSET. See the align - * attribute definition in HTML 4.01. This attribute is deprecated in - * HTML 4.01. - */ - public String getAlign(); - /** - * Text alignment relative to FIELDSET. See the align - * attribute definition in HTML 4.01. This attribute is deprecated in - * HTML 4.01. - */ - public void setAlign(String align); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLinkElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLinkElement.java deleted file mode 100644 index 4ed72ca9483..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLLinkElement.java +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * The LINK element specifies a link to an external resource, and - * defines this document's relationship to that resource (or vice versa). - * See the LINK element definition in HTML 4.01 (see also the - * LinkStyle interface in the StyleSheet module [DOM Level 2 Style Sheets and CSS]). - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLLinkElement extends HTMLElement { - /** - * Enables/disables the link. This is currently only used for style sheet - * links, and may be used to activate or deactivate style sheets. - */ - public boolean getDisabled(); - /** - * Enables/disables the link. This is currently only used for style sheet - * links, and may be used to activate or deactivate style sheets. - */ - public void setDisabled(boolean disabled); - - /** - * The character encoding of the resource being linked to. See the charset - * attribute definition in HTML 4.01. - */ - public String getCharset(); - /** - * The character encoding of the resource being linked to. See the charset - * attribute definition in HTML 4.01. - */ - public void setCharset(String charset); - - /** - * The URI [IETF RFC 2396] of the linked resource. See the href attribute definition in - * HTML 4.01. - */ - public String getHref(); - /** - * The URI [IETF RFC 2396] of the linked resource. See the href attribute definition in - * HTML 4.01. - */ - public void setHref(String href); - - /** - * Language code of the linked resource. See the hreflang attribute - * definition in HTML 4.01. - */ - public String getHreflang(); - /** - * Language code of the linked resource. See the hreflang attribute - * definition in HTML 4.01. - */ - public void setHreflang(String hreflang); - - /** - * Designed for use with one or more target media. See the media attribute - * definition in HTML 4.01. - */ - public String getMedia(); - /** - * Designed for use with one or more target media. See the media attribute - * definition in HTML 4.01. - */ - public void setMedia(String media); - - /** - * Forward link type. See the rel attribute definition in HTML 4.01. - */ - public String getRel(); - /** - * Forward link type. See the rel attribute definition in HTML 4.01. - */ - public void setRel(String rel); - - /** - * Reverse link type. See the rev attribute definition in HTML 4.01. - */ - public String getRev(); - /** - * Reverse link type. See the rev attribute definition in HTML 4.01. - */ - public void setRev(String rev); - - /** - * Frame to render the resource in. See the target attribute definition in - * HTML 4.01. - */ - public String getTarget(); - /** - * Frame to render the resource in. See the target attribute definition in - * HTML 4.01. - */ - public void setTarget(String target); - - /** - * Advisory content type. See the type attribute definition in HTML 4.01. - */ - public String getType(); - /** - * Advisory content type. See the type attribute definition in HTML 4.01. - */ - public void setType(String type); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLMapElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLMapElement.java deleted file mode 100644 index e413727ab4d..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLMapElement.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Client-side image map. See the MAP element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLMapElement extends HTMLElement { - /** - * The list of areas defined for the image map. - */ - public HTMLCollection getAreas(); - - /** - * Names the map (for use with usemap). See the name - * attribute definition in HTML 4.01. - */ - public String getName(); - /** - * Names the map (for use with usemap). See the name - * attribute definition in HTML 4.01. - */ - public void setName(String name); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLMenuElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLMenuElement.java deleted file mode 100644 index 7c8ec62d0eb..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLMenuElement.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Menu list. See the MENU element definition in HTML 4.01. This element is - * deprecated in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLMenuElement extends HTMLElement { - /** - * Reduce spacing between list items. See the compact attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public boolean getCompact(); - /** - * Reduce spacing between list items. See the compact attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setCompact(boolean compact); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLMetaElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLMetaElement.java deleted file mode 100644 index b6bf05d40c7..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLMetaElement.java +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * This contains generic meta-information about the document. See the META - * element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLMetaElement extends HTMLElement { - /** - * Associated information. See the content attribute definition in HTML - * 4.01. - */ - public String getContent(); - /** - * Associated information. See the content attribute definition in HTML - * 4.01. - */ - public void setContent(String content); - - /** - * HTTP response header name [IETF RFC 2616]. See the http-equiv attribute definition in - * HTML 4.01. - */ - public String getHttpEquiv(); - /** - * HTTP response header name [IETF RFC 2616]. See the http-equiv attribute definition in - * HTML 4.01. - */ - public void setHttpEquiv(String httpEquiv); - - /** - * Meta information name. See the name attribute definition in HTML 4.01. - */ - public String getName(); - /** - * Meta information name. See the name attribute definition in HTML 4.01. - */ - public void setName(String name); - - /** - * Select form of content. See the scheme attribute definition in HTML - * 4.01. - */ - public String getScheme(); - /** - * Select form of content. See the scheme attribute definition in HTML - * 4.01. - */ - public void setScheme(String scheme); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLModElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLModElement.java deleted file mode 100644 index 006ba69c4bd..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLModElement.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Notice of modification to part of a document. See the INS and DEL element - * definitions in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLModElement extends HTMLElement { - /** - * A URI [IETF RFC 2396] designating a document that describes the reason for the change. - * See the cite attribute definition in HTML 4.01. - */ - public String getCite(); - /** - * A URI [IETF RFC 2396] designating a document that describes the reason for the change. - * See the cite attribute definition in HTML 4.01. - */ - public void setCite(String cite); - - /** - * The date and time of the change. See the datetime attribute definition - * in HTML 4.01. - */ - public String getDateTime(); - /** - * The date and time of the change. See the datetime attribute definition - * in HTML 4.01. - */ - public void setDateTime(String dateTime); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOListElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOListElement.java deleted file mode 100644 index 13041c8a106..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOListElement.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Ordered list. See the OL element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLOListElement extends HTMLElement { - /** - * Reduce spacing between list items. See the compact attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public boolean getCompact(); - /** - * Reduce spacing between list items. See the compact attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setCompact(boolean compact); - - /** - * Starting sequence number. See the start attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public int getStart(); - /** - * Starting sequence number. See the start attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setStart(int start); - - /** - * Numbering style. See the type attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public String getType(); - /** - * Numbering style. See the type attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public void setType(String type); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLObjectElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLObjectElement.java deleted file mode 100644 index 11795468d77..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLObjectElement.java +++ /dev/null @@ -1,230 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -import org.w3c.dom.Document; - -/** - * Generic embedded object.In principle, all properties on the object element - * are read-write but in some environments some properties may be read-only - * once the underlying object is instantiated. See the OBJECT element - * definition in [HTML 4.01]. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLObjectElement extends HTMLElement { - /** - * Returns the FORM element containing this control. Returns - * null if this control is not within the context of a - * form. - */ - public HTMLFormElement getForm(); - - /** - * Applet class file. See the code attribute for - * HTMLAppletElement. - */ - public String getCode(); - /** - * Applet class file. See the code attribute for - * HTMLAppletElement. - */ - public void setCode(String code); - - /** - * Aligns this object (vertically or horizontally) with respect to its - * surrounding text. See the align attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public String getAlign(); - /** - * Aligns this object (vertically or horizontally) with respect to its - * surrounding text. See the align attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setAlign(String align); - - /** - * Space-separated list of archives. See the archive attribute definition - * in HTML 4.01. - */ - public String getArchive(); - /** - * Space-separated list of archives. See the archive attribute definition - * in HTML 4.01. - */ - public void setArchive(String archive); - - /** - * Width of border around the object. See the border attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getBorder(); - /** - * Width of border around the object. See the border attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setBorder(String border); - - /** - * Base URI [IETF RFC 2396] for classid, data, and - * archive attributes. See the codebase attribute definition - * in HTML 4.01. - */ - public String getCodeBase(); - /** - * Base URI [IETF RFC 2396] for classid, data, and - * archive attributes. See the codebase attribute definition - * in HTML 4.01. - */ - public void setCodeBase(String codeBase); - - /** - * Content type for data downloaded via classid attribute. - * See the codetype attribute definition in HTML 4.01. - */ - public String getCodeType(); - /** - * Content type for data downloaded via classid attribute. - * See the codetype attribute definition in HTML 4.01. - */ - public void setCodeType(String codeType); - - /** - * A URI [IETF RFC 2396] specifying the location of the object's data. See the data - * attribute definition in HTML 4.01. - */ - public String getData(); - /** - * A URI [IETF RFC 2396] specifying the location of the object's data. See the data - * attribute definition in HTML 4.01. - */ - public void setData(String data); - - /** - * Declare (for future reference), but do not instantiate, this object. - * See the declare attribute definition in HTML 4.01. - */ - public boolean getDeclare(); - /** - * Declare (for future reference), but do not instantiate, this object. - * See the declare attribute definition in HTML 4.01. - */ - public void setDeclare(boolean declare); - - /** - * Override height. See the height attribute definition in HTML 4.01. - */ - public String getHeight(); - /** - * Override height. See the height attribute definition in HTML 4.01. - */ - public void setHeight(String height); - - /** - * Horizontal space, in pixels, to the left and right of this image, - * applet, or object. See the hspace attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public int getHspace(); - /** - * Horizontal space, in pixels, to the left and right of this image, - * applet, or object. See the hspace attribute definition in HTML 4.01. - * This attribute is deprecated in HTML 4.01. - */ - public void setHspace(int hspace); - - /** - * Form control or object name when submitted with a form. See the name - * attribute definition in HTML 4.01. - */ - public String getName(); - /** - * Form control or object name when submitted with a form. See the name - * attribute definition in HTML 4.01. - */ - public void setName(String name); - - /** - * Message to render while loading the object. See the standby attribute - * definition in HTML 4.01. - */ - public String getStandby(); - /** - * Message to render while loading the object. See the standby attribute - * definition in HTML 4.01. - */ - public void setStandby(String standby); - - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public int getTabIndex(); - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public void setTabIndex(int tabIndex); - - /** - * Content type for data downloaded via data attribute. See - * the type attribute definition in HTML 4.01. - */ - public String getType(); - /** - * Content type for data downloaded via data attribute. See - * the type attribute definition in HTML 4.01. - */ - public void setType(String type); - - /** - * Use client-side image map. See the usemap attribute definition in HTML - * 4.01. - */ - public String getUseMap(); - /** - * Use client-side image map. See the usemap attribute definition in HTML - * 4.01. - */ - public void setUseMap(String useMap); - - /** - * Vertical space, in pixels, above and below this image, applet, or - * object. See the vspace attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public int getVspace(); - /** - * Vertical space, in pixels, above and below this image, applet, or - * object. See the vspace attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public void setVspace(int vspace); - - /** - * Override width. See the width attribute definition in HTML 4.01. - */ - public String getWidth(); - /** - * Override width. See the width attribute definition in HTML 4.01. - */ - public void setWidth(String width); - - /** - * The document this object contains, if there is any and it is available, - * or null otherwise. - * @since DOM Level 2 - */ - public Document getContentDocument(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOptGroupElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOptGroupElement.java deleted file mode 100644 index 8bd606a7126..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOptGroupElement.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Group options together in logical subdivisions. See the OPTGROUP element - * definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLOptGroupElement extends HTMLElement { - /** - * The control is unavailable in this context. See the disabled attribute - * definition in HTML 4.01. - */ - public boolean getDisabled(); - /** - * The control is unavailable in this context. See the disabled attribute - * definition in HTML 4.01. - */ - public void setDisabled(boolean disabled); - - /** - * Assigns a label to this option group. See the label attribute definition - * in HTML 4.01. - */ - public String getLabel(); - /** - * Assigns a label to this option group. See the label attribute definition - * in HTML 4.01. - */ - public void setLabel(String label); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOptionElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOptionElement.java deleted file mode 100644 index f3b38a6019c..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOptionElement.java +++ /dev/null @@ -1,104 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * A selectable choice. See the OPTION element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLOptionElement extends HTMLElement { - /** - * Returns the FORM element containing this control. Returns - * null if this control is not within the context of a - * form. - */ - public HTMLFormElement getForm(); - - /** - * Represents the value of the HTML selected attribute. The value of this - * attribute does not change if the state of the corresponding form - * control, in an interactive user agent, changes. See the selected - * attribute definition in HTML 4.01. - * @version DOM Level 2 - */ - public boolean getDefaultSelected(); - /** - * Represents the value of the HTML selected attribute. The value of this - * attribute does not change if the state of the corresponding form - * control, in an interactive user agent, changes. See the selected - * attribute definition in HTML 4.01. - * @version DOM Level 2 - */ - public void setDefaultSelected(boolean defaultSelected); - - /** - * The text contained within the option element. - */ - public String getText(); - - /** - * The index of this OPTION in its parent SELECT - * , starting from 0. - * @version DOM Level 2 - */ - public int getIndex(); - - /** - * The control is unavailable in this context. See the disabled attribute - * definition in HTML 4.01. - */ - public boolean getDisabled(); - /** - * The control is unavailable in this context. See the disabled attribute - * definition in HTML 4.01. - */ - public void setDisabled(boolean disabled); - - /** - * Option label for use in hierarchical menus. See the label attribute - * definition in HTML 4.01. - */ - public String getLabel(); - /** - * Option label for use in hierarchical menus. See the label attribute - * definition in HTML 4.01. - */ - public void setLabel(String label); - - /** - * Represents the current state of the corresponding form control, in an - * interactive user agent. Changing this attribute changes the state of - * the form control, but does not change the value of the HTML selected - * attribute of the element. - */ - public boolean getSelected(); - /** - * Represents the current state of the corresponding form control, in an - * interactive user agent. Changing this attribute changes the state of - * the form control, but does not change the value of the HTML selected - * attribute of the element. - */ - public void setSelected(boolean selected); - - /** - * The current form control value. See the value attribute definition in - * HTML 4.01. - */ - public String getValue(); - /** - * The current form control value. See the value attribute definition in - * HTML 4.01. - */ - public void setValue(String value); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOptionsCollection.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOptionsCollection.java deleted file mode 100644 index d70d92d73e2..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLOptionsCollection.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -import org.w3c.dom.Node; -import org.w3c.dom.DOMException; - -/** - * An HTMLOptionsCollection is a list of nodes representing HTML - * option element. An individual node may be accessed by either ordinal - * index or the node's name or id attributes. - * Collections in the HTML DOM are assumed to be live meaning that they are - * automatically updated when the underlying document is changed. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - * @since DOM Level 2 - */ -public interface HTMLOptionsCollection { - /** - * This attribute specifies the length or size of the list. - */ - public int getLength(); - /** - * This attribute specifies the length or size of the list. - * @exception DOMException - * NOT_SUPPORTED_ERR: if setting the length is not allowed by the - * implementation. - */ - public void setLength(int length) - throws DOMException; - - /** - * This method retrieves a node specified by ordinal index. Nodes are - * numbered in tree order (depth-first traversal order). - * @param index The index of the node to be fetched. The index origin is - * 0. - * @return The Node at the corresponding position upon - * success. A value of null is returned if the index is - * out of range. - */ - public Node item(int index); - - /** - * This method retrieves a Node using a name. It first - * searches for a Node with a matching id - * attribute. If it doesn't find one, it then searches for a - * Node with a matching name attribute, but - * only on those elements that are allowed a name attribute. This method - * is case insensitive in HTML documents and case sensitive in XHTML - * documents. - * @param name The name of the Node to be fetched. - * @return The Node with a name or - * id attribute whose value corresponds to the specified - * string. Upon failure (e.g., no node with this name exists), returns - * null. - */ - public Node namedItem(String name); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLParagraphElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLParagraphElement.java deleted file mode 100644 index 1cb8e04203b..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLParagraphElement.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Paragraphs. See the P element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLParagraphElement extends HTMLElement { - /** - * Horizontal text alignment. See the align attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getAlign(); - /** - * Horizontal text alignment. See the align attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setAlign(String align); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLParamElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLParamElement.java deleted file mode 100644 index ecf91c287d3..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLParamElement.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Parameters fed to the OBJECT element. See the PARAM element - * definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLParamElement extends HTMLElement { - /** - * The name of a run-time parameter. See the name attribute definition in - * HTML 4.01. - */ - public String getName(); - /** - * The name of a run-time parameter. See the name attribute definition in - * HTML 4.01. - */ - public void setName(String name); - - /** - * Content type for the value attribute when - * valuetype has the value "ref". See the type attribute - * definition in HTML 4.01. - */ - public String getType(); - /** - * Content type for the value attribute when - * valuetype has the value "ref". See the type attribute - * definition in HTML 4.01. - */ - public void setType(String type); - - /** - * The value of a run-time parameter. See the value attribute definition - * in HTML 4.01. - */ - public String getValue(); - /** - * The value of a run-time parameter. See the value attribute definition - * in HTML 4.01. - */ - public void setValue(String value); - - /** - * Information about the meaning of the value attribute - * value. See the valuetype attribute definition in HTML 4.01. - */ - public String getValueType(); - /** - * Information about the meaning of the value attribute - * value. See the valuetype attribute definition in HTML 4.01. - */ - public void setValueType(String valueType); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLPreElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLPreElement.java deleted file mode 100644 index bab7358a730..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLPreElement.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Preformatted text. See the PRE element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLPreElement extends HTMLElement { - /** - * Fixed width for content. See the width attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public int getWidth(); - /** - * Fixed width for content. See the width attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setWidth(int width); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLQuoteElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLQuoteElement.java deleted file mode 100644 index c7cc666f417..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLQuoteElement.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * For the Q and BLOCKQUOTE elements. See the Q - * element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLQuoteElement extends HTMLElement { - /** - * A URI [IETF RFC 2396] designating a source document or message. See the cite attribute - * definition in HTML 4.01. - */ - public String getCite(); - /** - * A URI [IETF RFC 2396] designating a source document or message. See the cite attribute - * definition in HTML 4.01. - */ - public void setCite(String cite); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLScriptElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLScriptElement.java deleted file mode 100644 index a35f7ddc1cb..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLScriptElement.java +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Script statements. See the SCRIPT element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLScriptElement extends HTMLElement { - /** - * The script content of the element. - */ - public String getText(); - /** - * The script content of the element. - */ - public void setText(String text); - - /** - * Reserved for future use. - */ - public String getHtmlFor(); - /** - * Reserved for future use. - */ - public void setHtmlFor(String htmlFor); - - /** - * Reserved for future use. - */ - public String getEvent(); - /** - * Reserved for future use. - */ - public void setEvent(String event); - - /** - * The character encoding of the linked resource. See the charset - * attribute definition in HTML 4.01. - */ - public String getCharset(); - /** - * The character encoding of the linked resource. See the charset - * attribute definition in HTML 4.01. - */ - public void setCharset(String charset); - - /** - * Indicates that the user agent can defer processing of the script. See - * the defer attribute definition in HTML 4.01. - */ - public boolean getDefer(); - /** - * Indicates that the user agent can defer processing of the script. See - * the defer attribute definition in HTML 4.01. - */ - public void setDefer(boolean defer); - - /** - * URI [IETF RFC 2396] designating an external script. See the src attribute definition - * in HTML 4.01. - */ - public String getSrc(); - /** - * URI [IETF RFC 2396] designating an external script. See the src attribute definition - * in HTML 4.01. - */ - public void setSrc(String src); - - /** - * The content type of the script language. See the type attribute - * definition in HTML 4.01. - */ - public String getType(); - /** - * The content type of the script language. See the type attribute - * definition in HTML 4.01. - */ - public void setType(String type); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLSelectElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLSelectElement.java deleted file mode 100644 index c5d83b05182..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLSelectElement.java +++ /dev/null @@ -1,179 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -import org.w3c.dom.DOMException; - -/** - * The select element allows the selection of an option. The contained options - * can be directly accessed through the select element as a collection. See - * the SELECT element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLSelectElement extends HTMLElement { - /** - * The type of this form control. This is the string "select-multiple" - * when the multiple attribute is true and the string - * "select-one" when false. - */ - public String getType(); - - /** - * The ordinal index of the selected option, starting from 0. The value -1 - * is returned if no element is selected. If multiple options are - * selected, the index of the first selected option is returned. - */ - public int getSelectedIndex(); - /** - * The ordinal index of the selected option, starting from 0. The value -1 - * is returned if no element is selected. If multiple options are - * selected, the index of the first selected option is returned. - */ - public void setSelectedIndex(int selectedIndex); - - /** - * The current form control value (i.e. the value of the currently - * selected option), if multiple options are selected this is the value - * of the first selected option. - */ - public String getValue(); - /** - * The current form control value (i.e. the value of the currently - * selected option), if multiple options are selected this is the value - * of the first selected option. - */ - public void setValue(String value); - - /** - * The number of options in this SELECT. - * @version DOM Level 2 - */ - public int getLength(); - /** - * The number of options in this SELECT. - * @exception DOMException - * NOT_SUPPORTED_ERR: if setting the length is not allowed by the - * implementation. - * @version DOM Level 2 - */ - public void setLength(int length) - throws DOMException; - - /** - * Returns the FORM element containing this control. Returns - * null if this control is not within the context of a - * form. - */ - public HTMLFormElement getForm(); - - /** - * The collection of OPTION elements contained by this - * element. - * @version DOM Level 2 - */ - public HTMLOptionsCollection getOptions(); - - /** - * The control is unavailable in this context. See the disabled attribute - * definition in HTML 4.01. - */ - public boolean getDisabled(); - /** - * The control is unavailable in this context. See the disabled attribute - * definition in HTML 4.01. - */ - public void setDisabled(boolean disabled); - - /** - * If true, multiple OPTION elements may be selected in this - * SELECT. See the multiple attribute definition in HTML - * 4.01. - */ - public boolean getMultiple(); - /** - * If true, multiple OPTION elements may be selected in this - * SELECT. See the multiple attribute definition in HTML - * 4.01. - */ - public void setMultiple(boolean multiple); - - /** - * Form control or object name when submitted with a form. See the name - * attribute definition in HTML 4.01. - */ - public String getName(); - /** - * Form control or object name when submitted with a form. See the name - * attribute definition in HTML 4.01. - */ - public void setName(String name); - - /** - * Number of visible rows. See the size attribute definition in HTML 4.01. - */ - public int getSize(); - /** - * Number of visible rows. See the size attribute definition in HTML 4.01. - */ - public void setSize(int size); - - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public int getTabIndex(); - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public void setTabIndex(int tabIndex); - - /** - * Add a new element to the collection of OPTION elements for - * this SELECT. This method is the equivalent of the - * appendChild method of the Node interface if - * the before parameter is null. It is - * equivalent to the insertBefore method on the parent of - * before in all other cases. This method may have no - * effect if the new element is not an OPTION or an - * OPTGROUP. - * @param element The element to add. - * @param before The element to insert before, or null for - * the tail of the list. - * @exception DOMException - * NOT_FOUND_ERR: Raised if before is not a descendant of - * the SELECT element. - */ - public void add(HTMLElement element, - HTMLElement before) - throws DOMException; - - /** - * Remove an element from the collection of OPTION elements - * for this SELECT. Does nothing if no element has the - * given index. - * @param index The index of the item to remove, starting from 0. - */ - public void remove(int index); - - /** - * Removes keyboard focus from this element. - */ - public void blur(); - - /** - * Gives keyboard focus to this element. - */ - public void focus(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLStyleElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLStyleElement.java deleted file mode 100644 index 148bcda1cf2..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLStyleElement.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Style information. See the STYLE element definition in HTML 4.01, the CSS - * module [DOM Level 2 Style Sheets and CSS] and the LinkStyle interface in the StyleSheets - * module [DOM Level 2 Style Sheets and CSS]. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLStyleElement extends HTMLElement { - /** - * Enables/disables the style sheet. - */ - public boolean getDisabled(); - /** - * Enables/disables the style sheet. - */ - public void setDisabled(boolean disabled); - - /** - * Designed for use with one or more target media. See the media attribute - * definition in HTML 4.01. - */ - public String getMedia(); - /** - * Designed for use with one or more target media. See the media attribute - * definition in HTML 4.01. - */ - public void setMedia(String media); - - /** - * The content type of the style sheet language. See the type attribute - * definition in HTML 4.01. - */ - public String getType(); - /** - * The content type of the style sheet language. See the type attribute - * definition in HTML 4.01. - */ - public void setType(String type); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableCaptionElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableCaptionElement.java deleted file mode 100644 index 6c0d872e541..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableCaptionElement.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Table caption See the CAPTION element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLTableCaptionElement extends HTMLElement { - /** - * Caption alignment with respect to the table. See the align attribute - * definition in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getAlign(); - /** - * Caption alignment with respect to the table. See the align attribute - * definition in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setAlign(String align); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableCellElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableCellElement.java deleted file mode 100644 index 1e8dc3d4738..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableCellElement.java +++ /dev/null @@ -1,181 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * The object used to represent the TH and TD - * elements. See the TD element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLTableCellElement extends HTMLElement { - /** - * The index of this cell in the row, starting from 0. This index is in - * document tree order and not display order. - */ - public int getCellIndex(); - - /** - * Abbreviation for header cells. See the abbr attribute definition in - * HTML 4.01. - */ - public String getAbbr(); - /** - * Abbreviation for header cells. See the abbr attribute definition in - * HTML 4.01. - */ - public void setAbbr(String abbr); - - /** - * Horizontal alignment of data in cell. See the align attribute definition - * in HTML 4.01. - */ - public String getAlign(); - /** - * Horizontal alignment of data in cell. See the align attribute definition - * in HTML 4.01. - */ - public void setAlign(String align); - - /** - * Names group of related headers. See the axis attribute definition in - * HTML 4.01. - */ - public String getAxis(); - /** - * Names group of related headers. See the axis attribute definition in - * HTML 4.01. - */ - public void setAxis(String axis); - - /** - * Cell background color. See the bgcolor attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getBgColor(); - /** - * Cell background color. See the bgcolor attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setBgColor(String bgColor); - - /** - * Alignment character for cells in a column. See the char attribute - * definition in HTML 4.01. - */ - public String getCh(); - /** - * Alignment character for cells in a column. See the char attribute - * definition in HTML 4.01. - */ - public void setCh(String ch); - - /** - * Offset of alignment character. See the charoff attribute definition in - * HTML 4.01. - */ - public String getChOff(); - /** - * Offset of alignment character. See the charoff attribute definition in - * HTML 4.01. - */ - public void setChOff(String chOff); - - /** - * Number of columns spanned by cell. See the colspan attribute definition - * in HTML 4.01. - */ - public int getColSpan(); - /** - * Number of columns spanned by cell. See the colspan attribute definition - * in HTML 4.01. - */ - public void setColSpan(int colSpan); - - /** - * List of id attribute values for header cells. See the - * headers attribute definition in HTML 4.01. - */ - public String getHeaders(); - /** - * List of id attribute values for header cells. See the - * headers attribute definition in HTML 4.01. - */ - public void setHeaders(String headers); - - /** - * Cell height. See the height attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public String getHeight(); - /** - * Cell height. See the height attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public void setHeight(String height); - - /** - * Suppress word wrapping. See the nowrap attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public boolean getNoWrap(); - /** - * Suppress word wrapping. See the nowrap attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setNoWrap(boolean noWrap); - - /** - * Number of rows spanned by cell. See the rowspan attribute definition in - * HTML 4.01. - */ - public int getRowSpan(); - /** - * Number of rows spanned by cell. See the rowspan attribute definition in - * HTML 4.01. - */ - public void setRowSpan(int rowSpan); - - /** - * Scope covered by header cells. See the scope attribute definition in - * HTML 4.01. - */ - public String getScope(); - /** - * Scope covered by header cells. See the scope attribute definition in - * HTML 4.01. - */ - public void setScope(String scope); - - /** - * Vertical alignment of data in cell. See the valign attribute definition - * in HTML 4.01. - */ - public String getVAlign(); - /** - * Vertical alignment of data in cell. See the valign attribute definition - * in HTML 4.01. - */ - public void setVAlign(String vAlign); - - /** - * Cell width. See the width attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public String getWidth(); - /** - * Cell width. See the width attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public void setWidth(String width); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableColElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableColElement.java deleted file mode 100644 index 85a42ddd2bb..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableColElement.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Regroups the COL and COLGROUP elements. See the - * COL element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLTableColElement extends HTMLElement { - /** - * Horizontal alignment of cell data in column. See the align attribute - * definition in HTML 4.01. - */ - public String getAlign(); - /** - * Horizontal alignment of cell data in column. See the align attribute - * definition in HTML 4.01. - */ - public void setAlign(String align); - - /** - * Alignment character for cells in a column. See the char attribute - * definition in HTML 4.01. - */ - public String getCh(); - /** - * Alignment character for cells in a column. See the char attribute - * definition in HTML 4.01. - */ - public void setCh(String ch); - - /** - * Offset of alignment character. See the charoff attribute definition in - * HTML 4.01. - */ - public String getChOff(); - /** - * Offset of alignment character. See the charoff attribute definition in - * HTML 4.01. - */ - public void setChOff(String chOff); - - /** - * Indicates the number of columns in a group or affected by a grouping. - * See the span attribute definition in HTML 4.01. - */ - public int getSpan(); - /** - * Indicates the number of columns in a group or affected by a grouping. - * See the span attribute definition in HTML 4.01. - */ - public void setSpan(int span); - - /** - * Vertical alignment of cell data in column. See the valign attribute - * definition in HTML 4.01. - */ - public String getVAlign(); - /** - * Vertical alignment of cell data in column. See the valign attribute - * definition in HTML 4.01. - */ - public void setVAlign(String vAlign); - - /** - * Default column width. See the width attribute definition in HTML 4.01. - */ - public String getWidth(); - /** - * Default column width. See the width attribute definition in HTML 4.01. - */ - public void setWidth(String width); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableElement.java deleted file mode 100644 index d36b19cfa78..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableElement.java +++ /dev/null @@ -1,254 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -import org.w3c.dom.DOMException; - -/** - * The create* and delete* methods on the table allow authors to construct and - * modify tables. [HTML 4.01] specifies that only one of each of the - * CAPTION, THEAD, and TFOOT elements - * may exist in a table. Therefore, if one exists, and the createTHead() or - * createTFoot() method is called, the method returns the existing THead or - * TFoot element. See the TABLE element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLTableElement extends HTMLElement { - /** - * Returns the table's CAPTION, or void if none exists. - * @version DOM Level 2 - */ - public HTMLTableCaptionElement getCaption(); - /** - * Returns the table's CAPTION, or void if none exists. - * @exception DOMException - * HIERARCHY_REQUEST_ERR: if the element is not a CAPTION. - * @version DOM Level 2 - */ - public void setCaption(HTMLTableCaptionElement caption) - throws DOMException; - - /** - * Returns the table's THEAD, or null if none - * exists. - * @version DOM Level 2 - */ - public HTMLTableSectionElement getTHead(); - /** - * Returns the table's THEAD, or null if none - * exists. - * @exception DOMException - * HIERARCHY_REQUEST_ERR: if the element is not a THEAD. - * @version DOM Level 2 - */ - public void setTHead(HTMLTableSectionElement tHead) - throws DOMException; - - /** - * Returns the table's TFOOT, or null if none - * exists. - * @version DOM Level 2 - */ - public HTMLTableSectionElement getTFoot(); - /** - * Returns the table's TFOOT, or null if none - * exists. - * @exception DOMException - * HIERARCHY_REQUEST_ERR: if the element is not a TFOOT. - * @version DOM Level 2 - */ - public void setTFoot(HTMLTableSectionElement tFoot) - throws DOMException; - - /** - * Returns a collection of all the rows in the table, including all in - * THEAD, TFOOT, all TBODY - * elements. - */ - public HTMLCollection getRows(); - - /** - * Returns a collection of the table bodies (including implicit ones). - */ - public HTMLCollection getTBodies(); - - /** - * Specifies the table's position with respect to the rest of the - * document. See the align attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public String getAlign(); - /** - * Specifies the table's position with respect to the rest of the - * document. See the align attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public void setAlign(String align); - - /** - * Cell background color. See the bgcolor attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getBgColor(); - /** - * Cell background color. See the bgcolor attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setBgColor(String bgColor); - - /** - * The width of the border around the table. See the border attribute - * definition in HTML 4.01. - */ - public String getBorder(); - /** - * The width of the border around the table. See the border attribute - * definition in HTML 4.01. - */ - public void setBorder(String border); - - /** - * Specifies the horizontal and vertical space between cell content and - * cell borders. See the cellpadding attribute definition in HTML 4.01. - */ - public String getCellPadding(); - /** - * Specifies the horizontal and vertical space between cell content and - * cell borders. See the cellpadding attribute definition in HTML 4.01. - */ - public void setCellPadding(String cellPadding); - - /** - * Specifies the horizontal and vertical separation between cells. See the - * cellspacing attribute definition in HTML 4.01. - */ - public String getCellSpacing(); - /** - * Specifies the horizontal and vertical separation between cells. See the - * cellspacing attribute definition in HTML 4.01. - */ - public void setCellSpacing(String cellSpacing); - - /** - * Specifies which external table borders to render. See the frame - * attribute definition in HTML 4.01. - */ - public String getFrame(); - /** - * Specifies which external table borders to render. See the frame - * attribute definition in HTML 4.01. - */ - public void setFrame(String frame); - - /** - * Specifies which internal table borders to render. See the rules - * attribute definition in HTML 4.01. - */ - public String getRules(); - /** - * Specifies which internal table borders to render. See the rules - * attribute definition in HTML 4.01. - */ - public void setRules(String rules); - - /** - * Description about the purpose or structure of a table. See the summary - * attribute definition in HTML 4.01. - */ - public String getSummary(); - /** - * Description about the purpose or structure of a table. See the summary - * attribute definition in HTML 4.01. - */ - public void setSummary(String summary); - - /** - * Specifies the desired table width. See the width attribute definition - * in HTML 4.01. - */ - public String getWidth(); - /** - * Specifies the desired table width. See the width attribute definition - * in HTML 4.01. - */ - public void setWidth(String width); - - /** - * Create a table header row or return an existing one. - * @return A new table header element (THEAD). - */ - public HTMLElement createTHead(); - - /** - * Delete the header from the table, if one exists. - */ - public void deleteTHead(); - - /** - * Create a table footer row or return an existing one. - * @return A footer element (TFOOT). - */ - public HTMLElement createTFoot(); - - /** - * Delete the footer from the table, if one exists. - */ - public void deleteTFoot(); - - /** - * Create a new table caption object or return an existing one. - * @return A CAPTION element. - */ - public HTMLElement createCaption(); - - /** - * Delete the table caption, if one exists. - */ - public void deleteCaption(); - - /** - * Insert a new empty row in the table. The new row is inserted - * immediately before and in the same section as the current - * indexth row in the table. If index is -1 or - * equal to the number of rows, the new row is appended. In addition, - * when the table is empty the row is inserted into a TBODY - * which is created and inserted into the table.A table row cannot be - * empty according to [HTML 4.01]. - * @param index The row number where to insert a new row. This index - * starts from 0 and is relative to the logical order (not document - * order) of all the rows contained inside the table. - * @return The newly created row. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified index is greater than the - * number of rows or if the index is a negative number other than -1. - * @version DOM Level 2 - */ - public HTMLElement insertRow(int index) - throws DOMException; - - /** - * Delete a table row. - * @param index The index of the row to be deleted. This index starts - * from 0 and is relative to the logical order (not document order) of - * all the rows contained inside the table. If the index is -1 the - * last row in the table is deleted. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified index is greater than or - * equal to the number of rows or if the index is a negative number - * other than -1. - * @version DOM Level 2 - */ - public void deleteRow(int index) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableRowElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableRowElement.java deleted file mode 100644 index 9f4fbf96c67..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableRowElement.java +++ /dev/null @@ -1,130 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -import org.w3c.dom.DOMException; - -/** - * A row in a table. See the TR element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLTableRowElement extends HTMLElement { - /** - * This is in logical order and not in document order. The - * rowIndex does take into account sections ( - * THEAD, TFOOT, or TBODY) within - * the table, placing THEAD rows first in the index, - * followed by TBODY rows, followed by TFOOT - * rows. - * @version DOM Level 2 - */ - public int getRowIndex(); - - /** - * The index of this row, relative to the current section ( - * THEAD, TFOOT, or TBODY), - * starting from 0. - * @version DOM Level 2 - */ - public int getSectionRowIndex(); - - /** - * The collection of cells in this row. - * @version DOM Level 2 - */ - public HTMLCollection getCells(); - - /** - * Horizontal alignment of data within cells of this row. See the align - * attribute definition in HTML 4.01. - */ - public String getAlign(); - /** - * Horizontal alignment of data within cells of this row. See the align - * attribute definition in HTML 4.01. - */ - public void setAlign(String align); - - /** - * Background color for rows. See the bgcolor attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public String getBgColor(); - /** - * Background color for rows. See the bgcolor attribute definition in HTML - * 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setBgColor(String bgColor); - - /** - * Alignment character for cells in a column. See the char attribute - * definition in HTML 4.01. - */ - public String getCh(); - /** - * Alignment character for cells in a column. See the char attribute - * definition in HTML 4.01. - */ - public void setCh(String ch); - - /** - * Offset of alignment character. See the charoff attribute definition in - * HTML 4.01. - */ - public String getChOff(); - /** - * Offset of alignment character. See the charoff attribute definition in - * HTML 4.01. - */ - public void setChOff(String chOff); - - /** - * Vertical alignment of data within cells of this row. See the valign - * attribute definition in HTML 4.01. - */ - public String getVAlign(); - /** - * Vertical alignment of data within cells of this row. See the valign - * attribute definition in HTML 4.01. - */ - public void setVAlign(String vAlign); - - /** - * Insert an empty TD cell into this row. If - * index is -1 or equal to the number of cells, the new - * cell is appended. - * @param index The place to insert the cell, starting from 0. - * @return The newly created cell. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified index is greater - * than the number of cells or if the index is a negative number other - * than -1. - * @version DOM Level 2 - */ - public HTMLElement insertCell(int index) - throws DOMException; - - /** - * Delete a cell from the current row. - * @param index The index of the cell to delete, starting from 0. If the - * index is -1 the last cell in the row is deleted. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified index is greater - * than or equal to the number of cells or if the index is a negative - * number other than -1. - * @version DOM Level 2 - */ - public void deleteCell(int index) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableSectionElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableSectionElement.java deleted file mode 100644 index 5aa6ce4402d..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTableSectionElement.java +++ /dev/null @@ -1,103 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -import org.w3c.dom.DOMException; - -/** - * The THEAD, TFOOT, and TBODY - * elements. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLTableSectionElement extends HTMLElement { - /** - * Horizontal alignment of data in cells. See the align - * attribute for HTMLTheadElement for details. - */ - public String getAlign(); - /** - * Horizontal alignment of data in cells. See the align - * attribute for HTMLTheadElement for details. - */ - public void setAlign(String align); - - /** - * Alignment character for cells in a column. See the char attribute - * definition in HTML 4.01. - */ - public String getCh(); - /** - * Alignment character for cells in a column. See the char attribute - * definition in HTML 4.01. - */ - public void setCh(String ch); - - /** - * Offset of alignment character. See the charoff attribute definition in - * HTML 4.01. - */ - public String getChOff(); - /** - * Offset of alignment character. See the charoff attribute definition in - * HTML 4.01. - */ - public void setChOff(String chOff); - - /** - * Vertical alignment of data in cells. See the valign - * attribute for HTMLTheadElement for details. - */ - public String getVAlign(); - /** - * Vertical alignment of data in cells. See the valign - * attribute for HTMLTheadElement for details. - */ - public void setVAlign(String vAlign); - - /** - * The collection of rows in this table section. - */ - public HTMLCollection getRows(); - - /** - * Insert a row into this section. The new row is inserted immediately - * before the current indexth row in this section. If - * index is -1 or equal to the number of rows in this - * section, the new row is appended. - * @param index The row number where to insert a new row. This index - * starts from 0 and is relative only to the rows contained inside - * this section, not all the rows in the table. - * @return The newly created row. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified index is greater than the - * number of rows of if the index is a negative number other than -1. - * @version DOM Level 2 - */ - public HTMLElement insertRow(int index) - throws DOMException; - - /** - * Delete a row from this section. - * @param index The index of the row to be deleted, or -1 to delete the - * last row. This index starts from 0 and is relative only to the rows - * contained inside this section, not all the rows in the table. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified index is greater than or - * equal to the number of rows or if the index is a negative number - * other than -1. - * @version DOM Level 2 - */ - public void deleteRow(int index) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTextAreaElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTextAreaElement.java deleted file mode 100644 index ed5c6c978d6..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTextAreaElement.java +++ /dev/null @@ -1,154 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Multi-line text field. See the TEXTAREA element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLTextAreaElement extends HTMLElement { - /** - * Represents the contents of the element. The value of this attribute - * does not change if the contents of the corresponding form control, in - * an interactive user agent, changes. - * @version DOM Level 2 - */ - public String getDefaultValue(); - /** - * Represents the contents of the element. The value of this attribute - * does not change if the contents of the corresponding form control, in - * an interactive user agent, changes. - * @version DOM Level 2 - */ - public void setDefaultValue(String defaultValue); - - /** - * Returns the FORM element containing this control. Returns - * null if this control is not within the context of a - * form. - */ - public HTMLFormElement getForm(); - - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public String getAccessKey(); - /** - * A single character access key to give access to the form control. See - * the accesskey attribute definition in HTML 4.01. - */ - public void setAccessKey(String accessKey); - - /** - * Width of control (in characters). See the cols attribute definition in - * HTML 4.01. - */ - public int getCols(); - /** - * Width of control (in characters). See the cols attribute definition in - * HTML 4.01. - */ - public void setCols(int cols); - - /** - * The control is unavailable in this context. See the disabled attribute - * definition in HTML 4.01. - */ - public boolean getDisabled(); - /** - * The control is unavailable in this context. See the disabled attribute - * definition in HTML 4.01. - */ - public void setDisabled(boolean disabled); - - /** - * Form control or object name when submitted with a form. See the name - * attribute definition in HTML 4.01. - */ - public String getName(); - /** - * Form control or object name when submitted with a form. See the name - * attribute definition in HTML 4.01. - */ - public void setName(String name); - - /** - * This control is read-only. See the readonly attribute definition in - * HTML 4.01. - */ - public boolean getReadOnly(); - /** - * This control is read-only. See the readonly attribute definition in - * HTML 4.01. - */ - public void setReadOnly(boolean readOnly); - - /** - * Number of text rows. See the rows attribute definition in HTML 4.01. - */ - public int getRows(); - /** - * Number of text rows. See the rows attribute definition in HTML 4.01. - */ - public void setRows(int rows); - - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public int getTabIndex(); - /** - * Index that represents the element's position in the tabbing order. See - * the tabindex attribute definition in HTML 4.01. - */ - public void setTabIndex(int tabIndex); - - /** - * The type of this form control. This the string "textarea". - */ - public String getType(); - - /** - * Represents the current contents of the corresponding form control, in - * an interactive user agent. Changing this attribute changes the - * contents of the form control, but does not change the contents of the - * element. If the entirety of the data can not fit into a single - * DOMString, the implementation may truncate the data. - */ - public String getValue(); - /** - * Represents the current contents of the corresponding form control, in - * an interactive user agent. Changing this attribute changes the - * contents of the form control, but does not change the contents of the - * element. If the entirety of the data can not fit into a single - * DOMString, the implementation may truncate the data. - */ - public void setValue(String value); - - /** - * Removes keyboard focus from this element. - */ - public void blur(); - - /** - * Gives keyboard focus to this element. - */ - public void focus(); - - /** - * Select the contents of the TEXTAREA. - */ - public void select(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTitleElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTitleElement.java deleted file mode 100644 index 67122bb0a71..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLTitleElement.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * The document title. See the TITLE element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLTitleElement extends HTMLElement { - /** - * The specified title as a string. - */ - public String getText(); - /** - * The specified title as a string. - */ - public void setText(String text); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLUListElement.java b/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLUListElement.java deleted file mode 100644 index 61ccb322f45..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/html2/HTMLUListElement.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.html2; - -/** - * Unordered list. See the UL element definition in HTML 4.01. - *

See also the Document Object Model (DOM) Level 2 HTML Specification. - */ -public interface HTMLUListElement extends HTMLElement { - /** - * Reduce spacing between list items. See the compact attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public boolean getCompact(); - /** - * Reduce spacing between list items. See the compact attribute definition - * in HTML 4.01. This attribute is deprecated in HTML 4.01. - */ - public void setCompact(boolean compact); - - /** - * Bullet style. See the type attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public String getType(); - /** - * Bullet style. See the type attribute definition in HTML 4.01. This - * attribute is deprecated in HTML 4.01. - */ - public void setType(String type); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ls/DOMImplementationLS.java b/libjava/external/w3c_dom/org/w3c/dom/ls/DOMImplementationLS.java deleted file mode 100644 index c94fc8e4651..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ls/DOMImplementationLS.java +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.ls; - -import org.w3c.dom.DOMException; - -/** - * DOMImplementationLS contains the factory methods for creating - * Load and Save objects. - *

The expectation is that an instance of the - * DOMImplementationLS interface can be obtained by using - * binding-specific casting methods on an instance of the - * DOMImplementation interface or, if the Document - * supports the feature "Core" version "3.0" - * defined in [DOM Level 3 Core] - * , by using the method DOMImplementation.getFeature with - * parameter values "LS" (or "LS-Async") and - * "3.0" (respectively). - *

See also the Document Object Model (DOM) Level 3 Load -and Save Specification. - */ -public interface DOMImplementationLS { - // DOMImplementationLSMode - /** - * Create a synchronous LSParser. - */ - public static final short MODE_SYNCHRONOUS = 1; - /** - * Create an asynchronous LSParser. - */ - public static final short MODE_ASYNCHRONOUS = 2; - - /** - * Create a new LSParser. The newly constructed parser may - * then be configured by means of its DOMConfiguration - * object, and used to parse documents by means of its parse - * method. - * @param mode The mode argument is either - * MODE_SYNCHRONOUS or MODE_ASYNCHRONOUS, if - * mode is MODE_SYNCHRONOUS then the - * LSParser that is created will operate in synchronous - * mode, if it's MODE_ASYNCHRONOUS then the - * LSParser that is created will operate in asynchronous - * mode. - * @param schemaType An absolute URI representing the type of the schema - * language used during the load of a Document using the - * newly created LSParser. Note that no lexical checking - * is done on the absolute URI. In order to create a - * LSParser for any kind of schema types (i.e. the - * LSParser will be free to use any schema found), use the value - * null. - *

Note: For W3C XML Schema [XML Schema Part 1] - * , applications must use the value - * "http://www.w3.org/2001/XMLSchema". For XML DTD [XML 1.0], - * applications must use the value - * "http://www.w3.org/TR/REC-xml". Other Schema languages - * are outside the scope of the W3C and therefore should recommend an - * absolute URI in order to use this method. - * @return The newly created LSParser object. This - * LSParser is either synchronous or asynchronous - * depending on the value of the mode argument. - *

Note: By default, the newly created LSParser - * does not contain a DOMErrorHandler, i.e. the value of - * the " - * error-handler" configuration parameter is null. However, implementations - * may provide a default error handler at creation time. In that case, - * the initial value of the "error-handler" configuration - * parameter on the new LSParser object contains a - * reference to the default error handler. - * @exception DOMException - * NOT_SUPPORTED_ERR: Raised if the requested mode or schema type is - * not supported. - */ - public LSParser createLSParser(short mode, - String schemaType) - throws DOMException; - - /** - * Create a new LSSerializer object. - * @return The newly created LSSerializer object. - *

Note: By default, the newly created - * LSSerializer has no DOMErrorHandler, i.e. - * the value of the "error-handler" configuration - * parameter is null. However, implementations may - * provide a default error handler at creation time. In that case, the - * initial value of the "error-handler" configuration - * parameter on the new LSSerializer object contains a - * reference to the default error handler. - */ - public LSSerializer createLSSerializer(); - - /** - * Create a new empty input source object where - * LSInput.characterStream, LSInput.byteStream - * , LSInput.stringData LSInput.systemId, - * LSInput.publicId, LSInput.baseURI, and - * LSInput.encoding are null, and - * LSInput.certifiedText is false. - * @return The newly created input object. - */ - public LSInput createLSInput(); - - /** - * Create a new empty output destination object where - * LSOutput.characterStream, - * LSOutput.byteStream, LSOutput.systemId, - * LSOutput.encoding are null. - * @return The newly created output object. - */ - public LSOutput createLSOutput(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ls/LSException.java b/libjava/external/w3c_dom/org/w3c/dom/ls/LSException.java deleted file mode 100644 index 65a83f0ded1..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ls/LSException.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.ls; - -/** - * Parser or write operations may throw an LSException if the - * processing is stopped. The processing can be stopped due to a - * DOMError with a severity of - * DOMError.SEVERITY_FATAL_ERROR or a non recovered - * DOMError.SEVERITY_ERROR, or if - * DOMErrorHandler.handleError() returned false. - *

Note: As suggested in the definition of the constants in the - * DOMError interface, a DOM implementation may choose to - * continue after a fatal error, but the resulting DOM tree is then - * implementation dependent. - *

See also the Document Object Model (DOM) Level 3 Load -and Save Specification. - */ -public class LSException extends RuntimeException { - public LSException(short code, String message) { - super(message); - this.code = code; - } - public short code; - // LSExceptionCode - /** - * If an attempt was made to load a document, or an XML Fragment, using - * LSParser and the processing has been stopped. - */ - public static final short PARSE_ERR = 81; - /** - * If an attempt was made to serialize a Node using - * LSSerializer and the processing has been stopped. - */ - public static final short SERIALIZE_ERR = 82; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ls/LSInput.java b/libjava/external/w3c_dom/org/w3c/dom/ls/LSInput.java deleted file mode 100644 index 862bf7703b7..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ls/LSInput.java +++ /dev/null @@ -1,218 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.ls; - -/** - * This interface represents an input source for data. - *

This interface allows an application to encapsulate information about - * an input source in a single object, which may include a public - * identifier, a system identifier, a byte stream (possibly with a specified - * encoding), a base URI, and/or a character stream. - *

The exact definitions of a byte stream and a character stream are - * binding dependent. - *

The application is expected to provide objects that implement this - * interface whenever such objects are needed. The application can either - * provide its own objects that implement this interface, or it can use the - * generic factory method DOMImplementationLS.createLSInput() - * to create objects that implement this interface. - *

The LSParser will use the LSInput object to - * determine how to read data. The LSParser will look at the - * different inputs specified in the LSInput in the following - * order to know which one to read from, the first one that is not null and - * not an empty string will be used: - *

    - *
  1. LSInput.characterStream - *
  2. - *
  3. - * LSInput.byteStream - *
  4. - *
  5. LSInput.stringData - *
  6. - *
  7. - * LSInput.systemId - *
  8. - *
  9. LSInput.publicId - *
  10. - *
- *

If all inputs are null, the LSParser will report a - * DOMError with its DOMError.type set to - * "no-input-specified" and its DOMError.severity - * set to DOMError.SEVERITY_FATAL_ERROR. - *

LSInput objects belong to the application. The DOM - * implementation will never modify them (though it may make copies and - * modify the copies, if necessary). - *

See also the Document Object Model (DOM) Level 3 Load -and Save Specification. - */ -public interface LSInput { - /** - * An attribute of a language and binding dependent type that represents - * a stream of 16-bit units. The application must encode the stream - * using UTF-16 (defined in [Unicode] and in [ISO/IEC 10646]). It is not a requirement to have an XML declaration when - * using character streams. If an XML declaration is present, the value - * of the encoding attribute will be ignored. - */ - public java.io.Reader getCharacterStream(); - /** - * An attribute of a language and binding dependent type that represents - * a stream of 16-bit units. The application must encode the stream - * using UTF-16 (defined in [Unicode] and in [ISO/IEC 10646]). It is not a requirement to have an XML declaration when - * using character streams. If an XML declaration is present, the value - * of the encoding attribute will be ignored. - */ - public void setCharacterStream(java.io.Reader characterStream); - - /** - * An attribute of a language and binding dependent type that represents - * a stream of bytes. - *
If the application knows the character encoding of the byte - * stream, it should set the encoding attribute. Setting the encoding in - * this way will override any encoding specified in an XML declaration - * in the data. - */ - public java.io.InputStream getByteStream(); - /** - * An attribute of a language and binding dependent type that represents - * a stream of bytes. - *
If the application knows the character encoding of the byte - * stream, it should set the encoding attribute. Setting the encoding in - * this way will override any encoding specified in an XML declaration - * in the data. - */ - public void setByteStream(java.io.InputStream byteStream); - - /** - * String data to parse. If provided, this will always be treated as a - * sequence of 16-bit units (UTF-16 encoded characters). It is not a - * requirement to have an XML declaration when using - * stringData. If an XML declaration is present, the value - * of the encoding attribute will be ignored. - */ - public String getStringData(); - /** - * String data to parse. If provided, this will always be treated as a - * sequence of 16-bit units (UTF-16 encoded characters). It is not a - * requirement to have an XML declaration when using - * stringData. If an XML declaration is present, the value - * of the encoding attribute will be ignored. - */ - public void setStringData(String stringData); - - /** - * The system identifier, a URI reference [IETF RFC 2396], for this - * input source. The system identifier is optional if there is a byte - * stream, a character stream, or string data. It is still useful to - * provide one, since the application will use it to resolve any - * relative URIs and can include it in error messages and warnings. (The - * LSParser will only attempt to fetch the resource identified by the - * URI reference if there is no other input available in the input - * source.) - *
If the application knows the character encoding of the object - * pointed to by the system identifier, it can set the encoding using - * the encoding attribute. - *
If the specified system ID is a relative URI reference (see - * section 5 in [IETF RFC 2396]), the DOM - * implementation will attempt to resolve the relative URI with the - * baseURI as the base, if that fails, the behavior is - * implementation dependent. - */ - public String getSystemId(); - /** - * The system identifier, a URI reference [IETF RFC 2396], for this - * input source. The system identifier is optional if there is a byte - * stream, a character stream, or string data. It is still useful to - * provide one, since the application will use it to resolve any - * relative URIs and can include it in error messages and warnings. (The - * LSParser will only attempt to fetch the resource identified by the - * URI reference if there is no other input available in the input - * source.) - *
If the application knows the character encoding of the object - * pointed to by the system identifier, it can set the encoding using - * the encoding attribute. - *
If the specified system ID is a relative URI reference (see - * section 5 in [IETF RFC 2396]), the DOM - * implementation will attempt to resolve the relative URI with the - * baseURI as the base, if that fails, the behavior is - * implementation dependent. - */ - public void setSystemId(String systemId); - - /** - * The public identifier for this input source. This may be mapped to an - * input source using an implementation dependent mechanism (such as - * catalogues or other mappings). The public identifier, if specified, - * may also be reported as part of the location information when errors - * are reported. - */ - public String getPublicId(); - /** - * The public identifier for this input source. This may be mapped to an - * input source using an implementation dependent mechanism (such as - * catalogues or other mappings). The public identifier, if specified, - * may also be reported as part of the location information when errors - * are reported. - */ - public void setPublicId(String publicId); - - /** - * The base URI to be used (see section 5.1.4 in [IETF RFC 2396]) for - * resolving a relative systemId to an absolute URI. - *
If, when used, the base URI is itself a relative URI, an empty - * string, or null, the behavior is implementation dependent. - */ - public String getBaseURI(); - /** - * The base URI to be used (see section 5.1.4 in [IETF RFC 2396]) for - * resolving a relative systemId to an absolute URI. - *
If, when used, the base URI is itself a relative URI, an empty - * string, or null, the behavior is implementation dependent. - */ - public void setBaseURI(String baseURI); - - /** - * The character encoding, if known. The encoding must be a string - * acceptable for an XML encoding declaration ([XML 1.0] section - * 4.3.3 "Character Encoding in Entities"). - *
This attribute has no effect when the application provides a - * character stream or string data. For other sources of input, an - * encoding specified by means of this attribute will override any - * encoding specified in the XML declaration or the Text declaration, or - * an encoding obtained from a higher level protocol, such as HTTP [IETF RFC 2616]. - */ - public String getEncoding(); - /** - * The character encoding, if known. The encoding must be a string - * acceptable for an XML encoding declaration ([XML 1.0] section - * 4.3.3 "Character Encoding in Entities"). - *
This attribute has no effect when the application provides a - * character stream or string data. For other sources of input, an - * encoding specified by means of this attribute will override any - * encoding specified in the XML declaration or the Text declaration, or - * an encoding obtained from a higher level protocol, such as HTTP [IETF RFC 2616]. - */ - public void setEncoding(String encoding); - - /** - * If set to true, assume that the input is certified (see section 2.13 - * in [XML 1.1]) when - * parsing [XML 1.1]. - */ - public boolean getCertifiedText(); - /** - * If set to true, assume that the input is certified (see section 2.13 - * in [XML 1.1]) when - * parsing [XML 1.1]. - */ - public void setCertifiedText(boolean certifiedText); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ls/LSLoadEvent.java b/libjava/external/w3c_dom/org/w3c/dom/ls/LSLoadEvent.java deleted file mode 100644 index 601a5be11b7..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ls/LSLoadEvent.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.ls; - -import org.w3c.dom.Document; -import org.w3c.dom.events.Event; - -/** - * This interface represents a load event object that signals the completion - * of a document load. - *

See also the Document Object Model (DOM) Level 3 Load -and Save Specification. - */ -public interface LSLoadEvent extends Event { - /** - * The document that finished loading. - */ - public Document getNewDocument(); - - /** - * The input source that was parsed. - */ - public LSInput getInput(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ls/LSOutput.java b/libjava/external/w3c_dom/org/w3c/dom/ls/LSOutput.java deleted file mode 100644 index 2f8675c571e..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ls/LSOutput.java +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.ls; - -/** - * This interface represents an output destination for data. - *

This interface allows an application to encapsulate information about - * an output destination in a single object, which may include a URI, a byte - * stream (possibly with a specified encoding), a base URI, and/or a - * character stream. - *

The exact definitions of a byte stream and a character stream are - * binding dependent. - *

The application is expected to provide objects that implement this - * interface whenever such objects are needed. The application can either - * provide its own objects that implement this interface, or it can use the - * generic factory method DOMImplementationLS.createLSOutput() - * to create objects that implement this interface. - *

The LSSerializer will use the LSOutput object - * to determine where to serialize the output to. The - * LSSerializer will look at the different outputs specified in - * the LSOutput in the following order to know which one to - * output to, the first one that is not null and not an empty string will be - * used: - *

    - *
  1. LSOutput.characterStream - *
  2. - *
  3. - * LSOutput.byteStream - *
  4. - *
  5. LSOutput.systemId - *
  6. - *
- *

LSOutput objects belong to the application. The DOM - * implementation will never modify them (though it may make copies and - * modify the copies, if necessary). - *

See also the Document Object Model (DOM) Level 3 Load -and Save Specification. - */ -public interface LSOutput { - /** - * An attribute of a language and binding dependent type that represents - * a writable stream to which 16-bit units can be output. - */ - public java.io.Writer getCharacterStream(); - /** - * An attribute of a language and binding dependent type that represents - * a writable stream to which 16-bit units can be output. - */ - public void setCharacterStream(java.io.Writer characterStream); - - /** - * An attribute of a language and binding dependent type that represents - * a writable stream of bytes. - */ - public java.io.OutputStream getByteStream(); - /** - * An attribute of a language and binding dependent type that represents - * a writable stream of bytes. - */ - public void setByteStream(java.io.OutputStream byteStream); - - /** - * The system identifier, a URI reference [IETF RFC 2396], for this - * output destination. - *
If the system ID is a relative URI reference (see section 5 in [IETF RFC 2396]), the - * behavior is implementation dependent. - */ - public String getSystemId(); - /** - * The system identifier, a URI reference [IETF RFC 2396], for this - * output destination. - *
If the system ID is a relative URI reference (see section 5 in [IETF RFC 2396]), the - * behavior is implementation dependent. - */ - public void setSystemId(String systemId); - - /** - * The character encoding to use for the output. The encoding must be a - * string acceptable for an XML encoding declaration ([XML 1.0] section - * 4.3.3 "Character Encoding in Entities"), it is recommended that - * character encodings registered (as charsets) with the Internet - * Assigned Numbers Authority [IANA-CHARSETS] - * should be referred to using their registered names. - */ - public String getEncoding(); - /** - * The character encoding to use for the output. The encoding must be a - * string acceptable for an XML encoding declaration ([XML 1.0] section - * 4.3.3 "Character Encoding in Entities"), it is recommended that - * character encodings registered (as charsets) with the Internet - * Assigned Numbers Authority [IANA-CHARSETS] - * should be referred to using their registered names. - */ - public void setEncoding(String encoding); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ls/LSParser.java b/libjava/external/w3c_dom/org/w3c/dom/ls/LSParser.java deleted file mode 100644 index ee918e0dce7..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ls/LSParser.java +++ /dev/null @@ -1,466 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.ls; - -import org.w3c.dom.Document; -import org.w3c.dom.DOMConfiguration; -import org.w3c.dom.Node; -import org.w3c.dom.DOMException; - -/** - * An interface to an object that is able to build, or augment, a DOM tree - * from various input sources. - *

LSParser provides an API for parsing XML and building the - * corresponding DOM document structure. A LSParser instance - * can be obtained by invoking the - * DOMImplementationLS.createLSParser() method. - *

As specified in [DOM Level 3 Core] - * , when a document is first made available via the LSParser: - *

    - *
  • there will - * never be two adjacent nodes of type NODE_TEXT, and there will never be - * empty text nodes. - *
  • - *
  • it is expected that the value and - * nodeValue attributes of an Attr node initially - * return the XML 1.0 - * normalized value. However, if the parameters " - * validate-if-schema" and " - * datatype-normalization" are set to true, depending on the attribute normalization - * used, the attribute values may differ from the ones obtained by the XML - * 1.0 attribute normalization. If the parameters " - * datatype-normalization" is set to false, the XML 1.0 attribute normalization is - * guaranteed to occur, and if the attributes list does not contain - * namespace declarations, the attributes attribute on - * Element node represents the property [attributes] defined in [XML Information Set] - * . - *
  • - *
- *

Asynchronous LSParser objects are expected to also - * implement the events::EventTarget interface so that event - * listeners can be registered on asynchronous LSParser - * objects. - *

Events supported by asynchronous LSParser objects are: - *

- *
load
- *
- * The LSParser finishes to load the document. See also the - * definition of the LSLoadEvent interface.
- *
progress
- *
The - * LSParser signals progress as data is parsed. This - * specification does not attempt to define exactly when progress events - * should be dispatched. That is intentionally left as - * implementation-dependent. Here is one example of how an application might - * dispatch progress events: Once the parser starts receiving data, a - * progress event is dispatched to indicate that the parsing starts. From - * there on, a progress event is dispatched for every 4096 bytes of data - * that is received and processed. This is only one example, though, and - * implementations can choose to dispatch progress events at any time while - * parsing, or not dispatch them at all. See also the definition of the - * LSProgressEvent interface.
- *
- *

Note: All events defined in this specification use the - * namespace URI "http://www.w3.org/2002/DOMLS". - *

While parsing an input source, errors are reported to the application - * through the error handler (LSParser.domConfig's " - * error-handler" parameter). This specification does in no way try to define all possible - * errors that can occur while parsing XML, or any other markup, but some - * common error cases are defined. The types (DOMError.type) of - * errors and warnings defined by this specification are: - *

- *
- * "check-character-normalization-failure" [error]
- *
Raised if - * the parameter " - * check-character-normalization" is set to true and a string is encountered that fails normalization - * checking.
- *
"doctype-not-allowed" [fatal]
- *
Raised if the - * configuration parameter "disallow-doctype" is set to true - * and a doctype is encountered.
- *
"no-input-specified" [fatal]
- *
- * Raised when loading a document and no input is specified in the - * LSInput object.
- *
- * "pi-base-uri-not-preserved" [warning]
- *
Raised if a processing - * instruction is encountered in a location where the base URI of the - * processing instruction can not be preserved. One example of a case where - * this warning will be raised is if the configuration parameter " - * entities" is set to false and the following XML file is parsed: - *
- * <!DOCTYPE root [ <!ENTITY e SYSTEM 'subdir/myentity.ent' ]> 
- * <root> &e; </root>
- * And subdir/myentity.ent - * contains: - *
<one> <two/> </one> <?pi 3.14159?> 
- * <more/>
- *
- *
"unbound-prefix-in-entity" [warning]
- *
An - * implementation dependent warning that may be raised if the configuration - * parameter " - * namespaces" is set to true and an unbound namespace prefix is - * encountered in an entity's replacement text. Raising this warning is not - * enforced since some existing parsers may not recognize unbound namespace - * prefixes in the replacement text of entities.
- *
- * "unknown-character-denormalization" [fatal]
- *
Raised if the - * configuration parameter "ignore-unknown-character-denormalizations" is - * set to false and a character is encountered for which the - * processor cannot determine the normalization properties.
- *
- * "unsupported-encoding" [fatal]
- *
Raised if an unsupported - * encoding is encountered.
- *
"unsupported-media-type" [fatal]
- *
- * Raised if the configuration parameter "supported-media-types-only" is set - * to true and an unsupported media type is encountered.
- *
- *

In addition to raising the defined errors and warnings, implementations - * are expected to raise implementation specific errors and warnings for any - * other error and warning cases such as IO errors (file not found, - * permission denied,...), XML well-formedness errors, and so on. - *

See also the Document Object Model (DOM) Level 3 Load -and Save Specification. - */ -public interface LSParser { - /** - * The DOMConfiguration object used when parsing an input - * source. This DOMConfiguration is specific to the parse - * operation. No parameter values from this DOMConfiguration - * object are passed automatically to the DOMConfiguration - * object on the Document that is created, or used, by the - * parse operation. The DOM application is responsible for passing any - * needed parameter values from this DOMConfiguration - * object to the DOMConfiguration object referenced by the - * Document object. - *
In addition to the parameters recognized in on the - * DOMConfiguration interface defined in [DOM Level 3 Core] - * , the DOMConfiguration objects for LSParser - * add or modify the following parameters: - *

- *
- * "charset-overrides-xml-encoding"
- *
- *
- *
true
- *
[optional] (default) If a higher level protocol such as HTTP [IETF RFC 2616] provides an - * indication of the character encoding of the input stream being - * processed, that will override any encoding specified in the XML - * declaration or the Text declaration (see also section 4.3.3, - * "Character Encoding in Entities", in [XML 1.0]). - * Explicitly setting an encoding in the LSInput overrides - * any encoding from the protocol.
- *
false
- *
[required] The parser ignores any character set encoding information from - * higher-level protocols.
- *
- *
"disallow-doctype"
- *
- *
- *
- * true
- *
[optional] Throw a fatal "doctype-not-allowed" error if a doctype node is found while parsing the document. This is - * useful when dealing with things like SOAP envelopes where doctype - * nodes are not allowed.
- *
false
- *
[required] (default) Allow doctype nodes in the document.
- *
- *
- * "ignore-unknown-character-denormalizations"
- *
- *
- *
- * true
- *
[required] (default) If, while verifying full normalization when [XML 1.1] is - * supported, a processor encounters characters for which it cannot - * determine the normalization properties, then the processor will - * ignore any possible denormalizations caused by these characters. - * This parameter is ignored for [XML 1.0].
- *
- * false
- *
[optional] Report an fatal "unknown-character-denormalization" error if a character is encountered for which the processor cannot - * determine the normalization properties.
- *
- *
"infoset"
- *
See - * the definition of DOMConfiguration for a description of - * this parameter. Unlike in [DOM Level 3 Core] - * , this parameter will default to true for - * LSParser.
- *
"namespaces"
- *
- *
- *
true
- *
[required] (default) Perform the namespace processing as defined in [XML Namespaces] - * and [XML Namespaces 1.1] - * .
- *
false
- *
[optional] Do not perform the namespace processing.
- *
- *
- * "resource-resolver"
- *
[required] A reference to a LSResourceResolver object, or null. If - * the value of this parameter is not null when an external resource - * (such as an external XML entity or an XML schema location) is - * encountered, the implementation will request that the - * LSResourceResolver referenced in this parameter resolves - * the resource.
- *
"supported-media-types-only"
- *
- *
- *
- * true
- *
[optional] Check that the media type of the parsed resource is a supported media - * type. If an unsupported media type is encountered, a fatal error of - * type "unsupported-media-type" will be raised. The media types defined in [IETF RFC 3023] must always - * be accepted.
- *
false
- *
[required] (default) Accept any media type.
- *
- *
"validate"
- *
See the definition of - * DOMConfiguration for a description of this parameter. - * Unlike in [DOM Level 3 Core] - * , the processing of the internal subset is always accomplished, even - * if this parameter is set to false.
- *
- * "validate-if-schema"
- *
See the definition of - * DOMConfiguration for a description of this parameter. - * Unlike in [DOM Level 3 Core] - * , the processing of the internal subset is always accomplished, even - * if this parameter is set to false.
- *
- * "well-formed"
- *
See the definition of - * DOMConfiguration for a description of this parameter. - * Unlike in [DOM Level 3 Core] - * , this parameter cannot be set to false.
- *
- */ - public DOMConfiguration getDomConfig(); - - /** - * When a filter is provided, the implementation will call out to the - * filter as it is constructing the DOM tree structure. The filter can - * choose to remove elements from the document being constructed, or to - * terminate the parsing early. - *
The filter is invoked after the operations requested by the - * DOMConfiguration parameters have been applied. For - * example, if " - * validate" is set to true, the validation is done before invoking the - * filter. - */ - public LSParserFilter getFilter(); - /** - * When a filter is provided, the implementation will call out to the - * filter as it is constructing the DOM tree structure. The filter can - * choose to remove elements from the document being constructed, or to - * terminate the parsing early. - *
The filter is invoked after the operations requested by the - * DOMConfiguration parameters have been applied. For - * example, if " - * validate" is set to true, the validation is done before invoking the - * filter. - */ - public void setFilter(LSParserFilter filter); - - /** - * true if the LSParser is asynchronous, - * false if it is synchronous. - */ - public boolean getAsync(); - - /** - * true if the LSParser is currently busy - * loading a document, otherwise false. - */ - public boolean getBusy(); - - /** - * Parse an XML document from a resource identified by a - * LSInput. - * @param input The LSInput from which the source of the - * document is to be read. - * @return If the LSParser is a synchronous - * LSParser, the newly created and populated - * Document is returned. If the LSParser is - * asynchronous, null is returned since the document - * object may not yet be constructed when this method returns. - * @exception DOMException - * INVALID_STATE_ERR: Raised if the LSParser's - * LSParser.busy attribute is true. - * @exception LSException - * PARSE_ERR: Raised if the LSParser was unable to load - * the XML document. DOM applications should attach a - * DOMErrorHandler using the parameter " - * error-handler" if they wish to get details on the error. - */ - public Document parse(LSInput input) - throws DOMException, LSException; - - /** - * Parse an XML document from a location identified by a URI reference [IETF RFC 2396]. If the URI - * contains a fragment identifier (see section 4.1 in [IETF RFC 2396]), the - * behavior is not defined by this specification, future versions of - * this specification may define the behavior. - * @param uri The location of the XML document to be read. - * @return If the LSParser is a synchronous - * LSParser, the newly created and populated - * Document is returned, or null if an error - * occured. If the LSParser is asynchronous, - * null is returned since the document object may not yet - * be constructed when this method returns. - * @exception DOMException - * INVALID_STATE_ERR: Raised if the LSParser.busy - * attribute is true. - * @exception LSException - * PARSE_ERR: Raised if the LSParser was unable to load - * the XML document. DOM applications should attach a - * DOMErrorHandler using the parameter " - * error-handler" if they wish to get details on the error. - */ - public Document parseURI(String uri) - throws DOMException, LSException; - - // ACTION_TYPES - /** - * Append the result of the parse operation as children of the context - * node. For this action to work, the context node must be an - * Element or a DocumentFragment. - */ - public static final short ACTION_APPEND_AS_CHILDREN = 1; - /** - * Replace all the children of the context node with the result of the - * parse operation. For this action to work, the context node must be an - * Element, a Document, or a - * DocumentFragment. - */ - public static final short ACTION_REPLACE_CHILDREN = 2; - /** - * Insert the result of the parse operation as the immediately preceding - * sibling of the context node. For this action to work the context - * node's parent must be an Element or a - * DocumentFragment. - */ - public static final short ACTION_INSERT_BEFORE = 3; - /** - * Insert the result of the parse operation as the immediately following - * sibling of the context node. For this action to work the context - * node's parent must be an Element or a - * DocumentFragment. - */ - public static final short ACTION_INSERT_AFTER = 4; - /** - * Replace the context node with the result of the parse operation. For - * this action to work, the context node must have a parent, and the - * parent must be an Element or a - * DocumentFragment. - */ - public static final short ACTION_REPLACE = 5; - - /** - * Parse an XML fragment from a resource identified by a - * LSInput and insert the content into an existing document - * at the position specified with the context and - * action arguments. When parsing the input stream, the - * context node (or its parent, depending on where the result will be - * inserted) is used for resolving unbound namespace prefixes. The - * context node's ownerDocument node (or the node itself if - * the node of type DOCUMENT_NODE) is used to resolve - * default attributes and entity references. - *
As the new data is inserted into the document, at least one - * mutation event is fired per new immediate child or sibling of the - * context node. - *
If the context node is a Document node and the action - * is ACTION_REPLACE_CHILDREN, then the document that is - * passed as the context node will be changed such that its - * xmlEncoding, documentURI, - * xmlVersion, inputEncoding, - * xmlStandalone, and all other such attributes are set to - * what they would be set to if the input source was parsed using - * LSParser.parse(). - *
This method is always synchronous, even if the - * LSParser is asynchronous (LSParser.async is - * true). - *
If an error occurs while parsing, the caller is notified through - * the ErrorHandler instance associated with the " - * error-handler" parameter of the DOMConfiguration. - *
When calling parseWithContext, the values of the - * following configuration parameters will be ignored and their default - * values will always be used instead: " - * validate", " - * validate-if-schema", and " - * element-content-whitespace". Other parameters will be treated normally, and the parser is expected - * to call the LSParserFilter just as if a whole document - * was parsed. - * @param input The LSInput from which the source document - * is to be read. The source document must be an XML fragment, i.e. - * anything except a complete XML document (except in the case where - * the context node of type DOCUMENT_NODE, and the action - * is ACTION_REPLACE_CHILDREN), a DOCTYPE (internal - * subset), entity declaration(s), notation declaration(s), or XML or - * text declaration(s). - * @param contextArg The node that is used as the context for the data - * that is being parsed. This node must be a Document - * node, a DocumentFragment node, or a node of a type - * that is allowed as a child of an Element node, e.g. it - * cannot be an Attribute node. - * @param action This parameter describes which action should be taken - * between the new set of nodes being inserted and the existing - * children of the context node. The set of possible actions is - * defined in ACTION_TYPES above. - * @return Return the node that is the result of the parse operation. If - * the result is more than one top-level node, the first one is - * returned. - * @exception DOMException - * HIERARCHY_REQUEST_ERR: Raised if the content cannot replace, be - * inserted before, after, or as a child of the context node (see also - * Node.insertBefore or Node.replaceChild in [DOM Level 3 Core] - * ). - *
NOT_SUPPORTED_ERR: Raised if the LSParser doesn't - * support this method, or if the context node is of type - * Document and the DOM implementation doesn't support - * the replacement of the DocumentType child or - * Element child. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if the context node is a - * read only node and the content is being appended to its child list, - * or if the parent node of the context node is read only node and the - * content is being inserted in its child list. - *
INVALID_STATE_ERR: Raised if the LSParser.busy - * attribute is true. - * @exception LSException - * PARSE_ERR: Raised if the LSParser was unable to load - * the XML fragment. DOM applications should attach a - * DOMErrorHandler using the parameter " - * error-handler" if they wish to get details on the error. - */ - public Node parseWithContext(LSInput input, - Node contextArg, - short action) - throws DOMException, LSException; - - /** - * Abort the loading of the document that is currently being loaded by - * the LSParser. If the LSParser is currently - * not busy, a call to this method does nothing. - */ - public void abort(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ls/LSParserFilter.java b/libjava/external/w3c_dom/org/w3c/dom/ls/LSParserFilter.java deleted file mode 100644 index 4e612945e95..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ls/LSParserFilter.java +++ /dev/null @@ -1,172 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.ls; - -import org.w3c.dom.Node; -import org.w3c.dom.Element; - -/** - * LSParserFilters provide applications the ability to examine - * nodes as they are being constructed while parsing. As each node is - * examined, it may be modified or removed, or the entire parse may be - * terminated early. - *

At the time any of the filter methods are called by the parser, the - * owner Document and DOMImplementation objects exist and are accessible. - * The document element is never passed to the LSParserFilter - * methods, i.e. it is not possible to filter out the document element. - * Document, DocumentType, Notation, - * Entity, and Attr nodes are never passed to the - * acceptNode method on the filter. The child nodes of an - * EntityReference node are passed to the filter if the - * parameter " - * entities" is set to false. Note that, as described by the parameter " - * entities", unexpanded entity reference nodes are never discarded and are always - * passed to the filter. - *

All validity checking while parsing a document occurs on the source - * document as it appears on the input stream, not on the DOM document as it - * is built in memory. With filters, the document in memory may be a subset - * of the document on the stream, and its validity may have been affected by - * the filtering. - *

All default attributes must be present on elements when the elements - * are passed to the filter methods. All other default content must be - * passed to the filter methods. - *

DOM applications must not raise exceptions in a filter. The effect of - * throwing exceptions from a filter is DOM implementation dependent. - *

See also the Document Object Model (DOM) Level 3 Load -and Save Specification. - */ -public interface LSParserFilter { - // Constants returned by startElement and acceptNode - /** - * Accept the node. - */ - public static final short FILTER_ACCEPT = 1; - /** - * Reject the node and its children. - */ - public static final short FILTER_REJECT = 2; - /** - * Skip this single node. The children of this node will still be - * considered. - */ - public static final short FILTER_SKIP = 3; - /** - * Interrupt the normal processing of the document. - */ - public static final short FILTER_INTERRUPT = 4; - - /** - * The parser will call this method after each Element start - * tag has been scanned, but before the remainder of the - * Element is processed. The intent is to allow the - * element, including any children, to be efficiently skipped. Note that - * only element nodes are passed to the startElement - * function. - *
The element node passed to startElement for filtering - * will include all of the Element's attributes, but none of the - * children nodes. The Element may not yet be in place in the document - * being constructed (it may not have a parent node.) - *
A startElement filter function may access or change - * the attributes for the Element. Changing Namespace declarations will - * have no effect on namespace resolution by the parser. - *
For efficiency, the Element node passed to the filter may not be - * the same one as is actually placed in the tree if the node is - * accepted. And the actual node (node object identity) may be reused - * during the process of reading in and filtering a document. - * @param elementArg The newly encountered element. At the time this - * method is called, the element is incomplete - it will have its - * attributes, but no children. - * @return - *

    - *
  • FILTER_ACCEPT if the Element should - * be included in the DOM document being built. - *
  • - *
  • - * FILTER_REJECT if the Element and all of - * its children should be rejected. - *
  • - *
  • FILTER_SKIP if the - * Element should be skipped. All of its children are - * inserted in place of the skipped Element node. - *
  • - *
  • - * FILTER_INTERRUPT if the filter wants to stop the - * processing of the document. Interrupting the processing of the - * document does no longer guarantee that the resulting DOM tree is - * XML well-formed. The Element is rejected. - *
  • - *
Returning - * any other values will result in unspecified behavior. - */ - public short startElement(Element elementArg); - - /** - * This method will be called by the parser at the completion of the - * parsing of each node. The node and all of its descendants will exist - * and be complete. The parent node will also exist, although it may be - * incomplete, i.e. it may have additional children that have not yet - * been parsed. Attribute nodes are never passed to this function. - *
From within this method, the new node may be freely modified - - * children may be added or removed, text nodes modified, etc. The state - * of the rest of the document outside this node is not defined, and the - * affect of any attempt to navigate to, or to modify any other part of - * the document is undefined. - *
For validating parsers, the checks are made on the original - * document, before any modification by the filter. No validity checks - * are made on any document modifications made by the filter. - *
If this new node is rejected, the parser might reuse the new node - * and any of its descendants. - * @param nodeArg The newly constructed element. At the time this method - * is called, the element is complete - it has all of its children - * (and their children, recursively) and attributes, and is attached - * as a child to its parent. - * @return - *
    - *
  • FILTER_ACCEPT if this Node should - * be included in the DOM document being built. - *
  • - *
  • - * FILTER_REJECT if the Node and all of its - * children should be rejected. - *
  • - *
  • FILTER_SKIP if the - * Node should be skipped and the Node - * should be replaced by all the children of the Node. - *
  • - *
  • - * FILTER_INTERRUPT if the filter wants to stop the - * processing of the document. Interrupting the processing of the - * document does no longer guarantee that the resulting DOM tree is - * XML well-formed. The Node is accepted and will be the - * last completely parsed node. - *
  • - *
- */ - public short acceptNode(Node nodeArg); - - /** - * Tells the LSParser what types of nodes to show to the - * method LSParserFilter.acceptNode. If a node is not shown - * to the filter using this attribute, it is automatically included in - * the DOM document being built. See NodeFilter for - * definition of the constants. The constants SHOW_ATTRIBUTE - * , SHOW_DOCUMENT, SHOW_DOCUMENT_TYPE, - * SHOW_NOTATION, SHOW_ENTITY, and - * SHOW_DOCUMENT_FRAGMENT are meaningless here. Those nodes - * will never be passed to LSParserFilter.acceptNode. - *
The constants used here are defined in [DOM Level 2 Traversal and Range] - * . - */ - public int getWhatToShow(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ls/LSProgressEvent.java b/libjava/external/w3c_dom/org/w3c/dom/ls/LSProgressEvent.java deleted file mode 100644 index da98e14ad5b..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ls/LSProgressEvent.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.ls; - -import org.w3c.dom.events.Event; - -/** - * This interface represents a progress event object that notifies the - * application about progress as a document is parsed. It extends the - * Event interface defined in [DOM Level 3 Events] - * . - *

The units used for the attributes position and - * totalSize are not specified and can be implementation and - * input dependent. - *

See also the Document Object Model (DOM) Level 3 Load -and Save Specification. - */ -public interface LSProgressEvent extends Event { - /** - * The input source that is being parsed. - */ - public LSInput getInput(); - - /** - * The current position in the input source, including all external - * entities and other resources that have been read. - */ - public int getPosition(); - - /** - * The total size of the document including all external resources, this - * number might change as a document is being parsed if references to - * more external resources are seen. A value of 0 is - * returned if the total size cannot be determined or estimated. - */ - public int getTotalSize(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ls/LSResourceResolver.java b/libjava/external/w3c_dom/org/w3c/dom/ls/LSResourceResolver.java deleted file mode 100644 index c0c523c8a00..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ls/LSResourceResolver.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.ls; - -/** - * LSResourceResolver provides a way for applications to - * redirect references to external resources. - *

Applications needing to implement custom handling for external - * resources can implement this interface and register their implementation - * by setting the "resource-resolver" parameter of - * DOMConfiguration objects attached to LSParser - * and LSSerializer. It can also be register on - * DOMConfiguration objects attached to Document - * if the "LS" feature is supported. - *

The LSParser will then allow the application to intercept - * any external entities, including the external DTD subset and external - * parameter entities, before including them. The top-level document entity - * is never passed to the resolveResource method. - *

Many DOM applications will not need to implement this interface, but it - * will be especially useful for applications that build XML documents from - * databases or other specialized input sources, or for applications that - * use URNs. - *

Note: LSResourceResolver is based on the SAX2 [SAX] EntityResolver - * interface. - *

See also the Document Object Model (DOM) Level 3 Load -and Save Specification. - */ -public interface LSResourceResolver { - /** - * Allow the application to resolve external resources. - *
The LSParser will call this method before opening any - * external resource, including the external DTD subset, external - * entities referenced within the DTD, and external entities referenced - * within the document element (however, the top-level document entity - * is not passed to this method). The application may then request that - * the LSParser resolve the external resource itself, that - * it use an alternative URI, or that it use an entirely different input - * source. - *
Application writers can use this method to redirect external - * system identifiers to secure and/or local URI, to look up public - * identifiers in a catalogue, or to read an entity from a database or - * other input source (including, for example, a dialog box). - * @param type The type of the resource being resolved. For XML [XML 1.0] resources - * (i.e. entities), applications must use the value - * "http://www.w3.org/TR/REC-xml". For XML Schema [XML Schema Part 1] - * , applications must use the value - * "http://www.w3.org/2001/XMLSchema". Other types of - * resources are outside the scope of this specification and therefore - * should recommend an absolute URI in order to use this method. - * @param namespaceURI The namespace of the resource being resolved, - * e.g. the target namespace of the XML Schema [XML Schema Part 1] - * when resolving XML Schema resources. - * @param publicId The public identifier of the external entity being - * referenced, or null if no public identifier was - * supplied or if the resource is not an entity. - * @param systemId The system identifier, a URI reference [IETF RFC 2396], of the - * external resource being referenced, or null if no - * system identifier was supplied. - * @param baseURI The absolute base URI of the resource being parsed, or - * null if there is no base URI. - * @return A LSInput object describing the new input - * source, or null to request that the parser open a - * regular URI connection to the resource. - */ - public LSInput resolveResource(String type, - String namespaceURI, - String publicId, - String systemId, - String baseURI); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ls/LSSerializer.java b/libjava/external/w3c_dom/org/w3c/dom/ls/LSSerializer.java deleted file mode 100644 index e7b6350d304..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ls/LSSerializer.java +++ /dev/null @@ -1,436 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.ls; - -import org.w3c.dom.DOMConfiguration; -import org.w3c.dom.Node; -import org.w3c.dom.DOMException; - -/** - * A LSSerializer provides an API for serializing (writing) a - * DOM document out into XML. The XML data is written to a string or an - * output stream. Any changes or fixups made during the serialization affect - * only the serialized data. The Document object and its - * children are never altered by the serialization operation. - *

During serialization of XML data, namespace fixup is done as defined in [DOM Level 3 Core] - * , Appendix B. [DOM Level 2 Core] - * allows empty strings as a real namespace URI. If the - * namespaceURI of a Node is empty string, the - * serialization will treat them as null, ignoring the prefix - * if any. - *

LSSerializer accepts any node type for serialization. For - * nodes of type Document or Entity, well-formed - * XML will be created when possible (well-formedness is guaranteed if the - * document or entity comes from a parse operation and is unchanged since it - * was created). The serialized output for these node types is either as a - * XML document or an External XML Entity, respectively, and is acceptable - * input for an XML parser. For all other types of nodes the serialized form - * is implementation dependent. - *

Within a Document, DocumentFragment, or - * Entity being serialized, Nodes are processed as - * follows - *

    - *
  • Document nodes are written, including the XML - * declaration (unless the parameter "xml-declaration" is set to - * false) and a DTD subset, if one exists in the DOM. Writing a - * Document node serializes the entire document. - *
  • - *
  • - * Entity nodes, when written directly by - * LSSerializer.write, outputs the entity expansion but no - * namespace fixup is done. The resulting output will be valid as an - * external entity. - *
  • - *
  • If the parameter " - * entities" is set to true, EntityReference nodes are - * serialized as an entity reference of the form " - * &entityName;" in the output. Child nodes (the expansion) - * of the entity reference are ignored. If the parameter " - * entities" is set to false, only the children of the entity reference - * are serialized. EntityReference nodes with no children (no - * corresponding Entity node or the corresponding - * Entity nodes have no children) are always serialized. - *
  • - *
  • - * CDATAsections containing content characters that cannot be - * represented in the specified output encoding are handled according to the - * " - * split-cdata-sections" parameter. If the parameter is set to true, - * CDATAsections are split, and the unrepresentable characters - * are serialized as numeric character references in ordinary content. The - * exact position and number of splits is not specified. If the parameter - * is set to false, unrepresentable characters in a - * CDATAsection are reported as - * "wf-invalid-character" errors if the parameter " - * well-formed" is set to true. The error is not recoverable - there is no - * mechanism for supplying alternative characters and continuing with the - * serialization. - *
  • - *
  • DocumentFragment nodes are serialized by - * serializing the children of the document fragment in the order they - * appear in the document fragment. - *
  • - *
  • All other node types (Element, Text, - * etc.) are serialized to their corresponding XML source form. - *
  • - *
- *

Note: The serialization of a Node does not always - * generate a well-formed XML document, i.e. a LSParser might - * throw fatal errors when parsing the resulting serialization. - *

Within the character data of a document (outside of markup), any - * characters that cannot be represented directly are replaced with - * character references. Occurrences of '<' and '&' are replaced by - * the predefined entities &lt; and &amp;. The other predefined - * entities (&gt;, &apos;, and &quot;) might not be used, except - * where needed (e.g. using &gt; in cases such as ']]>'). Any - * characters that cannot be represented directly in the output character - * encoding are serialized as numeric character references (and since - * character encoding standards commonly use hexadecimal representations of - * characters, using the hexadecimal representation when serializing - * character references is encouraged). - *

To allow attribute values to contain both single and double quotes, the - * apostrophe or single-quote character (') may be represented as - * "&apos;", and the double-quote character (") as "&quot;". New - * line characters and other characters that cannot be represented directly - * in attribute values in the output character encoding are serialized as a - * numeric character reference. - *

Within markup, but outside of attributes, any occurrence of a character - * that cannot be represented in the output character encoding is reported - * as a DOMError fatal error. An example would be serializing - * the element <LaCa\u00f1ada/> with encoding="us-ascii". - * This will result with a generation of a DOMError - * "wf-invalid-character-in-node-name" (as proposed in " - * well-formed"). - *

When requested by setting the parameter " - * normalize-characters" on LSSerializer to true, character normalization is - * performed according to the definition of fully - * normalized characters included in appendix E of [XML 1.1] on all - * data to be serialized, both markup and character data. The character - * normalization process affects only the data as it is being written; it - * does not alter the DOM's view of the document after serialization has - * completed. - *

Implementations are required to support the encodings "UTF-8", - * "UTF-16", "UTF-16BE", and "UTF-16LE" to guarantee that data is - * serializable in all encodings that are required to be supported by all - * XML parsers. When the encoding is UTF-8, whether or not a byte order mark - * is serialized, or if the output is big-endian or little-endian, is - * implementation dependent. When the encoding is UTF-16, whether or not the - * output is big-endian or little-endian is implementation dependent, but a - * Byte Order Mark must be generated for non-character outputs, such as - * LSOutput.byteStream or LSOutput.systemId. If - * the Byte Order Mark is not generated, a "byte-order-mark-needed" warning - * is reported. When the encoding is UTF-16LE or UTF-16BE, the output is - * big-endian (UTF-16BE) or little-endian (UTF-16LE) and the Byte Order Mark - * is not be generated. In all cases, the encoding declaration, if - * generated, will correspond to the encoding used during the serialization - * (e.g. encoding="UTF-16" will appear if UTF-16 was - * requested). - *

Namespaces are fixed up during serialization, the serialization process - * will verify that namespace declarations, namespace prefixes and the - * namespace URI associated with elements and attributes are consistent. If - * inconsistencies are found, the serialized form of the document will be - * altered to remove them. The method used for doing the namespace fixup - * while serializing a document is the algorithm defined in Appendix B.1, - * "Namespace normalization", of [DOM Level 3 Core] - * . - *

While serializing a document, the parameter "discard-default-content" - * controls whether or not non-specified data is serialized. - *

While serializing, errors and warnings are reported to the application - * through the error handler (LSSerializer.domConfig's " - * error-handler" parameter). This specification does in no way try to define all possible - * errors and warnings that can occur while serializing a DOM node, but some - * common error and warning cases are defined. The types ( - * DOMError.type) of errors and warnings defined by this - * specification are: - *

- *
"no-output-specified" [fatal]
- *
Raised when - * writing to a LSOutput if no output is specified in the - * LSOutput.
- *
- * "unbound-prefix-in-entity-reference" [fatal]
- *
Raised if the - * configuration parameter " - * namespaces" is set to true and an entity whose replacement text - * contains unbound namespace prefixes is referenced in a location where - * there are no bindings for the namespace prefixes.
- *
- * "unsupported-encoding" [fatal]
- *
Raised if an unsupported - * encoding is encountered.
- *
- *

In addition to raising the defined errors and warnings, implementations - * are expected to raise implementation specific errors and warnings for any - * other error and warning cases such as IO errors (file not found, - * permission denied,...) and so on. - *

See also the Document Object Model (DOM) Level 3 Load -and Save Specification. - */ -public interface LSSerializer { - /** - * The DOMConfiguration object used by the - * LSSerializer when serializing a DOM node. - *
In addition to the parameters recognized by the - * DOMConfiguration interface defined in [DOM Level 3 Core] - * , the DOMConfiguration objects for - * LSSerializer adds, or modifies, the following - * parameters: - *

- *
"canonical-form"
- *
- *
- *
true
- *
[optional] Writes the document according to the rules specified in [Canonical XML]. - * In addition to the behavior described in " - * canonical-form" [DOM Level 3 Core] - * , setting this parameter to true will set the parameters - * "format-pretty-print", "discard-default-content", and "xml-declaration - * ", to false. Setting one of those parameters to - * true will set this parameter to false. - * Serializing an XML 1.1 document when "canonical-form" is - * true will generate a fatal error.
- *
false
- *
[required] (default) Do not canonicalize the output.
- *
- *
"discard-default-content"
- *
- *
- *
- * true
- *
[required] (default) Use the Attr.specified attribute to decide what attributes - * should be discarded. Note that some implementations might use - * whatever information available to the implementation (i.e. XML - * schema, DTD, the Attr.specified attribute, and so on) to - * determine what attributes and content to discard if this parameter is - * set to true.
- *
false
- *
[required]Keep all attributes and all content.
- *
- *
"format-pretty-print"
- *
- *
- *
- * true
- *
[optional] Formatting the output by adding whitespace to produce a pretty-printed, - * indented, human-readable form. The exact form of the transformations - * is not specified by this specification. Pretty-printing changes the - * content of the document and may affect the validity of the document, - * validating implementations should preserve validity.
- *
- * false
- *
[required] (default) Don't pretty-print the result.
- *
- *
- * "ignore-unknown-character-denormalizations"
- *
- *
- *
- * true
- *
[required] (default) If, while verifying full normalization when [XML 1.1] is - * supported, a character is encountered for which the normalization - * properties cannot be determined, then raise a - * "unknown-character-denormalization" warning (instead of - * raising an error, if this parameter is not set) and ignore any - * possible denormalizations caused by these characters.
- *
- * false
- *
[optional] Report a fatal error if a character is encountered for which the - * processor cannot determine the normalization properties.
- *
- *
- * "normalize-characters"
- *
This parameter is equivalent to - * the one defined by DOMConfiguration in [DOM Level 3 Core] - * . Unlike in the Core, the default value for this parameter is - * true. While DOM implementations are not required to - * support fully - * normalizing the characters in the document according to appendix E of [XML 1.1], this - * parameter must be activated by default if supported.
- *
- * "xml-declaration"
- *
- *
- *
true
- *
[required] (default) If a Document, Element, or Entity - * node is serialized, the XML declaration, or text declaration, should - * be included. The version (Document.xmlVersion if the - * document is a Level 3 document and the version is non-null, otherwise - * use the value "1.0"), and the output encoding (see - * LSSerializer.write for details on how to find the output - * encoding) are specified in the serialized XML declaration.
- *
- * false
- *
[required] Do not serialize the XML and text declarations. Report a - * "xml-declaration-needed" warning if this will cause - * problems (i.e. the serialized data is of an XML version other than [XML 1.0], or an - * encoding would be needed to be able to re-parse the serialized data).
- *
- *
- */ - public DOMConfiguration getDomConfig(); - - /** - * The end-of-line sequence of characters to be used in the XML being - * written out. Any string is supported, but XML treats only a certain - * set of characters sequence as end-of-line (See section 2.11, - * "End-of-Line Handling" in [XML 1.0], if the - * serialized content is XML 1.0 or section 2.11, "End-of-Line Handling" - * in [XML 1.1], if the - * serialized content is XML 1.1). Using other character sequences than - * the recommended ones can result in a document that is either not - * serializable or not well-formed). - *
On retrieval, the default value of this attribute is the - * implementation specific default end-of-line sequence. DOM - * implementations should choose the default to match the usual - * convention for text files in the environment being used. - * Implementations must choose a default sequence that matches one of - * those allowed by XML 1.0 or XML 1.1, depending on the serialized - * content. Setting this attribute to null will reset its - * value to the default value. - *
- */ - public String getNewLine(); - /** - * The end-of-line sequence of characters to be used in the XML being - * written out. Any string is supported, but XML treats only a certain - * set of characters sequence as end-of-line (See section 2.11, - * "End-of-Line Handling" in [XML 1.0], if the - * serialized content is XML 1.0 or section 2.11, "End-of-Line Handling" - * in [XML 1.1], if the - * serialized content is XML 1.1). Using other character sequences than - * the recommended ones can result in a document that is either not - * serializable or not well-formed). - *
On retrieval, the default value of this attribute is the - * implementation specific default end-of-line sequence. DOM - * implementations should choose the default to match the usual - * convention for text files in the environment being used. - * Implementations must choose a default sequence that matches one of - * those allowed by XML 1.0 or XML 1.1, depending on the serialized - * content. Setting this attribute to null will reset its - * value to the default value. - *
- */ - public void setNewLine(String newLine); - - /** - * When the application provides a filter, the serializer will call out - * to the filter before serializing each Node. The filter implementation - * can choose to remove the node from the stream or to terminate the - * serialization early. - *
The filter is invoked after the operations requested by the - * DOMConfiguration parameters have been applied. For - * example, CDATA sections won't be passed to the filter if " - * cdata-sections" is set to false. - */ - public LSSerializerFilter getFilter(); - /** - * When the application provides a filter, the serializer will call out - * to the filter before serializing each Node. The filter implementation - * can choose to remove the node from the stream or to terminate the - * serialization early. - *
The filter is invoked after the operations requested by the - * DOMConfiguration parameters have been applied. For - * example, CDATA sections won't be passed to the filter if " - * cdata-sections" is set to false. - */ - public void setFilter(LSSerializerFilter filter); - - /** - * Serialize the specified node as described above in the general - * description of the LSSerializer interface. The output is - * written to the supplied LSOutput. - *
When writing to a LSOutput, the encoding is found by - * looking at the encoding information that is reachable through the - * LSOutput and the item to be written (or its owner - * document) in this order: - *
    - *
  1. LSOutput.encoding, - *
  2. - *
  3. - * Document.inputEncoding, - *
  4. - *
  5. - * Document.xmlEncoding. - *
  6. - *
- *
If no encoding is reachable through the above properties, a - * default encoding of "UTF-8" will be used. If the specified encoding - * is not supported an "unsupported-encoding" fatal error is raised. - *
If no output is specified in the LSOutput, a - * "no-output-specified" fatal error is raised. - *
The implementation is responsible of associating the appropriate - * media type with the serialized data. - *
When writing to a HTTP URI, a HTTP PUT is performed. When writing - * to other types of URIs, the mechanism for writing the data to the URI - * is implementation dependent. - * @param nodeArg The node to serialize. - * @param destination The destination for the serialized DOM. - * @return Returns true if node was - * successfully serialized. Return false in case the - * normal processing stopped but the implementation kept serializing - * the document; the result of the serialization being implementation - * dependent then. - * @exception LSException - * SERIALIZE_ERR: Raised if the LSSerializer was unable to - * serialize the node. DOM applications should attach a - * DOMErrorHandler using the parameter " - * error-handler" if they wish to get details on the error. - */ - public boolean write(Node nodeArg, - LSOutput destination) - throws LSException; - - /** - * A convenience method that acts as if LSSerializer.write - * was called with a LSOutput with no encoding specified - * and LSOutput.systemId set to the uri - * argument. - * @param nodeArg The node to serialize. - * @param uri The URI to write to. - * @return Returns true if node was - * successfully serialized. Return false in case the - * normal processing stopped but the implementation kept serializing - * the document; the result of the serialization being implementation - * dependent then. - * @exception LSException - * SERIALIZE_ERR: Raised if the LSSerializer was unable to - * serialize the node. DOM applications should attach a - * DOMErrorHandler using the parameter " - * error-handler" if they wish to get details on the error. - */ - public boolean writeToURI(Node nodeArg, - String uri) - throws LSException; - - /** - * Serialize the specified node as described above in the general - * description of the LSSerializer interface. The output is - * written to a DOMString that is returned to the caller. - * The encoding used is the encoding of the DOMString type, - * i.e. UTF-16. Note that no Byte Order Mark is generated in a - * DOMString object. - * @param nodeArg The node to serialize. - * @return Returns the serialized data. - * @exception DOMException - * DOMSTRING_SIZE_ERR: Raised if the resulting string is too long to - * fit in a DOMString. - * @exception LSException - * SERIALIZE_ERR: Raised if the LSSerializer was unable to - * serialize the node. DOM applications should attach a - * DOMErrorHandler using the parameter " - * error-handler" if they wish to get details on the error. - */ - public String writeToString(Node nodeArg) - throws DOMException, LSException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ls/LSSerializerFilter.java b/libjava/external/w3c_dom/org/w3c/dom/ls/LSSerializerFilter.java deleted file mode 100644 index 049459c6417..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ls/LSSerializerFilter.java +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.ls; - -import org.w3c.dom.traversal.NodeFilter; - -/** - * LSSerializerFilters provide applications the ability to - * examine nodes as they are being serialized and decide what nodes should - * be serialized or not. The LSSerializerFilter interface is - * based on the NodeFilter interface defined in [DOM Level 2 Traversal and Range] - * . - *

Document, DocumentType, - * DocumentFragment, Notation, Entity - * , and children of Attr nodes are not passed to the filter. - * The child nodes of an EntityReference node are only passed - * to the filter if the EntityReference node is skipped by the - * method LSParserFilter.acceptNode(). - *

When serializing an Element, the element is passed to the - * filter before any of its attributes are passed to the filter. Namespace - * declaration attributes, and default attributes (except in the case when " - * discard-default-content" is set to false), are never passed - * to the filter. - *

The result of any attempt to modify a node passed to a - * LSSerializerFilter is implementation dependent. - *

DOM applications must not raise exceptions in a filter. The effect of - * throwing exceptions from a filter is DOM implementation dependent. - *

For efficiency, a node passed to the filter may not be the same as the - * one that is actually in the tree. And the actual node (node object - * identity) may be reused during the process of filtering and serializing a - * document. - *

See also the Document Object Model (DOM) Level 3 Load -and Save Specification. - */ -public interface LSSerializerFilter extends NodeFilter { - /** - * Tells the LSSerializer what types of nodes to show to the - * filter. If a node is not shown to the filter using this attribute, it - * is automatically serialized. See NodeFilter for - * definition of the constants. The constants SHOW_DOCUMENT - * , SHOW_DOCUMENT_TYPE, SHOW_DOCUMENT_FRAGMENT - * , SHOW_NOTATION, and SHOW_ENTITY are - * meaningless here, such nodes will never be passed to a - * LSSerializerFilter. - *
Unlike [DOM Level 2 Traversal and Range] - * , the SHOW_ATTRIBUTE constant indicates that the - * Attr nodes are shown and passed to the filter. - *
The constants used here are defined in [DOM Level 2 Traversal and Range] - * . - */ - public int getWhatToShow(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ranges/DocumentRange.java b/libjava/external/w3c_dom/org/w3c/dom/ranges/DocumentRange.java deleted file mode 100644 index 6b522670e20..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ranges/DocumentRange.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.ranges; - -/** - *

See also the Document Object Model (DOM) Level 2 Traversal and Range Specification. - * @since DOM Level 2 - */ -public interface DocumentRange { - /** - * This interface can be obtained from the object implementing the - * Document interface using binding-specific casting - * methods. - * @return The initial state of the Range returned from this method is - * such that both of its boundary-points are positioned at the - * beginning of the corresponding Document, before any content. The - * Range returned can only be used to select content associated with - * this Document, or with DocumentFragments and Attrs for which this - * Document is the ownerDocument. - */ - public Range createRange(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ranges/Range.java b/libjava/external/w3c_dom/org/w3c/dom/ranges/Range.java deleted file mode 100644 index a576b4dd642..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ranges/Range.java +++ /dev/null @@ -1,416 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.ranges; - -import org.w3c.dom.Node; -import org.w3c.dom.DOMException; -import org.w3c.dom.DocumentFragment; - -/** - *

See also the Document Object Model (DOM) Level 2 Traversal and Range Specification. - * @since DOM Level 2 - */ -public interface Range { - /** - * Node within which the Range begins - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - */ - public Node getStartContainer() - throws DOMException; - - /** - * Offset within the starting node of the Range. - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - */ - public int getStartOffset() - throws DOMException; - - /** - * Node within which the Range ends - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - */ - public Node getEndContainer() - throws DOMException; - - /** - * Offset within the ending node of the Range. - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - */ - public int getEndOffset() - throws DOMException; - - /** - * TRUE if the Range is collapsed - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - */ - public boolean getCollapsed() - throws DOMException; - - /** - * The deepest common ancestor container of the Range's two - * boundary-points. - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - */ - public Node getCommonAncestorContainer() - throws DOMException; - - /** - * Sets the attributes describing the start of the Range. - * @param refNode The refNode value. This parameter must be - * different from null. - * @param offset The startOffset value. - * @exception RangeException - * INVALID_NODE_TYPE_ERR: Raised if refNode or an ancestor - * of refNode is an Entity, Notation, or DocumentType - * node. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if offset is negative or greater - * than the number of child units in refNode. Child units - * are 16-bit units if refNode is a type of CharacterData - * node (e.g., a Text or Comment node) or a ProcessingInstruction - * node. Child units are Nodes in all other cases. - *
INVALID_STATE_ERR: Raised if detach() has already - * been invoked on this object. - *
WRONG_DOCUMENT_ERR: Raised if refNode was created - * from a different document than the one that created this range. - */ - public void setStart(Node refNode, - int offset) - throws RangeException, DOMException; - - /** - * Sets the attributes describing the end of a Range. - * @param refNode The refNode value. This parameter must be - * different from null. - * @param offset The endOffset value. - * @exception RangeException - * INVALID_NODE_TYPE_ERR: Raised if refNode or an ancestor - * of refNode is an Entity, Notation, or DocumentType - * node. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if offset is negative or greater - * than the number of child units in refNode. Child units - * are 16-bit units if refNode is a type of CharacterData - * node (e.g., a Text or Comment node) or a ProcessingInstruction - * node. Child units are Nodes in all other cases. - *
INVALID_STATE_ERR: Raised if detach() has already - * been invoked on this object. - *
WRONG_DOCUMENT_ERR: Raised if refNode was created - * from a different document than the one that created this range. - */ - public void setEnd(Node refNode, - int offset) - throws RangeException, DOMException; - - /** - * Sets the start position to be before a node - * @param refNode Range starts before refNode - * @exception RangeException - * INVALID_NODE_TYPE_ERR: Raised if the root container of - * refNode is not an Attr, Document, or DocumentFragment - * node or if refNode is a Document, DocumentFragment, - * Attr, Entity, or Notation node. - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - *
WRONG_DOCUMENT_ERR: Raised if refNode was created - * from a different document than the one that created this range. - */ - public void setStartBefore(Node refNode) - throws RangeException, DOMException; - - /** - * Sets the start position to be after a node - * @param refNode Range starts after refNode - * @exception RangeException - * INVALID_NODE_TYPE_ERR: Raised if the root container of - * refNode is not an Attr, Document, or DocumentFragment - * node or if refNode is a Document, DocumentFragment, - * Attr, Entity, or Notation node. - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - *
WRONG_DOCUMENT_ERR: Raised if refNode was created - * from a different document than the one that created this range. - */ - public void setStartAfter(Node refNode) - throws RangeException, DOMException; - - /** - * Sets the end position to be before a node. - * @param refNode Range ends before refNode - * @exception RangeException - * INVALID_NODE_TYPE_ERR: Raised if the root container of - * refNode is not an Attr, Document, or DocumentFragment - * node or if refNode is a Document, DocumentFragment, - * Attr, Entity, or Notation node. - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - *
WRONG_DOCUMENT_ERR: Raised if refNode was created - * from a different document than the one that created this range. - */ - public void setEndBefore(Node refNode) - throws RangeException, DOMException; - - /** - * Sets the end of a Range to be after a node - * @param refNode Range ends after refNode. - * @exception RangeException - * INVALID_NODE_TYPE_ERR: Raised if the root container of - * refNode is not an Attr, Document or DocumentFragment - * node or if refNode is a Document, DocumentFragment, - * Attr, Entity, or Notation node. - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - *
WRONG_DOCUMENT_ERR: Raised if refNode was created - * from a different document than the one that created this range. - */ - public void setEndAfter(Node refNode) - throws RangeException, DOMException; - - /** - * Collapse a Range onto one of its boundary-points - * @param toStart If TRUE, collapses the Range onto its start; if FALSE, - * collapses it onto its end. - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - */ - public void collapse(boolean toStart) - throws DOMException; - - /** - * Select a node and its contents - * @param refNode The node to select. - * @exception RangeException - * INVALID_NODE_TYPE_ERR: Raised if an ancestor of refNode - * is an Entity, Notation or DocumentType node or if - * refNode is a Document, DocumentFragment, Attr, Entity, - * or Notation node. - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - *
WRONG_DOCUMENT_ERR: Raised if refNode was created - * from a different document than the one that created this range. - */ - public void selectNode(Node refNode) - throws RangeException, DOMException; - - /** - * Select the contents within a node - * @param refNode Node to select from - * @exception RangeException - * INVALID_NODE_TYPE_ERR: Raised if refNode or an ancestor - * of refNode is an Entity, Notation or DocumentType node. - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - *
WRONG_DOCUMENT_ERR: Raised if refNode was created - * from a different document than the one that created this range. - */ - public void selectNodeContents(Node refNode) - throws RangeException, DOMException; - - // CompareHow - /** - * Compare start boundary-point of sourceRange to start - * boundary-point of Range on which compareBoundaryPoints - * is invoked. - */ - public static final short START_TO_START = 0; - /** - * Compare start boundary-point of sourceRange to end - * boundary-point of Range on which compareBoundaryPoints - * is invoked. - */ - public static final short START_TO_END = 1; - /** - * Compare end boundary-point of sourceRange to end - * boundary-point of Range on which compareBoundaryPoints - * is invoked. - */ - public static final short END_TO_END = 2; - /** - * Compare end boundary-point of sourceRange to start - * boundary-point of Range on which compareBoundaryPoints - * is invoked. - */ - public static final short END_TO_START = 3; - - /** - * Compare the boundary-points of two Ranges in a document. - * @param how A code representing the type of comparison, as defined - * above. - * @param sourceRange The Range on which this current - * Range is compared to. - * @return -1, 0 or 1 depending on whether the corresponding - * boundary-point of the Range is respectively before, equal to, or - * after the corresponding boundary-point of sourceRange. - * @exception DOMException - * WRONG_DOCUMENT_ERR: Raised if the two Ranges are not in the same - * Document or DocumentFragment. - *
INVALID_STATE_ERR: Raised if detach() has already - * been invoked on this object. - */ - public short compareBoundaryPoints(short how, - Range sourceRange) - throws DOMException; - - /** - * Removes the contents of a Range from the containing document or - * document fragment without returning a reference to the removed - * content. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if any portion of the content of - * the Range is read-only or any of the nodes that contain any of the - * content of the Range are read-only. - *
INVALID_STATE_ERR: Raised if detach() has already - * been invoked on this object. - */ - public void deleteContents() - throws DOMException; - - /** - * Moves the contents of a Range from the containing document or document - * fragment to a new DocumentFragment. - * @return A DocumentFragment containing the extracted contents. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if any portion of the content of - * the Range is read-only or any of the nodes which contain any of the - * content of the Range are read-only. - *
HIERARCHY_REQUEST_ERR: Raised if a DocumentType node would be - * extracted into the new DocumentFragment. - *
INVALID_STATE_ERR: Raised if detach() has already - * been invoked on this object. - */ - public DocumentFragment extractContents() - throws DOMException; - - /** - * Duplicates the contents of a Range - * @return A DocumentFragment that contains content equivalent to this - * Range. - * @exception DOMException - * HIERARCHY_REQUEST_ERR: Raised if a DocumentType node would be - * extracted into the new DocumentFragment. - *
INVALID_STATE_ERR: Raised if detach() has already - * been invoked on this object. - */ - public DocumentFragment cloneContents() - throws DOMException; - - /** - * Inserts a node into the Document or DocumentFragment at the start of - * the Range. If the container is a Text node, this will be split at the - * start of the Range (as if the Text node's splitText method was - * performed at the insertion point) and the insertion will occur - * between the two resulting Text nodes. Adjacent Text nodes will not be - * automatically merged. If the node to be inserted is a - * DocumentFragment node, the children will be inserted rather than the - * DocumentFragment node itself. - * @param newNode The node to insert at the start of the Range - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor container of the - * start of the Range is read-only. - *
WRONG_DOCUMENT_ERR: Raised if newNode and the - * container of the start of the Range were not created from the same - * document. - *
HIERARCHY_REQUEST_ERR: Raised if the container of the start of - * the Range is of a type that does not allow children of the type of - * newNode or if newNode is an ancestor of - * the container. - *
INVALID_STATE_ERR: Raised if detach() has already - * been invoked on this object. - * @exception RangeException - * INVALID_NODE_TYPE_ERR: Raised if newNode is an Attr, - * Entity, Notation, or Document node. - */ - public void insertNode(Node newNode) - throws DOMException, RangeException; - - /** - * Reparents the contents of the Range to the given node and inserts the - * node at the position of the start of the Range. - * @param newParent The node to surround the contents with. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if an ancestor container of - * either boundary-point of the Range is read-only. - *
WRONG_DOCUMENT_ERR: Raised if newParent and the - * container of the start of the Range were not created from the same - * document. - *
HIERARCHY_REQUEST_ERR: Raised if the container of the start of - * the Range is of a type that does not allow children of the type of - * newParent or if newParent is an ancestor - * of the container or if node would end up with a child - * node of a type not allowed by the type of node. - *
INVALID_STATE_ERR: Raised if detach() has already - * been invoked on this object. - * @exception RangeException - * BAD_BOUNDARYPOINTS_ERR: Raised if the Range partially selects a - * non-text node. - *
INVALID_NODE_TYPE_ERR: Raised if node is an Attr, - * Entity, DocumentType, Notation, Document, or DocumentFragment node. - */ - public void surroundContents(Node newParent) - throws DOMException, RangeException; - - /** - * Produces a new Range whose boundary-points are equal to the - * boundary-points of the Range. - * @return The duplicated Range. - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - */ - public Range cloneRange() - throws DOMException; - - /** - * Returns the contents of a Range as a string. This string contains only - * the data characters, not any markup. - * @return The contents of the Range. - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - */ - public String toString() - throws DOMException; - - /** - * Called to indicate that the Range is no longer in use and that the - * implementation may relinquish any resources associated with this - * Range. Subsequent calls to any methods or attribute getters on this - * Range will result in a DOMException being thrown with an - * error code of INVALID_STATE_ERR. - * @exception DOMException - * INVALID_STATE_ERR: Raised if detach() has already been - * invoked on this object. - */ - public void detach() - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/ranges/RangeException.java b/libjava/external/w3c_dom/org/w3c/dom/ranges/RangeException.java deleted file mode 100644 index 551008e5dba..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/ranges/RangeException.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.ranges; - -/** - * Range operations may throw a RangeException as specified in - * their method descriptions. - *

See also the Document Object Model (DOM) Level 2 Traversal and Range Specification. - * @since DOM Level 2 - */ -public class RangeException extends RuntimeException { - public RangeException(short code, String message) { - super(message); - this.code = code; - } - public short code; - // RangeExceptionCode - /** - * If the boundary-points of a Range do not meet specific requirements. - */ - public static final short BAD_BOUNDARYPOINTS_ERR = 1; - /** - * If the container of an boundary-point of a Range is being set to either - * a node of an invalid type or a node with an ancestor of an invalid - * type. - */ - public static final short INVALID_NODE_TYPE_ERR = 2; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/stylesheets/DocumentStyle.java b/libjava/external/w3c_dom/org/w3c/dom/stylesheets/DocumentStyle.java deleted file mode 100644 index 612a561135a..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/stylesheets/DocumentStyle.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.stylesheets; - -/** - * The DocumentStyle interface provides a mechanism by which the - * style sheets embedded in a document can be retrieved. The expectation is - * that an instance of the DocumentStyle interface can be - * obtained by using binding-specific casting methods on an instance of the - * Document interface. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface DocumentStyle { - /** - * A list containing all the style sheets explicitly linked into or - * embedded in a document. For HTML documents, this includes external - * style sheets, included via the HTML LINK element, and inline STYLE - * elements. In XML, this includes external style sheets, included via - * style sheet processing instructions (see [XML StyleSheet]). - */ - public StyleSheetList getStyleSheets(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/stylesheets/LinkStyle.java b/libjava/external/w3c_dom/org/w3c/dom/stylesheets/LinkStyle.java deleted file mode 100644 index 481bd19dbab..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/stylesheets/LinkStyle.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.stylesheets; - -/** - * The LinkStyle interface provides a mechanism by which a style - * sheet can be retrieved from the node responsible for linking it into a - * document. An instance of the LinkStyle interface can be - * obtained using binding-specific casting methods on an instance of a - * linking node (HTMLLinkElement, HTMLStyleElement - * or ProcessingInstruction in DOM Level 2). - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface LinkStyle { - /** - * The style sheet. - */ - public StyleSheet getSheet(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/stylesheets/MediaList.java b/libjava/external/w3c_dom/org/w3c/dom/stylesheets/MediaList.java deleted file mode 100644 index f83d5f13d62..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/stylesheets/MediaList.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.stylesheets; - -import org.w3c.dom.DOMException; - -/** - * The MediaList interface provides the abstraction of an - * ordered collection of media, without defining or constraining how this - * collection is implemented. An empty list is the same as a list that - * contains the medium "all". - *

The items in the MediaList are accessible via an integral - * index, starting from 0. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface MediaList { - /** - * The parsable textual representation of the media list. This is a - * comma-separated list of media. - */ - public String getMediaText(); - /** - * The parsable textual representation of the media list. This is a - * comma-separated list of media. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified string value has a syntax error - * and is unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this media list is - * readonly. - */ - public void setMediaText(String mediaText) - throws DOMException; - - /** - * The number of media in the list. The range of valid media is - * 0 to length-1 inclusive. - */ - public int getLength(); - - /** - * Returns the indexth in the list. If index is - * greater than or equal to the number of media in the list, this - * returns null. - * @param index Index into the collection. - * @return The medium at the indexth position in the - * MediaList, or null if that is not a valid - * index. - */ - public String item(int index); - - /** - * Deletes the medium indicated by oldMedium from the list. - * @param oldMedium The medium to delete in the media list. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this list is readonly. - *
NOT_FOUND_ERR: Raised if oldMedium is not in the - * list. - */ - public void deleteMedium(String oldMedium) - throws DOMException; - - /** - * Adds the medium newMedium to the end of the list. If the - * newMedium is already used, it is first removed. - * @param newMedium The new medium to add. - * @exception DOMException - * INVALID_CHARACTER_ERR: If the medium contains characters that are - * invalid in the underlying style language. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this list is readonly. - */ - public void appendMedium(String newMedium) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/stylesheets/StyleSheet.java b/libjava/external/w3c_dom/org/w3c/dom/stylesheets/StyleSheet.java deleted file mode 100644 index 3da43076994..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/stylesheets/StyleSheet.java +++ /dev/null @@ -1,103 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.stylesheets; - -import org.w3c.dom.Node; - -/** - * The StyleSheet interface is the abstract base interface for - * any type of style sheet. It represents a single style sheet associated - * with a structured document. In HTML, the StyleSheet interface represents - * either an external style sheet, included via the HTML LINK element, or - * an inline STYLE element. In XML, this interface represents an external - * style sheet, included via a style sheet processing instruction. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface StyleSheet { - /** - * This specifies the style sheet language for this style sheet. The - * style sheet language is specified as a content type (e.g. - * "text/css"). The content type is often specified in the - * ownerNode. Also see the type attribute definition for - * the LINK element in HTML 4.0, and the type - * pseudo-attribute for the XML style sheet processing instruction. - */ - public String getType(); - - /** - * false if the style sheet is applied to the document. - * true if it is not. Modifying this attribute may cause a - * new resolution of style for the document. A stylesheet only applies - * if both an appropriate medium definition is present and the disabled - * attribute is false. So, if the media doesn't apply to the current - * user agent, the disabled attribute is ignored. - */ - public boolean getDisabled(); - /** - * false if the style sheet is applied to the document. - * true if it is not. Modifying this attribute may cause a - * new resolution of style for the document. A stylesheet only applies - * if both an appropriate medium definition is present and the disabled - * attribute is false. So, if the media doesn't apply to the current - * user agent, the disabled attribute is ignored. - */ - public void setDisabled(boolean disabled); - - /** - * The node that associates this style sheet with the document. For HTML, - * this may be the corresponding LINK or STYLE - * element. For XML, it may be the linking processing instruction. For - * style sheets that are included by other style sheets, the value of - * this attribute is null. - */ - public Node getOwnerNode(); - - /** - * For style sheet languages that support the concept of style sheet - * inclusion, this attribute represents the including style sheet, if - * one exists. If the style sheet is a top-level style sheet, or the - * style sheet language does not support inclusion, the value of this - * attribute is null. - */ - public StyleSheet getParentStyleSheet(); - - /** - * If the style sheet is a linked style sheet, the value of its attribute - * is its location. For inline style sheets, the value of this attribute - * is null. See the href attribute definition for the - * LINK element in HTML 4.0, and the href pseudo-attribute - * for the XML style sheet processing instruction. - */ - public String getHref(); - - /** - * The advisory title. The title is often specified in the - * ownerNode. See the title attribute definition for the - * LINK element in HTML 4.0, and the title pseudo-attribute - * for the XML style sheet processing instruction. - */ - public String getTitle(); - - /** - * The intended destination media for style information. The media is - * often specified in the ownerNode. If no media has been - * specified, the MediaList will be empty. See the media - * attribute definition for the LINK element in HTML 4.0, - * and the media pseudo-attribute for the XML style sheet processing - * instruction . Modifying the media list may cause a change to the - * attribute disabled. - */ - public MediaList getMedia(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/stylesheets/StyleSheetList.java b/libjava/external/w3c_dom/org/w3c/dom/stylesheets/StyleSheetList.java deleted file mode 100644 index b8f9a442330..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/stylesheets/StyleSheetList.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.stylesheets; - -/** - * The StyleSheetList interface provides the abstraction of an - * ordered collection of style sheets. - *

The items in the StyleSheetList are accessible via an - * integral index, starting from 0. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface StyleSheetList { - /** - * The number of StyleSheets in the list. The range of valid - * child stylesheet indices is 0 to length-1 - * inclusive. - */ - public int getLength(); - - /** - * Used to retrieve a style sheet by ordinal index. If index is greater - * than or equal to the number of style sheets in the list, this returns - * null. - * @param index Index into the collection - * @return The style sheet at the index position in the - * StyleSheetList, or null if that is not a - * valid index. - */ - public StyleSheet item(int index); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/traversal/DocumentTraversal.java b/libjava/external/w3c_dom/org/w3c/dom/traversal/DocumentTraversal.java deleted file mode 100644 index bc45ad9f753..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/traversal/DocumentTraversal.java +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.traversal; - -import org.w3c.dom.Node; -import org.w3c.dom.DOMException; - -/** - * DocumentTraversal contains methods that create - * NodeIterators and TreeWalkers to traverse a - * node and its children in document order (depth first, pre-order - * traversal, which is equivalent to the order in which the start tags occur - * in the text representation of the document). In DOMs which support the - * Traversal feature, DocumentTraversal will be implemented by - * the same objects that implement the Document interface. - *

See also the Document Object Model (DOM) Level 2 Traversal and Range Specification. - * @since DOM Level 2 - */ -public interface DocumentTraversal { - /** - * Create a new NodeIterator over the subtree rooted at the - * specified node. - * @param root The node which will be iterated together with its - * children. The NodeIterator is initially positioned - * just before this node. The whatToShow flags and the - * filter, if any, are not considered when setting this position. The - * root must not be null. - * @param whatToShow This flag specifies which node types may appear in - * the logical view of the tree presented by the - * NodeIterator. See the description of - * NodeFilter for the set of possible SHOW_ - * values.These flags can be combined using OR. - * @param filter The NodeFilter to be used with this - * NodeIterator, or null to indicate no - * filter. - * @param entityReferenceExpansion The value of this flag determines - * whether entity reference nodes are expanded. - * @return The newly created NodeIterator. - * @exception DOMException - * NOT_SUPPORTED_ERR: Raised if the specified root is - * null. - */ - public NodeIterator createNodeIterator(Node root, - int whatToShow, - NodeFilter filter, - boolean entityReferenceExpansion) - throws DOMException; - - /** - * Create a new TreeWalker over the subtree rooted at the - * specified node. - * @param root The node which will serve as the root for the - * TreeWalker. The whatToShow flags and the - * NodeFilter are not considered when setting this value; - * any node type will be accepted as the root. The - * currentNode of the TreeWalker is - * initialized to this node, whether or not it is visible. The - * root functions as a stopping point for traversal - * methods that look upward in the document structure, such as - * parentNode and nextNode. The root must - * not be null. - * @param whatToShow This flag specifies which node types may appear in - * the logical view of the tree presented by the - * TreeWalker. See the description of - * NodeFilter for the set of possible SHOW_ - * values.These flags can be combined using OR. - * @param filter The NodeFilter to be used with this - * TreeWalker, or null to indicate no filter. - * @param entityReferenceExpansion If this flag is false, the contents of - * EntityReference nodes are not presented in the logical - * view. - * @return The newly created TreeWalker. - * @exception DOMException - * NOT_SUPPORTED_ERR: Raised if the specified root is - * null. - */ - public TreeWalker createTreeWalker(Node root, - int whatToShow, - NodeFilter filter, - boolean entityReferenceExpansion) - throws DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/traversal/NodeFilter.java b/libjava/external/w3c_dom/org/w3c/dom/traversal/NodeFilter.java deleted file mode 100644 index b9beac476b3..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/traversal/NodeFilter.java +++ /dev/null @@ -1,144 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.traversal; - -import org.w3c.dom.Node; - -/** - * Filters are objects that know how to "filter out" nodes. If a - * NodeIterator or TreeWalker is given a - * NodeFilter, it applies the filter before it returns the next - * node. If the filter says to accept the node, the traversal logic returns - * it; otherwise, traversal looks for the next node and pretends that the - * node that was rejected was not there. - *

The DOM does not provide any filters. NodeFilter is just an - * interface that users can implement to provide their own filters. - *

NodeFilters do not need to know how to traverse from node - * to node, nor do they need to know anything about the data structure that - * is being traversed. This makes it very easy to write filters, since the - * only thing they have to know how to do is evaluate a single node. One - * filter may be used with a number of different kinds of traversals, - * encouraging code reuse. - *

See also the Document Object Model (DOM) Level 2 Traversal and Range Specification. - * @since DOM Level 2 - */ -public interface NodeFilter { - // Constants returned by acceptNode - /** - * Accept the node. Navigation methods defined for - * NodeIterator or TreeWalker will return this - * node. - */ - public static final short FILTER_ACCEPT = 1; - /** - * Reject the node. Navigation methods defined for - * NodeIterator or TreeWalker will not return - * this node. For TreeWalker, the children of this node - * will also be rejected. NodeIterators treat this as a - * synonym for FILTER_SKIP. - */ - public static final short FILTER_REJECT = 2; - /** - * Skip this single node. Navigation methods defined for - * NodeIterator or TreeWalker will not return - * this node. For both NodeIterator and - * TreeWalker, the children of this node will still be - * considered. - */ - public static final short FILTER_SKIP = 3; - - // Constants for whatToShow - /** - * Show all Nodes. - */ - public static final int SHOW_ALL = 0xFFFFFFFF; - /** - * Show Element nodes. - */ - public static final int SHOW_ELEMENT = 0x00000001; - /** - * Show Attr nodes. This is meaningful only when creating an - * NodeIterator or TreeWalker with an - * attribute node as its root; in this case, it means that - * the attribute node will appear in the first position of the iteration - * or traversal. Since attributes are never children of other nodes, - * they do not appear when traversing over the document tree. - */ - public static final int SHOW_ATTRIBUTE = 0x00000002; - /** - * Show Text nodes. - */ - public static final int SHOW_TEXT = 0x00000004; - /** - * Show CDATASection nodes. - */ - public static final int SHOW_CDATA_SECTION = 0x00000008; - /** - * Show EntityReference nodes. - */ - public static final int SHOW_ENTITY_REFERENCE = 0x00000010; - /** - * Show Entity nodes. This is meaningful only when creating - * an NodeIterator or TreeWalker with an - * Entity node as its root; in this case, it - * means that the Entity node will appear in the first - * position of the traversal. Since entities are not part of the - * document tree, they do not appear when traversing over the document - * tree. - */ - public static final int SHOW_ENTITY = 0x00000020; - /** - * Show ProcessingInstruction nodes. - */ - public static final int SHOW_PROCESSING_INSTRUCTION = 0x00000040; - /** - * Show Comment nodes. - */ - public static final int SHOW_COMMENT = 0x00000080; - /** - * Show Document nodes. - */ - public static final int SHOW_DOCUMENT = 0x00000100; - /** - * Show DocumentType nodes. - */ - public static final int SHOW_DOCUMENT_TYPE = 0x00000200; - /** - * Show DocumentFragment nodes. - */ - public static final int SHOW_DOCUMENT_FRAGMENT = 0x00000400; - /** - * Show Notation nodes. This is meaningful only when creating - * an NodeIterator or TreeWalker with a - * Notation node as its root; in this case, it - * means that the Notation node will appear in the first - * position of the traversal. Since notations are not part of the - * document tree, they do not appear when traversing over the document - * tree. - */ - public static final int SHOW_NOTATION = 0x00000800; - - /** - * Test whether a specified node is visible in the logical view of a - * TreeWalker or NodeIterator. This function - * will be called by the implementation of TreeWalker and - * NodeIterator; it is not normally called directly from - * user code. (Though you could do so if you wanted to use the same - * filter to guide your own application logic.) - * @param n The node to check to see if it passes the filter or not. - * @return A constant to determine whether the node is accepted, - * rejected, or skipped, as defined above. - */ - public short acceptNode(Node n); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/traversal/NodeIterator.java b/libjava/external/w3c_dom/org/w3c/dom/traversal/NodeIterator.java deleted file mode 100644 index d1f0d08399d..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/traversal/NodeIterator.java +++ /dev/null @@ -1,109 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.traversal; - -import org.w3c.dom.Node; -import org.w3c.dom.DOMException; - -/** - * NodeIterators are used to step through a set of nodes, e.g. - * the set of nodes in a NodeList, the document subtree - * governed by a particular Node, the results of a query, or - * any other set of nodes. The set of nodes to be iterated is determined by - * the implementation of the NodeIterator. DOM Level 2 - * specifies a single NodeIterator implementation for - * document-order traversal of a document subtree. Instances of these - * NodeIterators are created by calling - * DocumentTraversal.createNodeIterator(). - *

See also the Document Object Model (DOM) Level 2 Traversal and Range Specification. - * @since DOM Level 2 - */ -public interface NodeIterator { - /** - * The root node of the NodeIterator, as specified when it - * was created. - */ - public Node getRoot(); - - /** - * This attribute determines which node types are presented via the - * NodeIterator. The available set of constants is defined - * in the NodeFilter interface. Nodes not accepted by - * whatToShow will be skipped, but their children may still - * be considered. Note that this skip takes precedence over the filter, - * if any. - */ - public int getWhatToShow(); - - /** - * The NodeFilter used to screen nodes. - */ - public NodeFilter getFilter(); - - /** - * The value of this flag determines whether the children of entity - * reference nodes are visible to the NodeIterator. If - * false, these children and their descendants will be rejected. Note - * that this rejection takes precedence over whatToShow and - * the filter. Also note that this is currently the only situation where - * NodeIterators may reject a complete subtree rather than - * skipping individual nodes. - *
- *
To produce a view of the document that has entity references - * expanded and does not expose the entity reference node itself, use - * the whatToShow flags to hide the entity reference node - * and set expandEntityReferences to true when creating the - * NodeIterator. To produce a view of the document that has - * entity reference nodes but no entity expansion, use the - * whatToShow flags to show the entity reference node and - * set expandEntityReferences to false. - */ - public boolean getExpandEntityReferences(); - - /** - * Returns the next node in the set and advances the position of the - * NodeIterator in the set. After a - * NodeIterator is created, the first call to - * nextNode() returns the first node in the set. - * @return The next Node in the set being iterated over, or - * null if there are no more members in that set. - * @exception DOMException - * INVALID_STATE_ERR: Raised if this method is called after the - * detach method was invoked. - */ - public Node nextNode() - throws DOMException; - - /** - * Returns the previous node in the set and moves the position of the - * NodeIterator backwards in the set. - * @return The previous Node in the set being iterated over, - * or null if there are no more members in that set. - * @exception DOMException - * INVALID_STATE_ERR: Raised if this method is called after the - * detach method was invoked. - */ - public Node previousNode() - throws DOMException; - - /** - * Detaches the NodeIterator from the set which it iterated - * over, releasing any computational resources and placing the - * NodeIterator in the INVALID state. After - * detach has been invoked, calls to nextNode - * or previousNode will raise the exception - * INVALID_STATE_ERR. - */ - public void detach(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/traversal/TreeWalker.java b/libjava/external/w3c_dom/org/w3c/dom/traversal/TreeWalker.java deleted file mode 100644 index f5fff86be09..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/traversal/TreeWalker.java +++ /dev/null @@ -1,179 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.traversal; - -import org.w3c.dom.Node; -import org.w3c.dom.DOMException; - -/** - * TreeWalker objects are used to navigate a document tree or - * subtree using the view of the document defined by their - * whatToShow flags and filter (if any). Any function which - * performs navigation using a TreeWalker will automatically - * support any view defined by a TreeWalker. - *

Omitting nodes from the logical view of a subtree can result in a - * structure that is substantially different from the same subtree in the - * complete, unfiltered document. Nodes that are siblings in the - * TreeWalker view may be children of different, widely - * separated nodes in the original view. For instance, consider a - * NodeFilter that skips all nodes except for Text nodes and - * the root node of a document. In the logical view that results, all text - * nodes will be siblings and appear as direct children of the root node, no - * matter how deeply nested the structure of the original document. - *

See also the Document Object Model (DOM) Level 2 Traversal and Range Specification. - * @since DOM Level 2 - */ -public interface TreeWalker { - /** - * The root node of the TreeWalker, as specified - * when it was created. - */ - public Node getRoot(); - - /** - * This attribute determines which node types are presented via the - * TreeWalker. The available set of constants is defined in - * the NodeFilter interface. Nodes not accepted by - * whatToShow will be skipped, but their children may still - * be considered. Note that this skip takes precedence over the filter, - * if any. - */ - public int getWhatToShow(); - - /** - * The filter used to screen nodes. - */ - public NodeFilter getFilter(); - - /** - * The value of this flag determines whether the children of entity - * reference nodes are visible to the TreeWalker. If false, - * these children and their descendants will be rejected. Note that - * this rejection takes precedence over whatToShow and the - * filter, if any. - *
To produce a view of the document that has entity references - * expanded and does not expose the entity reference node itself, use - * the whatToShow flags to hide the entity reference node - * and set expandEntityReferences to true when creating the - * TreeWalker. To produce a view of the document that has - * entity reference nodes but no entity expansion, use the - * whatToShow flags to show the entity reference node and - * set expandEntityReferences to false. - */ - public boolean getExpandEntityReferences(); - - /** - * The node at which the TreeWalker is currently positioned. - *
Alterations to the DOM tree may cause the current node to no longer - * be accepted by the TreeWalker's associated filter. - * currentNode may also be explicitly set to any node, - * whether or not it is within the subtree specified by the - * root node or would be accepted by the filter and - * whatToShow flags. Further traversal occurs relative to - * currentNode even if it is not part of the current view, - * by applying the filters in the requested direction; if no traversal - * is possible, currentNode is not changed. - */ - public Node getCurrentNode(); - /** - * The node at which the TreeWalker is currently positioned. - *
Alterations to the DOM tree may cause the current node to no longer - * be accepted by the TreeWalker's associated filter. - * currentNode may also be explicitly set to any node, - * whether or not it is within the subtree specified by the - * root node or would be accepted by the filter and - * whatToShow flags. Further traversal occurs relative to - * currentNode even if it is not part of the current view, - * by applying the filters in the requested direction; if no traversal - * is possible, currentNode is not changed. - * @exception DOMException - * NOT_SUPPORTED_ERR: Raised if an attempt is made to set - * currentNode to null. - */ - public void setCurrentNode(Node currentNode) - throws DOMException; - - /** - * Moves to and returns the closest visible ancestor node of the current - * node. If the search for parentNode attempts to step - * upward from the TreeWalker's root node, or - * if it fails to find a visible ancestor node, this method retains the - * current position and returns null. - * @return The new parent node, or null if the current node - * has no parent in the TreeWalker's logical view. - */ - public Node parentNode(); - - /** - * Moves the TreeWalker to the first visible child of the - * current node, and returns the new node. If the current node has no - * visible children, returns null, and retains the current - * node. - * @return The new node, or null if the current node has no - * visible children in the TreeWalker's logical view. - */ - public Node firstChild(); - - /** - * Moves the TreeWalker to the last visible child of the - * current node, and returns the new node. If the current node has no - * visible children, returns null, and retains the current - * node. - * @return The new node, or null if the current node has no - * children in the TreeWalker's logical view. - */ - public Node lastChild(); - - /** - * Moves the TreeWalker to the previous sibling of the - * current node, and returns the new node. If the current node has no - * visible previous sibling, returns null, and retains the - * current node. - * @return The new node, or null if the current node has no - * previous sibling. in the TreeWalker's logical view. - */ - public Node previousSibling(); - - /** - * Moves the TreeWalker to the next sibling of the current - * node, and returns the new node. If the current node has no visible - * next sibling, returns null, and retains the current node. - * @return The new node, or null if the current node has no - * next sibling. in the TreeWalker's logical view. - */ - public Node nextSibling(); - - /** - * Moves the TreeWalker to the previous visible node in - * document order relative to the current node, and returns the new - * node. If the current node has no previous node, or if the search for - * previousNode attempts to step upward from the - * TreeWalker's root node, returns - * null, and retains the current node. - * @return The new node, or null if the current node has no - * previous node in the TreeWalker's logical view. - */ - public Node previousNode(); - - /** - * Moves the TreeWalker to the next visible node in document - * order relative to the current node, and returns the new node. If the - * current node has no next node, or if the search for nextNode attempts - * to step upward from the TreeWalker's root - * node, returns null, and retains the current node. - * @return The new node, or null if the current node has no - * next node in the TreeWalker's logical view. - */ - public Node nextNode(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/views/AbstractView.java b/libjava/external/w3c_dom/org/w3c/dom/views/AbstractView.java deleted file mode 100644 index 97e8f0e2b0b..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/views/AbstractView.java +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.views; - -/** - * A base interface that all views shall derive from. - *

See also the Document Object Model (DOM) Level 2 Views Specification. - * @since DOM Level 2 - */ -public interface AbstractView { - /** - * The source DocumentView of which this is an - * AbstractView. - */ - public DocumentView getDocument(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/views/DocumentView.java b/libjava/external/w3c_dom/org/w3c/dom/views/DocumentView.java deleted file mode 100644 index 2cb9eebb84b..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/views/DocumentView.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program 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 W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.views; - -/** - * The DocumentView interface is implemented by - * Document objects in DOM implementations supporting DOM - * Views. It provides an attribute to retrieve the default view of a - * document. - *

See also the Document Object Model (DOM) Level 2 Views Specification. - * @since DOM Level 2 - */ -public interface DocumentView { - /** - * The default AbstractView for this Document, - * or null if none available. - */ - public AbstractView getDefaultView(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathEvaluator.java b/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathEvaluator.java deleted file mode 100644 index a85c0e811da..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathEvaluator.java +++ /dev/null @@ -1,134 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.xpath; - -import org.w3c.dom.Node; -import org.w3c.dom.DOMException; - -/** - * The evaluation of XPath expressions is provided by - * XPathEvaluator. In a DOM implementation which supports the - * XPath 3.0 feature, as described above, the XPathEvaluator - * interface will be implemented on the same object which implements the - * Document interface permitting it to be obtained by the usual - * binding-specific method such as casting or by using the DOM Level 3 - * getInterface method. In this case the implementation obtained from the - * Document supports the XPath DOM module and is compatible with the XPath - * 1.0 specification. - *

Evaluation of expressions with specialized extension functions or - * variables may not work in all implementations and is, therefore, not - * portable. XPathEvaluator implementations may be available - * from other sources that could provide specific support for specialized - * extension functions or variables as would be defined by other - * specifications. - *

See also the Document Object Model (DOM) Level 3 XPath Specification. - */ -public interface XPathEvaluator { - /** - * Creates a parsed XPath expression with resolved namespaces. This is - * useful when an expression will be reused in an application since it - * makes it possible to compile the expression string into a more - * efficient internal form and preresolve all namespace prefixes which - * occur within the expression. - * @param expression The XPath expression string to be parsed. - * @param resolver The resolver permits translation of all - * prefixes, including the xml namespace prefix, within - * the XPath expression into appropriate namespace URIs. If this is - * specified as null, any namespace prefix within the - * expression will result in DOMException being thrown - * with the code NAMESPACE_ERR. - * @return The compiled form of the XPath expression. - * @exception XPathException - * INVALID_EXPRESSION_ERR: Raised if the expression is not legal - * according to the rules of the XPathEvaluator. - * @exception DOMException - * NAMESPACE_ERR: Raised if the expression contains namespace prefixes - * which cannot be resolved by the specified - * XPathNSResolver. - */ - public XPathExpression createExpression(String expression, - XPathNSResolver resolver) - throws XPathException, DOMException; - - /** - * Adapts any DOM node to resolve namespaces so that an XPath expression - * can be easily evaluated relative to the context of the node where it - * appeared within the document. This adapter works like the DOM Level 3 - * method lookupNamespaceURI on nodes in resolving the - * namespaceURI from a given prefix using the current information - * available in the node's hierarchy at the time lookupNamespaceURI is - * called. also correctly resolving the implicit xml prefix. - * @param nodeResolver The node to be used as a context for namespace - * resolution. - * @return XPathNSResolver which resolves namespaces with - * respect to the definitions in scope for a specified node. - */ - public XPathNSResolver createNSResolver(Node nodeResolver); - - /** - * Evaluates an XPath expression string and returns a result of the - * specified type if possible. - * @param expression The XPath expression string to be parsed and - * evaluated. - * @param contextNode The context is context node for the - * evaluation of this XPath expression. If the XPathEvaluator was - * obtained by casting the Document then this must be - * owned by the same document and must be a Document, - * Element, Attribute, Text, - * CDATASection, Comment, - * ProcessingInstruction, or XPathNamespace - * node. If the context node is a Text or a - * CDATASection, then the context is interpreted as the - * whole logical text node as seen by XPath, unless the node is empty - * in which case it may not serve as the XPath context. - * @param resolver The resolver permits translation of all - * prefixes, including the xml namespace prefix, within - * the XPath expression into appropriate namespace URIs. If this is - * specified as null, any namespace prefix within the - * expression will result in DOMException being thrown - * with the code NAMESPACE_ERR. - * @param type If a specific type is specified, then the - * result will be returned as the corresponding type.For XPath 1.0 - * results, this must be one of the codes of the - * XPathResult interface. - * @param result The result specifies a specific result - * object which may be reused and returned by this method. If this is - * specified as nullor the implementation does not reuse - * the specified result, a new result object will be constructed and - * returned.For XPath 1.0 results, this object will be of type - * XPathResult. - * @return The result of the evaluation of the XPath expression.For XPath - * 1.0 results, this object will be of type XPathResult. - * @exception XPathException - * INVALID_EXPRESSION_ERR: Raised if the expression is not legal - * according to the rules of the XPathEvaluatori - *
TYPE_ERR: Raised if the result cannot be converted to return the - * specified type. - * @exception DOMException - * NAMESPACE_ERR: Raised if the expression contains namespace prefixes - * which cannot be resolved by the specified - * XPathNSResolver. - *
WRONG_DOCUMENT_ERR: The Node is from a document that is not - * supported by this XPathEvaluator. - *
NOT_SUPPORTED_ERR: The Node is not a type permitted as an XPath - * context node or the request type is not permitted by this - * XPathEvaluator. - */ - public Object evaluate(String expression, - Node contextNode, - XPathNSResolver resolver, - short type, - Object result) - throws XPathException, DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathException.java b/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathException.java deleted file mode 100644 index deb1bd78394..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathException.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.xpath; - -/** - * A new exception has been created for exceptions specific to these XPath - * interfaces. - *

See also the Document Object Model (DOM) Level 3 XPath Specification. - */ -public class XPathException extends RuntimeException { - public XPathException(short code, String message) { - super(message); - this.code = code; - } - public short code; - // XPathExceptionCode - /** - * If the expression has a syntax error or otherwise is not a legal - * expression according to the rules of the specific - * XPathEvaluator or contains specialized extension - * functions or variables not supported by this implementation. - */ - public static final short INVALID_EXPRESSION_ERR = 51; - /** - * If the expression cannot be converted to return the specified type. - */ - public static final short TYPE_ERR = 52; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathExpression.java b/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathExpression.java deleted file mode 100644 index e972532544d..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathExpression.java +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.xpath; - -import org.w3c.dom.Node; -import org.w3c.dom.DOMException; - -/** - * The XPathExpression interface represents a parsed and resolved - * XPath expression. - *

See also the Document Object Model (DOM) Level 3 XPath Specification. - */ -public interface XPathExpression { - /** - * Evaluates this XPath expression and returns a result. - * @param contextNode The context is context node for the - * evaluation of this XPath expression.If the XPathEvaluator was - * obtained by casting the Document then this must be - * owned by the same document and must be a Document, - * Element, Attribute, Text, - * CDATASection, Comment, - * ProcessingInstruction, or XPathNamespace - * node.If the context node is a Text or a - * CDATASection, then the context is interpreted as the - * whole logical text node as seen by XPath, unless the node is empty - * in which case it may not serve as the XPath context. - * @param type If a specific type is specified, then the - * result will be coerced to return the specified type relying on - * XPath conversions and fail if the desired coercion is not possible. - * This must be one of the type codes of XPathResult. - * @param result The result specifies a specific result - * object which may be reused and returned by this method. If this is - * specified as nullor the implementation does not reuse - * the specified result, a new result object will be constructed and - * returned.For XPath 1.0 results, this object will be of type - * XPathResult. - * @return The result of the evaluation of the XPath expression.For XPath - * 1.0 results, this object will be of type XPathResult. - * @exception XPathException - * TYPE_ERR: Raised if the result cannot be converted to return the - * specified type. - * @exception DOMException - * WRONG_DOCUMENT_ERR: The Node is from a document that is not supported - * by the XPathEvaluator that created this XPathExpression - * . - *
NOT_SUPPORTED_ERR: The Node is not a type permitted as an XPath - * context node or the request type is not permitted by this - * XPathExpression. - */ - public Object evaluate(Node contextNode, - short type, - Object result) - throws XPathException, DOMException; - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathNSResolver.java b/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathNSResolver.java deleted file mode 100644 index b8f05213812..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathNSResolver.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.xpath; - -/** - * The XPathNSResolver interface permit prefix - * strings in the expression to be properly bound to - * namespaceURI strings. XPathEvaluator can - * construct an implementation of XPathNSResolver from a node, - * or the interface may be implemented by any application. - *

See also the Document Object Model (DOM) Level 3 XPath Specification. - */ -public interface XPathNSResolver { - /** - * Look up the namespace URI associated to the given namespace prefix. The - * XPath evaluator must never call this with a null or - * empty argument, because the result of doing this is undefined. - * @param prefix The prefix to look for. - * @return Returns the associated namespace URI or null if - * none is found. - */ - public String lookupNamespaceURI(String prefix); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathNamespace.java b/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathNamespace.java deleted file mode 100644 index 9f15481d584..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathNamespace.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.xpath; - -import org.w3c.dom.Element; -import org.w3c.dom.Node; - -/** - * The XPathNamespace interface is returned by - * XPathResult interfaces to represent the XPath namespace node - * type that DOM lacks. There is no public constructor for this node type. - * Attempts to place it into a hierarchy or a NamedNodeMap result in a - * DOMException with the code HIERARCHY_REQUEST_ERR - * . This node is read only, so methods or setting of attributes that would - * mutate the node result in a DOMException with the code - * NO_MODIFICATION_ALLOWED_ERR. - *

The core specification describes attributes of the Node - * interface that are different for different node types but does not - * describe XPATH_NAMESPACE_NODE, so here is a description of - * those attributes for this node type. All attributes of Node - * not described in this section have a null or - * false value. - *

ownerDocument matches the ownerDocument of the - * ownerElement even if the element is later adopted. - *

nodeName is always the string "#namespace". - *

prefix is the prefix of the namespace represented by the - * node. - *

localName is the same as prefix. - *

nodeType is equal to XPATH_NAMESPACE_NODE. - *

namespaceURI is the namespace URI of the namespace - * represented by the node. - *

nodeValue is the same as namespaceURI. - *

adoptNode, cloneNode, and - * importNode fail on this node type by raising a - * DOMException with the code NOT_SUPPORTED_ERR. - *

Note: In future versions of the XPath specification, the - * definition of a namespace node may be changed incomatibly, in which case - * incompatible changes to field values may be required to implement - * versions beyond XPath 1.0. - *

See also the Document Object Model (DOM) Level 3 XPath Specification. - */ -public interface XPathNamespace extends Node { - // XPathNodeType - /** - * The node is a Namespace. - */ - public static final short XPATH_NAMESPACE_NODE = 13; - - /** - * The Element on which the namespace was in scope when it - * was requested. This does not change on a returned namespace node even - * if the document changes such that the namespace goes out of scope on - * that element and this node is no longer found there by XPath. - */ - public Element getOwnerElement(); - -} diff --git a/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathResult.java b/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathResult.java deleted file mode 100644 index 56064b90ecf..00000000000 --- a/libjava/external/w3c_dom/org/w3c/dom/xpath/XPathResult.java +++ /dev/null @@ -1,214 +0,0 @@ -/* - * Copyright (c) 2004 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] 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. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.xpath; - -import org.w3c.dom.Node; -import org.w3c.dom.DOMException; - -/** - * The XPathResult interface represents the result of the - * evaluation of an XPath 1.0 expression within the context of a particular - * node. Since evaluation of an XPath expression can result in various - * result types, this object makes it possible to discover and manipulate - * the type and value of the result. - *

See also the Document Object Model (DOM) Level 3 XPath Specification. - */ -public interface XPathResult { - // XPathResultType - /** - * This code does not represent a specific type. An evaluation of an XPath - * expression will never produce this type. If this type is requested, - * then the evaluation returns whatever type naturally results from - * evaluation of the expression. - *
If the natural result is a node set when ANY_TYPE was - * requested, then UNORDERED_NODE_ITERATOR_TYPE is always - * the resulting type. Any other representation of a node set must be - * explicitly requested. - */ - public static final short ANY_TYPE = 0; - /** - * The result is a number as defined by [XPath 1.0]. - * Document modification does not invalidate the number, but may mean - * that reevaluation would not yield the same number. - */ - public static final short NUMBER_TYPE = 1; - /** - * The result is a string as defined by [XPath 1.0]. - * Document modification does not invalidate the string, but may mean - * that the string no longer corresponds to the current document. - */ - public static final short STRING_TYPE = 2; - /** - * The result is a boolean as defined by [XPath 1.0]. - * Document modification does not invalidate the boolean, but may mean - * that reevaluation would not yield the same boolean. - */ - public static final short BOOLEAN_TYPE = 3; - /** - * The result is a node set as defined by [XPath 1.0] that - * will be accessed iteratively, which may not produce nodes in a - * particular order. Document modification invalidates the iteration. - *
This is the default type returned if the result is a node set and - * ANY_TYPE is requested. - */ - public static final short UNORDERED_NODE_ITERATOR_TYPE = 4; - /** - * The result is a node set as defined by [XPath 1.0] that - * will be accessed iteratively, which will produce document-ordered - * nodes. Document modification invalidates the iteration. - */ - public static final short ORDERED_NODE_ITERATOR_TYPE = 5; - /** - * The result is a node set as defined by [XPath 1.0] that - * will be accessed as a snapshot list of nodes that may not be in a - * particular order. Document modification does not invalidate the - * snapshot but may mean that reevaluation would not yield the same - * snapshot and nodes in the snapshot may have been altered, moved, or - * removed from the document. - */ - public static final short UNORDERED_NODE_SNAPSHOT_TYPE = 6; - /** - * The result is a node set as defined by [XPath 1.0] that - * will be accessed as a snapshot list of nodes that will be in original - * document order. Document modification does not invalidate the - * snapshot but may mean that reevaluation would not yield the same - * snapshot and nodes in the snapshot may have been altered, moved, or - * removed from the document. - */ - public static final short ORDERED_NODE_SNAPSHOT_TYPE = 7; - /** - * The result is a node set as defined by [XPath 1.0] and - * will be accessed as a single node, which may be nullif - * the node set is empty. Document modification does not invalidate the - * node, but may mean that the result node no longer corresponds to the - * current document. This is a convenience that permits optimization - * since the implementation can stop once any node in the resulting set - * has been found. - *
If there is more than one node in the actual result, the single - * node returned might not be the first in document order. - */ - public static final short ANY_UNORDERED_NODE_TYPE = 8; - /** - * The result is a node set as defined by [XPath 1.0] and - * will be accessed as a single node, which may be null if - * the node set is empty. Document modification does not invalidate the - * node, but may mean that the result node no longer corresponds to the - * current document. This is a convenience that permits optimization - * since the implementation can stop once the first node in document - * order of the resulting set has been found. - *
If there are more than one node in the actual result, the single - * node returned will be the first in document order. - */ - public static final short FIRST_ORDERED_NODE_TYPE = 9; - - /** - * A code representing the type of this result, as defined by the type - * constants. - */ - public short getResultType(); - - /** - * The value of this number result. If the native double type of the DOM - * binding does not directly support the exact IEEE 754 result of the - * XPath expression, then it is up to the definition of the binding to - * specify how the XPath number is converted to the native binding - * number. - * @exception XPathException - * TYPE_ERR: raised if resultType is not - * NUMBER_TYPE. - */ - public double getNumberValue() - throws XPathException; - - /** - * The value of this string result. - * @exception XPathException - * TYPE_ERR: raised if resultType is not - * STRING_TYPE. - */ - public String getStringValue() - throws XPathException; - - /** - * The value of this boolean result. - * @exception XPathException - * TYPE_ERR: raised if resultType is not - * BOOLEAN_TYPE. - */ - public boolean getBooleanValue() - throws XPathException; - - /** - * The value of this single node result, which may be null. - * @exception XPathException - * TYPE_ERR: raised if resultType is not - * ANY_UNORDERED_NODE_TYPE or - * FIRST_ORDERED_NODE_TYPE. - */ - public Node getSingleNodeValue() - throws XPathException; - - /** - * Signifies that the iterator has become invalid. True if - * resultType is UNORDERED_NODE_ITERATOR_TYPE - * or ORDERED_NODE_ITERATOR_TYPE and the document has been - * modified since this result was returned. - */ - public boolean getInvalidIteratorState(); - - /** - * The number of nodes in the result snapshot. Valid values for - * snapshotItem indices are 0 to - * snapshotLength-1 inclusive. - * @exception XPathException - * TYPE_ERR: raised if resultType is not - * UNORDERED_NODE_SNAPSHOT_TYPE or - * ORDERED_NODE_SNAPSHOT_TYPE. - */ - public int getSnapshotLength() - throws XPathException; - - /** - * Iterates and returns the next node from the node set or - * nullif there are no more nodes. - * @return Returns the next node. - * @exception XPathException - * TYPE_ERR: raised if resultType is not - * UNORDERED_NODE_ITERATOR_TYPE or - * ORDERED_NODE_ITERATOR_TYPE. - * @exception DOMException - * INVALID_STATE_ERR: The document has been mutated since the result was - * returned. - */ - public Node iterateNext() - throws XPathException, DOMException; - - /** - * Returns the indexth item in the snapshot collection. If - * index is greater than or equal to the number of nodes in - * the list, this method returns null. Unlike the iterator - * result, the snapshot does not become invalid, but may not correspond - * to the current document if it is mutated. - * @param index Index into the snapshot collection. - * @return The node at the indexth position in the - * NodeList, or null if that is not a valid - * index. - * @exception XPathException - * TYPE_ERR: raised if resultType is not - * UNORDERED_NODE_SNAPSHOT_TYPE or - * ORDERED_NODE_SNAPSHOT_TYPE. - */ - public Node snapshotItem(int index) - throws XPathException; - -} diff --git a/libjava/gcj/Makefile.in b/libjava/gcj/Makefile.in index a357231c683..56189d7a7d9 100644 --- a/libjava/gcj/Makefile.in +++ b/libjava/gcj/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.9.3 from Makefile.am. +# Makefile.in generated by automake 1.9.5 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. +# 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in 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. @@ -43,14 +43,12 @@ DIST_COMMON = $(gcj_HEADERS) $(srcdir)/Makefile.am \ $(toolgcj_HEADERS) ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ - $(top_srcdir)/../config/depstand.m4 \ $(top_srcdir)/../config/gxx-include-dir.m4 \ $(top_srcdir)/../config/iconv.m4 \ $(top_srcdir)/../config/lcmessage.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)/pkg.m4 \ + $(top_srcdir)/../config/lib-prefix.m4 \ $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/../config/no-executables.m4 \ $(top_srcdir)/../libtool.m4 $(top_srcdir)/configure.ac diff --git a/libjava/gnu/classpath/Configuration.java.in b/libjava/gnu/classpath/Configuration.java.in deleted file mode 100644 index f1c6bc5680d..00000000000 --- a/libjava/gnu/classpath/Configuration.java.in +++ /dev/null @@ -1,62 +0,0 @@ -/* gnu.classpath.Configuration - Copyright (C) 1998, 2001, 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., 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; - -/** - * This file defines compile-time constants that can be accessed by - * java code. It is pre-processed by configure. - */ -public interface Configuration -{ - // The value of DEBUG is substituted according to whether the - // "--enable-libgcj-debug" argument was passed to configure. Code - // which is made conditional based on the value of this flag will - // be removed by the optimizer in a non-debug build. - boolean DEBUG = @LIBGCJDEBUG@; - - // For libgcj we never load the JNI libraries. - boolean INIT_LOAD_LIBRARY = false; - - // For libgcj we have native methods for dynamic proxy support.... - boolean HAVE_NATIVE_GET_PROXY_DATA = false; - boolean HAVE_NATIVE_GET_PROXY_CLASS = false; - boolean HAVE_NATIVE_GENERATE_PROXY_CLASS = false; - - // Name of default AWT peer library. - String default_awt_peer_toolkit = "@TOOLKIT@"; -} diff --git a/libjava/gnu/classpath/ServiceFactory.java b/libjava/gnu/classpath/ServiceFactory.java deleted file mode 100644 index 711a9042cbf..00000000000 --- a/libjava/gnu/classpath/ServiceFactory.java +++ /dev/null @@ -1,573 +0,0 @@ -/* ServiceFactory.java -- Factory for plug-in services. - Copyright (C) 2004 Free Software Foundation - -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.classpath; - -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStreamReader; -import java.net.URL; -import java.security.AccessControlContext; -import java.security.AccessController; -import java.security.PrivilegedActionException; -import java.util.Collections; -import java.util.Enumeration; -import java.util.Iterator; -import java.util.NoSuchElementException; -import java.util.logging.Level; -import java.util.logging.LogRecord; -import java.util.logging.Logger; - - -/** - * A factory for plug-ins that conform to a service provider - * interface. This is a general mechanism that gets used by a number - * of packages in the Java API. For instance, {@link - * java.nio.charset.spi.CharsetProvider} allows to write custom - * encoders and decoders for character sets, {@link - * javax.imageio.spi.ImageReaderSpi} allows to support custom image - * formats, and {@link javax.print.PrintService} makes it possible to - * write custom printer drivers. - * - *

The plug-ins are concrete implementations of the service - * provider interface, which is defined as an interface or an abstract - * class. The implementation classes must be public and have a public - * constructor that takes no arguments. - * - *

Plug-ins are usually deployed in JAR files. A JAR that provides - * an implementation of a service must declare this in a resource file - * whose name is the fully qualified service name and whose location - * is the directory META-INF/services. This UTF-8 encoded - * text file lists, on separate lines, the fully qualified names of - * the concrete implementations. Thus, one JAR file can provide an - * arbitrary number of implementations for an arbitrary count of - * service provider interfaces. - * - *

Example - * - *

For example, a JAR might provide two implementations of the - * service provider interface org.foo.ThinkService, - * namely com.acme.QuickThinker and - * com.acme.DeepThinker. The code for QuickThinker - * woud look as follows: - * - *

- * package com.acme;
- *
- * /**
- * * Provices a super-quick, but not very deep implementation of ThinkService.
- * */
- * public class QuickThinker
- *   implements org.foo.ThinkService
- * {
- *   /**
- *   * Constructs a new QuickThinker. The service factory (which is
- *   * part of the Java environment) calls this no-argument constructor
- *   * when it looks up the available implementations of ThinkService.
- *   *
- *   * <p>Note that an application might query all available
- *   * ThinkService providers, but use just one of them. Therefore,
- *   * constructing an instance should be very inexpensive. For example,
- *   * large data structures should only be allocated when the service
- *   * actually gets used.
- *   */
- *   public QuickThinker()
- *   {
- *   }
- *
- *   /**
- *   * Returns the speed of this ThinkService in thoughts per second.
- *   * Applications can choose among the available service providers
- *   * based on this value.
- *   */
- *   public double getSpeed()
- *   {
- *     return 314159.2654;
- *   }
- *
- *   /**
- *   * Produces a thought. While the returned thoughts are not very
- *   * deep, they are generated in very short time.
- *   */
- *   public Thought think()
- *   {
- *     return null;
- *   }
- * }
- * 
- * - *

The code for com.acme.DeepThinker is left as an - * exercise to the reader. - * - *

Acme’s ThinkService plug-in gets deployed as - * a JAR file. Besides the bytecode and resources for - * QuickThinker and DeepThinker, it also - * contains the text file - * META-INF/services/org.foo.ThinkService: - * - *

- * # Available implementations of org.foo.ThinkService
- * com.acme.QuickThinker
- * com.acme.DeepThinker
- * 
- * - *

Thread Safety - * - *

It is safe to use ServiceFactory from multiple - * concurrent threads without external synchronization. - * - *

Note for User Applications - * - *

User applications that want to load plug-ins should not directly - * use gnu.classpath.ServiceFactory, because this class - * is only available in Java environments that are based on GNU - * Classpath. Instead, it is recommended that user applications call - * {@link - * javax.imageio.spi.ServiceRegistry#lookupProviders(Class)}. This API - * is actually independent of image I/O, and it is available on every - * environment. - * - * @author Sascha Brawer - */ -public final class ServiceFactory -{ - /** - * A logger that gets informed when a service gets loaded, or - * when there is a problem with loading a service. - * - *

Because {@link java.util.logging.Logger#getLogger(String)} - * is thread-safe, we do not need to worry about synchronization - * here. - */ - private static final Logger LOGGER = Logger.getLogger("gnu.classpath"); - - - /** - * Declared private in order to prevent constructing instances of - * this utility class. - */ - private ServiceFactory() - { - } - - - /** - * Finds service providers that are implementing the specified - * Service Provider Interface. - * - *

On-demand loading: Loading and initializing service - * providers is delayed as much as possible. The rationale is that - * typical clients will iterate through the set of installed service - * providers until one is found that matches some criteria (like - * supported formats, or quality of service). In such scenarios, it - * might make sense to install only the frequently needed service - * providers on the local machine. More exotic providers can be put - * onto a server; the server will only be contacted when no suitable - * service could be found locally. - * - *

Security considerations: Any loaded service providers - * are loaded through the specified ClassLoader, or the system - * ClassLoader if classLoader is - * null. When lookupProviders is called, - * the current {@link AccessControlContext} gets recorded. This - * captured security context will determine the permissions when - * services get loaded via the next() method of the - * returned Iterator. - * - * @param spi the service provider interface which must be - * implemented by any loaded service providers. - * - * @param loader the class loader that will be used to load the - * service providers, or null for the system class - * loader. For using the context class loader, see {@link - * #lookupProviders(Class)}. - * - * @return an iterator over instances of spi. - * - * @throws IllegalArgumentException if spi is - * null. - */ - public static Iterator lookupProviders(Class spi, - ClassLoader loader) - { - String resourceName; - Enumeration urls; - - if (spi == null) - throw new IllegalArgumentException(); - - if (loader == null) - loader = ClassLoader.getSystemClassLoader(); - - resourceName = "META-INF/services/" + spi.getName(); - try - { - urls = loader.getResources(resourceName); - } - catch (IOException ioex) - { - /* If an I/O error occurs here, we cannot provide any service - * providers. In this case, we simply return an iterator that - * does not return anything (no providers installed). - */ - log(Level.WARNING, "cannot access {0}", resourceName, ioex); - return Collections.EMPTY_LIST.iterator(); - } - - return new ServiceIterator(spi, urls, loader, - AccessController.getContext()); - } - - - /** - * Finds service providers that are implementing the specified - * Service Provider Interface, using the context class loader - * for loading providers. - * - * @param spi the service provider interface which must be - * implemented by any loaded service providers. - * - * @return an iterator over instances of spi. - * - * @throws IllegalArgumentException if spi is - * null. - * - * @see #lookupProviders(Class, ClassLoader) - */ - public static Iterator lookupProviders(Class spi) - { - ClassLoader ctxLoader; - - ctxLoader = Thread.currentThread().getContextClassLoader(); - return lookupProviders(spi, ctxLoader); - } - - - /** - * An iterator over service providers that are listed in service - * provider configuration files, which get passed as an Enumeration - * of URLs. This is a helper class for {@link - * ServiceFactory#lookupProviders}. - * - * @author Sascha Brawer - */ - private static final class ServiceIterator - implements Iterator - { - /** - * The service provider interface (usually an interface, sometimes - * an abstract class) which the services must implement. - */ - private final Class spi; - - - /** - * An Enumeration over the URLs that contain a resource - * META-INF/services/<org.foo.SomeService>, - * as returned by {@link ClassLoader#getResources(String)}. - */ - private final Enumeration urls; - - - /** - * The class loader used for loading service providers. - */ - private final ClassLoader loader; - - - /** - * The security context used when loading and initializing service - * providers. We want to load and initialize all plug-in service - * providers under the same security context, namely the one that - * was active when {@link #lookupProviders} has been called. - */ - private final AccessControlContext securityContext; - - - /** - * A reader for the current file listing class names of service - * implementors, or null when the last reader has - * been fetched. - */ - private BufferedReader reader; - - - /** - * The URL currently being processed. This is only used for - * emitting error messages. - */ - private URL currentURL; - - - /** - * The service provider that will be returned by the next call to - * {@link #next()}, or null if the iterator has - * already returned all service providers. - */ - private Object nextProvider; - - - /** - * Constructs an Iterator that loads and initializes services on - * demand. - * - * @param spi the service provider interface which the services - * must implement. Usually, this is a Java interface type, but it - * might also be an abstract class or even a concrete superclass. - * - * @param urls an Enumeration over the URLs that contain a - * resource - * META-INF/services/<org.foo.SomeService>, as - * determined by {@link ClassLoader#getResources(String)}. - * - * @param loader the ClassLoader that gets used for loading - * service providers. - * - * @param securityContext the security context to use when loading - * and initializing service providers. - */ - ServiceIterator(Class spi, Enumeration urls, ClassLoader loader, - AccessControlContext securityContext) - { - this.spi = spi; - this.urls = urls; - this.loader = loader; - this.securityContext = securityContext; - this.nextProvider = loadNextServiceProvider(); - } - - - /** - * @throws NoSuchElementException if {@link #hasNext} returns - * false. - */ - public Object next() - { - Object result; - - if (!hasNext()) - throw new NoSuchElementException(); - - result = nextProvider; - nextProvider = loadNextServiceProvider(); - return result; - } - - - public boolean hasNext() - { - return nextProvider != null; - } - - - public void remove() - { - throw new UnsupportedOperationException(); - } - - - private Object loadNextServiceProvider() - { - String line; - - if (reader == null) - advanceReader(); - - for (;;) - { - /* If we have reached the last provider list, we cannot - * retrieve any further lines. - */ - if (reader == null) - return null; - - try - { - line = reader.readLine(); - } - catch (IOException readProblem) - { - log(Level.WARNING, "IOException upon reading {0}", currentURL, - readProblem); - line = null; - } - - /* When we are at the end of one list of services, - * switch over to the next one. - */ - if (line == null) - { - advanceReader(); - continue; - } - - - // Skip whitespace at the beginning and end of each line. - line = line.trim(); - - // Skip empty lines. - if (line.length() == 0) - continue; - - // Skip comment lines. - if (line.charAt(0) == '#') - continue; - - try - { - log(Level.FINE, - "Loading service provider \"{0}\", specified" - + " by \"META-INF/services/{1}\" in {2}.", - new Object[] { line, spi.getName(), currentURL }, - null); - - /* Load the class in the security context that was - * active when calling lookupProviders. - */ - return AccessController.doPrivileged( - new ServiceProviderLoadingAction(spi, line, loader), - securityContext); - } - catch (Exception ex) - { - String msg = "Cannot load service provider class \"{0}\"," - + " specified by \"META-INF/services/{1}\" in {2}"; - if (ex instanceof PrivilegedActionException - && ex.getCause() instanceof ClassCastException) - msg = "Service provider class \"{0}\" is not an instance" - + " of \"{1}\". Specified" - + " by \"META-INF/services/{1}\" in {2}."; - - log(Level.WARNING, msg, - new Object[] { line, spi.getName(), currentURL }, - ex); - continue; - } - } - } - - - private void advanceReader() - { - do - { - if (reader != null) - { - try - { - reader.close(); - log(Level.FINE, "closed {0}", currentURL, null); - } - catch (Exception ex) - { - log(Level.WARNING, "cannot close {0}", currentURL, ex); - } - reader = null; - currentURL = null; - } - - if (!urls.hasMoreElements()) - return; - - currentURL = (URL) urls.nextElement(); - try - { - reader = new BufferedReader(new InputStreamReader( - currentURL.openStream(), "UTF-8")); - log(Level.FINE, "opened {0}", currentURL, null); - } - catch (Exception ex) - { - log(Level.WARNING, "cannot open {0}", currentURL, ex); - } - } - while (reader == null); - } - } - - - // Package-private to avoid a trampoline. - /** - * Passes a log message to the java.util.logging - * framework. This call returns very quickly if no log message will - * be produced, so there is not much overhead in the standard case. - * - * @param the severity of the message, for instance {@link - * Level#WARNING}. - * - * @param msg the log message, for instance “Could not - * load {0}.” - * - * @param param the parameter(s) for the log message, or - * null if msg does not specify any - * parameters. If param is not an array, an array with - * param as its single element gets passed to the - * logging framework. - * - * @param t a Throwable that is associated with the log record, or - * null if the log message is not associated with a - * Throwable. - */ - static void log(Level level, String msg, Object param, Throwable t) - { - LogRecord rec; - - // Return quickly if no log message will be produced. - if (!LOGGER.isLoggable(level)) - return; - - rec = new LogRecord(level, msg); - if (param != null && param.getClass().isArray()) - rec.setParameters((Object[]) param); - else - rec.setParameters(new Object[] { param }); - - rec.setThrown(t); - - // While java.util.logging can sometimes infer the class and - // method of the caller, this automatic inference is not reliable - // on highly optimizing VMs. Also, log messages make more sense to - // developers when they display a public method in a public class; - // otherwise, they might feel tempted to figure out the internals - // of ServiceFactory in order to understand the problem. - rec.setSourceClassName(ServiceFactory.class.getName()); - rec.setSourceMethodName("lookupProviders"); - - LOGGER.log(rec); - } -} diff --git a/libjava/gnu/classpath/ServiceProviderLoadingAction.java b/libjava/gnu/classpath/ServiceProviderLoadingAction.java deleted file mode 100644 index b5e59cb4b6f..00000000000 --- a/libjava/gnu/classpath/ServiceProviderLoadingAction.java +++ /dev/null @@ -1,149 +0,0 @@ -/* ServiceProviderLoadingAction.java -- Action for loading plug-in services. - Copyright (C) 2004 Free Software Foundation - -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.classpath; - -import java.security.PrivilegedExceptionAction; - -/** - * A privileged action for creating a new instance of a service - * provider. - * - *

Class loading and instantiation is encapsulated in a - * PriviledgedAction in order to restrict the loaded - * service providers to the {@link java.security.AccessControlContext} - * that was active when {@link - * gnu.classpath.ServiceFactory#lookupProviders} was called, even - * though the actual loading is delayed to the time when the provider - * is actually needed. - * - * @author Sascha Brawer - */ -final class ServiceProviderLoadingAction - implements PrivilegedExceptionAction -{ - /** - * The interface to which the loaded service provider implementation - * must conform. Usually, this is a Java interface type, but it - * might also be an abstract class or even a concrete class. - */ - private final Class spi; - - - /** - * The fully qualified name of the class that gets loaded when - * this action is executed. - */ - private final String providerName; - - - /** - * The ClassLoader that gets used for loading the service provider - * class. - */ - private final ClassLoader loader; - - - /** - * Constructs a privileged action for loading a service provider. - * - * @param spi the interface to which the loaded service provider - * implementation must conform. Usually, this is a Java interface - * type, but it might also be an abstract class or even a concrete - * superclass. - * - * @param providerName the fully qualified name of the class that - * gets loaded when this action is executed. - * - * @param loader the ClassLoader that gets used for loading the - * service provider class. - * - * @throws IllegalArgumentException if spi, - * providerName or loader is - * null. - */ - ServiceProviderLoadingAction(Class spi, String providerName, - ClassLoader loader) - { - if (spi == null || providerName == null || loader == null) - throw new IllegalArgumentException(); - - this.spi = spi; - this.providerName = providerName; - this.loader = loader; - } - - - /** - * Loads an implementation class for a service provider, and creates - * a new instance of the loaded class by invoking its public - * no-argument constructor. - * - * @return a new instance of the class whose name was passed as - * providerName to the constructor. - * - * @throws ClassCastException if the service provider does not - * implement the spi interface that was passed to the - * constructor. - * - * @throws IllegalAccessException if the service provider class or - * its no-argument constructor are not public. - * - * @throws InstantiationException if the service provider class is - * abstract, an interface, a primitive type, an array - * class, or void; or if service provider class does not have a - * no-argument constructor; or if there some other problem with - * creating a new instance of the service provider. - */ - public Object run() - throws Exception - { - Class loadedClass; - Object serviceProvider; - - loadedClass = loader.loadClass(providerName); - serviceProvider = loadedClass.newInstance(); - - // Ensure that the loaded provider is actually implementing - // the service provider interface. - if (!spi.isInstance(serviceProvider)) - throw new ClassCastException(spi.getName()); - - return serviceProvider; - } -} diff --git a/libjava/gnu/classpath/jdwp/exception/InvalidClassException.java b/libjava/gnu/classpath/jdwp/exception/InvalidClassException.java deleted file mode 100644 index 2e9b7246818..00000000000 --- a/libjava/gnu/classpath/jdwp/exception/InvalidClassException.java +++ /dev/null @@ -1,63 +0,0 @@ -/* InvalidClassException.java -- invalid/unknown class reference id exception - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.exception; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * An exception thrown by the JDWP back-end when an invalid reference - * type id is used by the debugger. - * - * @author Keith Seitz - */ -public class InvalidClassException - extends JdwpException -{ - public InvalidClassException (long id) - { - super (JdwpConstants.Error.INVALID_CLASS, - "invalid class id (" + id + ")"); - } - - public InvalidClassException (Throwable t) - { - super (JdwpConstants.Error.INVALID_CLASS, t); - } -} diff --git a/libjava/gnu/classpath/jdwp/exception/InvalidCountException.java b/libjava/gnu/classpath/jdwp/exception/InvalidCountException.java deleted file mode 100644 index 668db042d6b..00000000000 --- a/libjava/gnu/classpath/jdwp/exception/InvalidCountException.java +++ /dev/null @@ -1,61 +0,0 @@ -/* InvalidCountException -- an invalid count exception - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.exception; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * An exception thrown when a count filter is given an invalid count. - * - * @author Keith Seitz - */ -public class InvalidCountException - extends JdwpException -{ - public InvalidCountException (int id) - { - super (JdwpConstants.Error.INVALID_COUNT, "invalid count (" + id + ")"); - } - - public InvalidCountException (Throwable t) - { - super (JdwpConstants.Error.INVALID_COUNT, t); - } -} diff --git a/libjava/gnu/classpath/jdwp/exception/InvalidEventTypeException.java b/libjava/gnu/classpath/jdwp/exception/InvalidEventTypeException.java deleted file mode 100644 index 6463325804c..00000000000 --- a/libjava/gnu/classpath/jdwp/exception/InvalidEventTypeException.java +++ /dev/null @@ -1,63 +0,0 @@ -/* InvalidEventTypeException.java -- an invalid event kind exception - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.exception; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * An exception thrown when the debugger asks for an event request - * for a non-existant event - * - * @author Keith Seitz - */ -public class InvalidEventTypeException - extends JdwpException -{ - public InvalidEventTypeException (byte kind) - { - super (JdwpConstants.Error.INVALID_EVENT_TYPE, - "invalid event type (" + kind + ")"); - } - - public InvalidEventTypeException (Throwable t) - { - super (JdwpConstants.Error.INVALID_EVENT_TYPE, t); - } -} diff --git a/libjava/gnu/classpath/jdwp/exception/InvalidObjectException.java b/libjava/gnu/classpath/jdwp/exception/InvalidObjectException.java deleted file mode 100644 index 587f4609e8f..00000000000 --- a/libjava/gnu/classpath/jdwp/exception/InvalidObjectException.java +++ /dev/null @@ -1,63 +0,0 @@ -/* InvalidObjectException.java -- an invalid object id exception - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.exception; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * An exception thrown when an invalid object id is used by - * the debugger - * - * @author Keith Seitz - */ -public class InvalidObjectException - extends JdwpException -{ - public InvalidObjectException (long id) - { - super (JdwpConstants.Error.INVALID_OBJECT, - "invalid object id (" + id + ")"); - } - - public InvalidObjectException (Throwable t) - { - super (JdwpConstants.Error.INVALID_OBJECT, t); - } -} diff --git a/libjava/gnu/classpath/jdwp/exception/InvalidStringException.java b/libjava/gnu/classpath/jdwp/exception/InvalidStringException.java deleted file mode 100644 index c689d5f1678..00000000000 --- a/libjava/gnu/classpath/jdwp/exception/InvalidStringException.java +++ /dev/null @@ -1,63 +0,0 @@ -/* InvalidStringException.java -- an invalid string id exception - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.exception; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * An exception thrown when the debugger uses an invalid String - * id - * - * @author Keith Seitz - */ -public class InvalidStringException - extends JdwpException -{ - public InvalidStringException (String str) - { - super (JdwpConstants.Error.INVALID_STRING, - "invalid string (" + str + ")"); - } - - public InvalidStringException (Throwable t) - { - super (JdwpConstants.Error.INVALID_STRING, t); - } -} diff --git a/libjava/gnu/classpath/jdwp/exception/InvalidThreadException.java b/libjava/gnu/classpath/jdwp/exception/InvalidThreadException.java deleted file mode 100644 index bcbaf4902ed..00000000000 --- a/libjava/gnu/classpath/jdwp/exception/InvalidThreadException.java +++ /dev/null @@ -1,63 +0,0 @@ -/* InvalidThreadException.java -- an invalid thread id exception - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.exception; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * An exception thrown when an invalid thread id is used - * by the debugger - * - * @author Keith Seitz - */ -public class InvalidThreadException - extends JdwpException -{ - public InvalidThreadException (long id) - { - super (JdwpConstants.Error.INVALID_THREAD, - "invalid thread id (" + id + ")"); - } - - public InvalidThreadException (Throwable t) - { - super (JdwpConstants.Error.INVALID_THREAD, t); - } -} diff --git a/libjava/gnu/classpath/jdwp/exception/InvalidThreadGroupException.java b/libjava/gnu/classpath/jdwp/exception/InvalidThreadGroupException.java deleted file mode 100644 index 92b214f4696..00000000000 --- a/libjava/gnu/classpath/jdwp/exception/InvalidThreadGroupException.java +++ /dev/null @@ -1,63 +0,0 @@ -/* InvalidThreadGroupException.java -- an invalid thread group id exception - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.exception; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * An exception thrown when an invalid thread group id is used - * by the debugger - * - * @author Keith Seitz - */ -public class InvalidThreadGroupException - extends JdwpException -{ - public InvalidThreadGroupException (long id) - { - super (JdwpConstants.Error.INVALID_THREAD_GROUP, - "invalid thread id (" + id + ")"); - } - - public InvalidThreadException (Throwable t) - { - super (JdwpConstants.Error.INVALID_THREAD_GROUP, t); - } -} diff --git a/libjava/gnu/classpath/jdwp/exception/JdwpException.java b/libjava/gnu/classpath/jdwp/exception/JdwpException.java deleted file mode 100644 index 6d4887cdad2..00000000000 --- a/libjava/gnu/classpath/jdwp/exception/JdwpException.java +++ /dev/null @@ -1,86 +0,0 @@ -/* JdwpException.java -- an exception base class for all JDWP exceptions - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.exception; - -/** - * A base class exception for all JDWP back-end exceptions - * - * @author Keith Seitz - */ -public class JdwpException - extends Exception -{ - // The integer error code defined by JDWP - private short _errorCode; - - /** - * Constructs a new JdwpException with the - * given error code and given cause - * - * @param code the JDWP error code - * @param t the cause of the exception - */ - public JdwpException (short code, Throwable t) - { - super (t); - _errorCode = code; - } - - /** - * Constructs a new JdwpException with the - * given error code and string error message - * - * @param code the JDWP error code - * @param str an error message - */ - public JdwpException (short code, String str) - { - super (str); - _errorCode = code; - } - - /** - * Returns the JDWP error code represented by this exception - */ - public short getErrorCode () - { - return _errorCode; - } -} diff --git a/libjava/gnu/classpath/jdwp/exception/JdwpInternalErrorException.java b/libjava/gnu/classpath/jdwp/exception/JdwpInternalErrorException.java deleted file mode 100644 index d76ad8ca837..00000000000 --- a/libjava/gnu/classpath/jdwp/exception/JdwpInternalErrorException.java +++ /dev/null @@ -1,58 +0,0 @@ -/* JdwpInternalErrorException.java -- an internal error exception - features or functions - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.exception; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * An exception thrown by the JDWP back-end when an unusual runtime - * error occurs internally - * - * @author Keith Seitz - */ -public class JdwpInternalErrorException - extends JdwpException -{ - public JdwpInternalErrorException (Throwable cause) - { - super (JdwpConstants.Error.INTERNAL, cause); - } -} diff --git a/libjava/gnu/classpath/jdwp/exception/NotImplementedException.java b/libjava/gnu/classpath/jdwp/exception/NotImplementedException.java deleted file mode 100644 index 8f5feabe9b8..00000000000 --- a/libjava/gnu/classpath/jdwp/exception/NotImplementedException.java +++ /dev/null @@ -1,59 +0,0 @@ -/* NotImplementedException.java -- an exception for unimplemented JDWP - features or functions - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.exception; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * An exception thrown by virtual machines when functionality - * or features are not implemented - * - * @author Keith Seitz - */ -public class NotImplementedException - extends JdwpException -{ - public NotImplementedException (String feature) - { - super (JdwpConstants.Error.NOT_IMPLEMENTED, - feature + " is not yet implemented"); - } -} diff --git a/libjava/gnu/classpath/jdwp/exception/VmDeadException.java b/libjava/gnu/classpath/jdwp/exception/VmDeadException.java deleted file mode 100644 index 6164018db64..00000000000 --- a/libjava/gnu/classpath/jdwp/exception/VmDeadException.java +++ /dev/null @@ -1,55 +0,0 @@ -/* Jdwp.java -- Virtual machine to JDWP back-end programming interface - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.exception; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * An exception thrown when the virtual machine is dead - * - * @author Keith Seitz - */ -public class VmDeadException - extends JdwpException -{ - public VmDeadException () - { - super (JdwpConstants.Error.VM_DEAD, "Virtual machine is dead"); - } -} diff --git a/libjava/gnu/classpath/jdwp/id/ArrayId.java b/libjava/gnu/classpath/jdwp/id/ArrayId.java deleted file mode 100644 index cd428a172b3..00000000000 --- a/libjava/gnu/classpath/jdwp/id/ArrayId.java +++ /dev/null @@ -1,62 +0,0 @@ -/* ArrayId.java -- array object IDs - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.id; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * A class which represents a JDWP array id - * - * @author Keith Seitz - */ -public class ArrayId - extends ObjectId -{ - // Arrays are handled a little differently than other IDs - //public static final Class typeClass = UNDEFINED - - /** - * Constructs a new ArrayId - */ - public ArrayId () - { - super (JdwpConstants.Tag.ARRAY); - } -} diff --git a/libjava/gnu/classpath/jdwp/id/ArrayReferenceTypeId.java b/libjava/gnu/classpath/jdwp/id/ArrayReferenceTypeId.java deleted file mode 100644 index 14a73dc5b24..00000000000 --- a/libjava/gnu/classpath/jdwp/id/ArrayReferenceTypeId.java +++ /dev/null @@ -1,59 +0,0 @@ -/* ArrayReferenceTypeId.java -- array reference type ids - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.id; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * A reference type ID representing java arrays - * - * @author Keith Seitz - */ -public class ArrayReferenceTypeId - extends ReferenceTypeId -{ - /** - * Constructs a new ArrayReferenceTypeId - */ - public ArrayReferenceTypeId () - { - super (JdwpConstants.TypeTag.ARRAY); - } -} diff --git a/libjava/gnu/classpath/jdwp/id/ClassLoaderId.java b/libjava/gnu/classpath/jdwp/id/ClassLoaderId.java deleted file mode 100644 index 133872566fd..00000000000 --- a/libjava/gnu/classpath/jdwp/id/ClassLoaderId.java +++ /dev/null @@ -1,64 +0,0 @@ -/* ClassLoaderId.java -- class loader IDs - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.id; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * A class which represents a JDWP thread id - * - * @author Keith Seitz - */ -public class ClassLoaderId - extends ObjectId -{ - /** - * The object class that this id represents - */ - public static final Class typeClass = ClassLoader.class; - - /** - * Constructs a new ClassLoaderId - */ - public ClassLoaderId () - { - super (JdwpConstants.Tag.CLASS_LOADER); - } -} diff --git a/libjava/gnu/classpath/jdwp/id/ClassObjectId.java b/libjava/gnu/classpath/jdwp/id/ClassObjectId.java deleted file mode 100644 index e5559ce10f3..00000000000 --- a/libjava/gnu/classpath/jdwp/id/ClassObjectId.java +++ /dev/null @@ -1,64 +0,0 @@ -/* ClassObjectId.java -- class object IDs - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.id; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * A class which represents a JDWP class object id - * - * @author Keith Seitz - */ -public class ClassObjectId - extends ObjectId -{ - /** - * The object class that this id represents - */ - public static final Class typeClass = Class.class; - - /** - * Constructs a new ClassObjectId - */ - public ClassObjectId () - { - super (JdwpConstants.Tag.CLASS_OBJECT); - } -} diff --git a/libjava/gnu/classpath/jdwp/id/ClassReferenceTypeId.java b/libjava/gnu/classpath/jdwp/id/ClassReferenceTypeId.java deleted file mode 100644 index 6b57673f827..00000000000 --- a/libjava/gnu/classpath/jdwp/id/ClassReferenceTypeId.java +++ /dev/null @@ -1,59 +0,0 @@ -/* ClassReferenceTypeId.java -- class reference type ids - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.id; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * A reference type ID representing java classes - * - * @author Keith Seitz - */ -public class ClassReferenceTypeId - extends ReferenceTypeId -{ - /** - * Constructs a new ClassReferenceTypeId - */ - public ClassReferenceTypeId () - { - super (JdwpConstants.TypeTag.CLASS); - } -} diff --git a/libjava/gnu/classpath/jdwp/id/InterfaceReferenceTypeId.java b/libjava/gnu/classpath/jdwp/id/InterfaceReferenceTypeId.java deleted file mode 100644 index bdbd6b6ebff..00000000000 --- a/libjava/gnu/classpath/jdwp/id/InterfaceReferenceTypeId.java +++ /dev/null @@ -1,59 +0,0 @@ -/* InterfaceReferenceTypeId.java -- interface reference type ids - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.id; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * A reference type ID representing java interfaces - * - * @author Keith Seitz - */ -public class InterfaceReferenceTypeId - extends ReferenceTypeId -{ - /** - * Constructs a new InterfaceReferenceTypeId - */ - public InterfaceReferenceTypeId () - { - super (JdwpConstants.TypeTag.INTERFACE); - } -} diff --git a/libjava/gnu/classpath/jdwp/id/JdwpId.java b/libjava/gnu/classpath/jdwp/id/JdwpId.java deleted file mode 100644 index 37f82e208c5..00000000000 --- a/libjava/gnu/classpath/jdwp/id/JdwpId.java +++ /dev/null @@ -1,127 +0,0 @@ -/* JdwpId.java -- base class for all object ID types - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.id; - -import java.io.DataOutputStream; -import java.io.IOException; - -/** - * A baseclass for all object types reported to the debugger - * - * @author Keith Seitz - */ -public abstract class JdwpId -{ - /** - * ID assigned to this object - */ - protected long _id; - - /** - * Tag of ID's type (see {@link gnu.classpath.jdwp.JdwpConstants.Tag}) - * for object-like IDs or the type tag (see {@link - * gnu.classpath.JdwpConstants.TypeTag}) for reference type IDs. - */ - private byte _tag; - - /** - * Constructs an empty JdwpId - */ - public JdwpId (byte tag) - { - _tag = tag; - } - - /** - * Sets the id for this object reference - */ - void setId (long id) - { - _id = id; - } - - /** - * Returns the id for this object reference - */ - public long getId () - { - return _id; - } - - /** - * Compares two object ids for equality. Two object ids - * are equal if they point to the same type and contain to - * the same id number. (NOTE: This is a much stricter check - * than is necessary: all JdwpIds have unique - * ids.) - */ - public boolean equals (JdwpId id) - { - return ((id.getClass () == getClass ()) && (id.getId () == getId ())); - } - - /** - * Returns size of this type (used by IDSizes) - */ - public abstract int size (); - - /** - * Writes the contents of this type to the DataOutputStream - * @param outStream the DataOutputStream to use - * @throws IOException when an error occurs on the OutputStream - */ - public abstract void write (DataOutputStream outStream) - throws IOException; - - /** - * Writes the contents of this type to the output stream, preceded - * by a one-byte tag for tagged object IDs or type tag for - * reference type IDs. - * - * @param outStream the DataOutputStream to use - * @throws IOException when an error occurs on the OutputStream - */ - public void writeTagged (DataOutputStream outStream) - throws IOException - { - outStream.writeByte (_tag); - write (outStream); - } -} diff --git a/libjava/gnu/classpath/jdwp/id/JdwpIdFactory.java b/libjava/gnu/classpath/jdwp/id/JdwpIdFactory.java deleted file mode 100644 index 06ec3c7681f..00000000000 --- a/libjava/gnu/classpath/jdwp/id/JdwpIdFactory.java +++ /dev/null @@ -1,165 +0,0 @@ -/* JdwpIdFactory.java -- factory for generating type and object IDs - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.id; - -import java.util.HashMap; - -/** - * This factory generates ids for objects and types that may - * be sent to a debugger. - * - * @author Keith Seitz (keiths@redhat.com) - */ -public class JdwpIdFactory -{ - // ID of last object / referencetype - private static Object _idLock = new Object (); - private static Object _ridLock = new Object (); - private static long _lastId = 0; - private static long _lastRid = 0; - - // A list of all ID types - private static HashMap _idList = new HashMap (); - - // Initialize the id list with known types - static - { - // ObjectId and ArrayId are special cases. See newId. - _idList.put (ClassLoaderId.typeClass, ClassLoaderId.class); - _idList.put (ClassObjectId.typeClass, ClassObjectId.class); - //_idList.put (FieldId.typeClass, FieldId.class); - //_idList.put (FrameId.typeClass, FrameId.class); - //_idList.put (MethodId.typeClass, MethodId.class); - _idList.put (StringId.typeClass, StringId.class); - _idList.put (ThreadId.typeClass, ThreadId.class); - _idList.put (ThreadGroupId.typeClass, ThreadGroupId.class); - } - - /** - * Returns a new id for the given object - * - * @param object the object for which an id is desired - * @returns a suitable object id - */ - public static JdwpId newId (Object object) - { - JdwpId id = null; - - // Special case: arrays - if (object.getClass ().isArray ()) - id = new ArrayId (); - else - { - // Loop through all classes until we hit baseclass - Class myClass; - for (myClass = object.getClass (); myClass != null; - myClass = myClass.getSuperclass ()) - { - Class clz = (Class) _idList.get (myClass); - if (clz != null) - { - try - { - id = (JdwpId) clz.newInstance (); - synchronized (_idLock) - { - id.setId (++_lastId); - } - return id; - } - catch (InstantiationException ie) - { - // This really should not happen - throw new RuntimeException ("cannot create new ID", ie); - } - catch (IllegalAccessException iae) - { - // This really should not happen - throw new RuntimeException ("illegal access of ID", iae); - } - } - } - - /* getSuperclass returned null and no matching ID type found. - So it must derive from Object. */ - id = new ObjectId (); - } - - synchronized (_idLock) - { - id.setId (++_lastId); - } - - return id; - } - - /** - * Returns a new reference type id for the given class - * - * @param clazz the Class for which an id is desired - * @returns a suitable reference type id or null - */ - public static ReferenceTypeId newReferenceTypeId (Class clazz) - { - ReferenceTypeId id = null; - try - { - if (clazz.isArray ()) - id = new ArrayReferenceTypeId (); - else if (clazz.isInterface ()) - id = new InterfaceReferenceTypeId (); - else - id = new ClassReferenceTypeId (); - synchronized (_ridLock) - { - id.setId (++_lastRid); - } - return id; - } - catch (InstantiationException ie) - { - return null; - } - catch (IllegalAccessException iae) - { - return null; - } - } -} diff --git a/libjava/gnu/classpath/jdwp/id/ObjectId.java b/libjava/gnu/classpath/jdwp/id/ObjectId.java deleted file mode 100644 index e34a3b59ebf..00000000000 --- a/libjava/gnu/classpath/jdwp/id/ObjectId.java +++ /dev/null @@ -1,99 +0,0 @@ -/* ObjectId.java -- object IDs - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.id; - -import gnu.classpath.jdwp.JdwpConstants; - -import java.io.DataOutputStream; -import java.io.IOException; - -/** - * A class which represents a JDWP object id for an object - * - * @author Keith Seitz - */ -public class ObjectId - extends JdwpId -{ - /** - * The object class that this id represents - */ - public static final Class typeClass = Object.class; - - /** - * Constructs a new ObjectId - */ - public ObjectId () - { - super (JdwpConstants.Tag.OBJECT); - } - - /** - * Constructs a new ObjectId of the - * given type. - * - * @param tag the tag of this type of object ID - */ - public ObjectId (byte tag) - { - super (tag); - } - - /** - * Returns the size of this id type - */ - public int size () - { - return 8; - } - - /** - * Writes the id to the stream - * - * @param outStream the stream to which to write - * @throws IOException when an error occurs on the OutputStream - */ - public void write (DataOutputStream outStream) - throws IOException - { - // All we need to do is write out our id as an 8-byte integer - outStream.writeLong (_id); - } -} diff --git a/libjava/gnu/classpath/jdwp/id/ReferenceTypeId.java b/libjava/gnu/classpath/jdwp/id/ReferenceTypeId.java deleted file mode 100644 index cdb78040a41..00000000000 --- a/libjava/gnu/classpath/jdwp/id/ReferenceTypeId.java +++ /dev/null @@ -1,81 +0,0 @@ -/* ReferenceTypeId.java -- a base class for all reference type IDs - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.id; - -import java.io.DataOutputStream; -import java.io.IOException; - -/** - * Base class for reference type IDs. This class usurps - * JdwpId's tag member for its own use (type tag). - * - * @author Keith Seitz - */ -public class ReferenceTypeId - extends JdwpId -{ - /** - * Constructor used by {Array,Interface,Class}ReferenceTypeId - */ - public ReferenceTypeId (byte tag) - { - super (tag); - } - - /** - * Returns the size of this ID type - */ - public int size () - { - return 8; - } - - /** - * Outputs the reference type ID to the given output stream - * - * @param outStream the stream to which to write the data - * @throws IOException for errors writing to the stream - */ - public void write (DataOutputStream outStream) - throws IOException - { - outStream.writeLong (_id); - } -} diff --git a/libjava/gnu/classpath/jdwp/id/StringId.java b/libjava/gnu/classpath/jdwp/id/StringId.java deleted file mode 100644 index ea1a83a56a2..00000000000 --- a/libjava/gnu/classpath/jdwp/id/StringId.java +++ /dev/null @@ -1,64 +0,0 @@ -/* StringId.java -- string IDs - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.id; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * A class which represents a JDWP string id - * - * @author Keith Seitz - */ -public class StringId - extends ObjectId -{ - /** - * The object class that this id represents - */ - public static final Class typeClass = String.class; - - /** - * Constructs a new StringId - */ - public StringId () - { - super (JdwpConstants.Tag.STRING); - } -} diff --git a/libjava/gnu/classpath/jdwp/id/ThreadGroupId.java b/libjava/gnu/classpath/jdwp/id/ThreadGroupId.java deleted file mode 100644 index aef7d5b5421..00000000000 --- a/libjava/gnu/classpath/jdwp/id/ThreadGroupId.java +++ /dev/null @@ -1,64 +0,0 @@ -/* ThreadGroupId.java -- thread group IDs - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.id; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * A class which represents a JDWP thread group id - * - * @author Keith Seitz - */ -public class ThreadGroupId - extends ObjectId -{ - /** - * The object class that this id represents - */ - public static final Class typeClass = ThreadGroup.class; - - /** - * Constructs a new ThreadGroupId - */ - public ThreadGroupId () - { - super (JdwpConstants.Tag.THREAD_GROUP); - } -} diff --git a/libjava/gnu/classpath/jdwp/id/ThreadId.java b/libjava/gnu/classpath/jdwp/id/ThreadId.java deleted file mode 100644 index 733bf55102b..00000000000 --- a/libjava/gnu/classpath/jdwp/id/ThreadId.java +++ /dev/null @@ -1,64 +0,0 @@ -/* ThreadId.java -- thread IDs - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.id; - -import gnu.classpath.jdwp.JdwpConstants; - -/** - * A class which represents a JDWP thread id - * - * @author Keith Seitz - */ -public class ThreadId - extends ObjectId -{ - /** - * The object class that this id represents - */ - public static final Class typeClass = Thread.class; - - /** - * Constructs a new ThreadId - */ - public ThreadId () - { - super (JdwpConstants.Tag.THREAD); - } -} diff --git a/libjava/gnu/classpath/jdwp/processor/CommandSet.java b/libjava/gnu/classpath/jdwp/processor/CommandSet.java deleted file mode 100644 index 17b956ceadc..00000000000 --- a/libjava/gnu/classpath/jdwp/processor/CommandSet.java +++ /dev/null @@ -1,68 +0,0 @@ -/* CommandSet.java -- An interface defining JDWP Command Sets - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.processor; - -import gnu.classpath.jdwp.exception.JdwpException; - -import java.io.DataOutputStream; -import java.nio.ByteBuffer; - -/** - * A class representing a JDWP Command Set. This class serves as a generic - * interface for all Command Sets types used by JDWP. - * - * @author Aaron Luchko - */ -public interface CommandSet -{ - /** - * Runs the given command with the data in distr and writes the data for the - * reply packet to ostr. - * - * @param bb holds the data portion of the Command Packet - * @param os data portion of the Reply Packet will be written here - * @param command the command field of the Command Packet - * @return true if the JDWP layer should shut down in response to this packet - * @throws JdwpException command wasn't carried out successfully - */ - public boolean runCommand(ByteBuffer bb, DataOutputStream os, - byte command) - throws JdwpException; -} diff --git a/libjava/gnu/classpath/jdwp/processor/FieldCommandSet.java b/libjava/gnu/classpath/jdwp/processor/FieldCommandSet.java deleted file mode 100644 index f14635b9188..00000000000 --- a/libjava/gnu/classpath/jdwp/processor/FieldCommandSet.java +++ /dev/null @@ -1,66 +0,0 @@ -/* FieldCommandSet.java -- class to implement the Field Command Set - Copyright (C) 2005 Free Software Foundation - -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.classpath.jdwp.processor; - -import gnu.classpath.jdwp.exception.JdwpException; -import gnu.classpath.jdwp.exception.NotImplementedException; - -import java.io.DataOutputStream; -import java.nio.ByteBuffer; - -/** - * A class representing the Field Command Set. - * - * @author Aaron Luchko - */ -public class FieldCommandSet implements CommandSet -{ - /** - * There are no commands for this CommandSet at this time so we just throw a - * NotImplementedException whenever it's called. - * - * @throws JdwpException An exception will always be thrown - */ - public boolean runCommand(ByteBuffer bb, DataOutputStream os, byte command) - throws JdwpException - { - throw new NotImplementedException( - "No commands for command set Field implemented."); - } -} diff --git a/libjava/gnu/classpath/jdwp/processor/InterfaceTypeCommandSet.java b/libjava/gnu/classpath/jdwp/processor/InterfaceTypeCommandSet.java deleted file mode 100644 index a32da38b324..00000000000 --- a/libjava/gnu/classpath/jdwp/processor/InterfaceTypeCommandSet.java +++ /dev/null @@ -1,67 +0,0 @@ -/* InterfaceTypeCommandSet.java -- class to implement the InterfaceType - Command Set - Copyright (C) 2005 Free Software Foundation - -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.classpath.jdwp.processor; - -import gnu.classpath.jdwp.exception.JdwpException; -import gnu.classpath.jdwp.exception.NotImplementedException; - -import java.io.DataOutputStream; -import java.nio.ByteBuffer; - -/** - * A class representing the InterfaceType Command Set. - * - * @author Aaron Luchko - */ -public class InterfaceTypeCommandSet implements CommandSet -{ - /** - * There are no commands for this CommandSet at this time so we just throw a - * NotImplementedException whenever it's called. - * - * @throws JdwpException An exception will always be thrown - */ - public boolean runCommand(ByteBuffer bb, DataOutputStream os, byte command) - throws JdwpException - { - throw new NotImplementedException( - "No commands for command set InterfaceType implemented."); - } -} diff --git a/libjava/gnu/classpath/jdwp/processor/ObjectReferenceCommandSet.java b/libjava/gnu/classpath/jdwp/processor/ObjectReferenceCommandSet.java deleted file mode 100644 index 38bb0cdbf96..00000000000 --- a/libjava/gnu/classpath/jdwp/processor/ObjectReferenceCommandSet.java +++ /dev/null @@ -1,249 +0,0 @@ -/* ObjectReferenceCommandSet.java -- lass to implement the ObjectReference - Command Set - Copyright (C) 2005 Free Software Foundation - -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.classpath.jdwp.processor; - -import gnu.classpath.jdwp.IVirtualMachine; -import gnu.classpath.jdwp.Jdwp; -import gnu.classpath.jdwp.JdwpConstants; -import gnu.classpath.jdwp.exception.InvalidFieldException; -import gnu.classpath.jdwp.exception.JdwpException; -import gnu.classpath.jdwp.exception.JdwpInternalErrorException; -import gnu.classpath.jdwp.exception.NotImplementedException; -import gnu.classpath.jdwp.id.IdManager; -import gnu.classpath.jdwp.id.ObjectId; -import gnu.classpath.jdwp.id.ReferenceTypeId; -import gnu.classpath.jdwp.util.Value; -import gnu.classpath.jdwp.util.MethodInvoker; - -import java.io.DataOutputStream; -import java.io.IOException; -import java.lang.reflect.Field; -import java.lang.reflect.Method; -import java.nio.ByteBuffer; - -/** - * A class representing the ObjectReference Command Set. - * - * @author Aaron Luchko - */ -public class ObjectReferenceCommandSet implements CommandSet -{ - // Our hook into the jvm - private final IVirtualMachine vm = Jdwp.getIVirtualMachine(); - - // Manages all the different ids that are assigned by jdwp - private final IdManager idMan = Jdwp.getIdManager(); - - public boolean runCommand(ByteBuffer bb, DataOutputStream os, byte command) - throws JdwpException - { - try - { - switch (command) - { - case JdwpConstants.CommandSet.ObjectReference.REFERENCE_TYPE: - executeReferenceType(bb, os); - break; - case JdwpConstants.CommandSet.ObjectReference.GET_VALUES: - executeGetValues(bb, os); - break; - case JdwpConstants.CommandSet.ObjectReference.SET_VALUES: - executeSetValues(bb, os); - break; - case JdwpConstants.CommandSet.ObjectReference.MONITOR_INFO: - executeMonitorInfo(bb, os); - break; - case JdwpConstants.CommandSet.ObjectReference.INVOKE_METHOD: - executeInvokeMethod(bb, os); - break; - case JdwpConstants.CommandSet.ObjectReference.DISABLE_COLLECTION: - executeDisableCollection(bb, os); - break; - case JdwpConstants.CommandSet.ObjectReference.ENABLE_COLLECTION: - executeEnableCollection(bb, os); - break; - case JdwpConstants.CommandSet.ObjectReference.IS_COLLECTED: - executeIsCollected(bb, os); - break; - default: - throw new NotImplementedException("Command " + command + - " not found in String Reference Command Set."); - } - } - catch (IOException ex) - { - // The DataOutputStream we're using isn't talking to a socket at all - // So if we throw an IOException we're in serious trouble - throw new JdwpInternalErrorException(ex); - } - return true; - } - - private void executeReferenceType(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ObjectId oid = idMan.readId(bb); - Object obj = oid.getObject(); - Class clazz = obj.getClass(); - ReferenceTypeId refId = idMan.getReferenceTypeId(clazz); - refId.writeTagged(os); - } - - private void executeGetValues(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ObjectId oid = idMan.readId(bb); - Object obj = oid.getObject(); - - int numFields = bb.getInt(); - - os.writeInt(numFields); // Looks pointless but this is the protocol - - for (int i = 0; i < numFields; i++) - { - Field field = (Field) idMan.readId(bb).getObject(); - Value.writeValueFromField(os, field, obj); - } - } - - private void executeSetValues(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ObjectId oid = idMan.readId(bb); - Object obj = oid.getObject(); - - int numFields = bb.getInt(); - - for (int i = 0; i < numFields; i++) - { - Field field = (Field) idMan.readId(bb).getObject(); - Object value = Value.getObj(bb, field); - try - { - field.set(obj, value); - } - catch (IllegalArgumentException ex) - { - // I suppose this would best qualify as an invalid field then - throw new InvalidFieldException(ex); - } - catch (IllegalAccessException ex) - { - // We should be able to access any field - throw new JdwpInternalErrorException(ex); - } - } - } - - private void executeMonitorInfo(ByteBuffer bb, DataOutputStream os) - throws JdwpException - { - // This command is optional, determined by VirtualMachines CapabilitiesNew - // so we'll leave it till later to implement - throw new NotImplementedException( - "Command ExecuteMonitorInfo not implemented."); - - } - - private void executeInvokeMethod(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ObjectId oid = idMan.readId(bb); - Object obj = oid.getObject(); - - ObjectId tid = idMan.readId(bb); - Thread thread = (Thread) tid.getObject(); - - ReferenceTypeId rid = idMan.readReferenceTypeId(bb); - Class clazz = rid.getType(); - - ObjectId mid = idMan.readId(bb); - Method method = (Method) mid.getObject(); - - int args = bb.getInt(); - Object[] values = new Object[args]; - - for (int i = 0; i < args; i++) - { - values[i] = Value.getObj(bb); - } - - int invokeOptions = bb.getInt(); - - if ((invokeOptions & JdwpConstants.InvokeOptions.INVOKE_SINGLE_THREADED) != 0) - { // We must suspend all other running threads first - vm.suspendAllThreads(); - } - boolean nonVirtual; - if ((invokeOptions & JdwpConstants.InvokeOptions.INVOKE_NONVIRTUAL) != 0) - nonVirtual = true; - else - nonVirtual = false; - MethodInvoker vmi = new MethodInvoker(vm); - - vmi.executeMethod(obj, thread, clazz, method, values, nonVirtual); - Object value = vmi.getReturnedValue(); - ObjectId exceptionId = vmi.getExceptionId(); - - Value.writeValue(os, value); - exceptionId.writeTagged(os); - } - - private void executeDisableCollection(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ObjectId oid = idMan.readId(bb); - oid.disableCollection(); - } - - private void executeEnableCollection(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ObjectId oid = idMan.readId(bb); - oid.enableCollection(); - } - - private void executeIsCollected(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ObjectId oid = idMan.readId(bb); - boolean collected = oid.isCollected(); - os.writeBoolean(collected); - } -} diff --git a/libjava/gnu/classpath/jdwp/processor/PacketProcessor.java b/libjava/gnu/classpath/jdwp/processor/PacketProcessor.java deleted file mode 100644 index 914494c249f..00000000000 --- a/libjava/gnu/classpath/jdwp/processor/PacketProcessor.java +++ /dev/null @@ -1,216 +0,0 @@ -/* PacketProcessor.java -- a thread which processes command packets - from the debugger - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.processor; - -import gnu.classpath.jdwp.Jdwp; -import gnu.classpath.jdwp.JdwpConstants; -import gnu.classpath.jdwp.exception.JdwpException; -import gnu.classpath.jdwp.transport.JdwpCommandPacket; -import gnu.classpath.jdwp.transport.JdwpConnection; -import gnu.classpath.jdwp.transport.JdwpPacket; -import gnu.classpath.jdwp.transport.JdwpReplyPacket; - -import java.io.ByteArrayOutputStream; -import java.io.DataOutputStream; -import java.io.IOException; -import java.nio.ByteBuffer; - -/** - * This class is responsible for processing packets from the - * debugger. It waits for an available packet from the connection - * ({@link gnu.classpath.jdwp.transport.JdwpConnection}) and then - * processes the packet and any reply. - * - * @author Keith Seitz (keiths@redhat.com) - */ -public class PacketProcessor - extends Thread -{ - // The connection to the debugger - private JdwpConnection _connection; - - // Shutdown this thread? - private boolean _shutdown; - - // A Mapping of the command set (Byte) to the specific CommandSet - private CommandSet[] _sets; - - // Contents of the ReplyPackets data field - private ByteArrayOutputStream _outputBytes; - - // Output stream around _outputBytes - private DataOutputStream _os; - - /** - * Constructs a new PacketProcessor object - * Connection must be validated before getting here! - * - * @param con the connection - */ - public PacketProcessor (JdwpConnection con) - { - _connection = con; - _shutdown = false; - - // MAXIMUM is the value of the largest command set we may receive - _sets = new CommandSet[JdwpConstants.CommandSet.MAXIMUM + 1]; - _outputBytes = new ByteArrayOutputStream(); - _os = new DataOutputStream (_outputBytes); - - // Create all the Command Sets and add them to our array - _sets[JdwpConstants.CommandSet.VirtualMachine.CS_VALUE] = - new VirtualMachineCommandSet(); - _sets[JdwpConstants.CommandSet.ReferenceType.CS_VALUE] = - new ReferenceTypeCommandSet(); - _sets[JdwpConstants.CommandSet.ClassType.CS_VALUE] = - new ClassTypeCommandSet(); - _sets[JdwpConstants.CommandSet.ArrayType.CS_VALUE] = - new ArrayTypeCommandSet(); - _sets[JdwpConstants.CommandSet.InterfaceType.CS_VALUE] = - new InterfaceTypeCommandSet(); - _sets[JdwpConstants.CommandSet.Method.CS_VALUE] = - new MethodCommandSet(); - _sets[JdwpConstants.CommandSet.Field.CS_VALUE] = - new FieldCommandSet(); - _sets[JdwpConstants.CommandSet.ObjectReference.CS_VALUE] = - new ObjectReferenceCommandSet(); - _sets[JdwpConstants.CommandSet.StringReference.CS_VALUE] = - new StringReferenceCommandSet(); - _sets[JdwpConstants.CommandSet.ThreadReference.CS_VALUE] = - new ThreadReferenceCommandSet(); - _sets[JdwpConstants.CommandSet.ThreadGroupReference.CS_VALUE] = - new ThreadGroupReferenceCommandSet(); - _sets[JdwpConstants.CommandSet.ArrayReference.CS_VALUE] = - new ArrayReferenceCommandSet(); - _sets[JdwpConstants.CommandSet.ClassLoaderReference.CS_VALUE] = - new ClassLoaderReferenceCommandSet(); - _sets[JdwpConstants.CommandSet.EventRequest.CS_VALUE] = - new EventRequestCommandSet(); - _sets[JdwpConstants.CommandSet.StackFrame.CS_VALUE] = - new StackFrameCommandSet(); - _sets[JdwpConstants.CommandSet.ClassObjectReference.CS_VALUE] = - new ClassObjectReferenceCommandSet(); - } - - /** - * Main run routine for this thread. Will loop getting packets - * from the connection and processing them. - */ - public void run () - { - try - { - while (!_shutdown) - { - _processOnePacket (); - } - } - catch (IOException ex) - { - ex.printStackTrace(); - } - // Time to shutdown, tell Jdwp to shutdown - Jdwp.getDefault().shutdown(); - } - - /** - * Shutdown the packet processor - */ - public void shutdown () - { - _shutdown = true; - interrupt (); - } - - // Helper function which actually does all the work of waiting - // for a packet and getting it processed. - private void _processOnePacket () - throws IOException - { - JdwpPacket pkt = _connection.getPacket (); - - if (!(pkt instanceof JdwpCommandPacket)) - { - // We're not supposed to get these from the debugger! - // Drop it on the floor - return; - } - - if (pkt != null) - { - JdwpCommandPacket commandPkt = (JdwpCommandPacket) pkt; - JdwpReplyPacket reply = new JdwpReplyPacket(commandPkt); - - // Reset our output stream - _outputBytes.reset(); - - // Create a ByteBuffer around the command packet - ByteBuffer bb = ByteBuffer.wrap(commandPkt.getData()); - byte command = commandPkt.getCommand(); - byte commandSet = commandPkt.getCommandSet(); - - CommandSet set = null; - try - { - // There is no command set with value 0 - if (commandSet > 0 && commandSet < _sets.length) - { - set = _sets[commandPkt.getCommandSet()]; - } - if (set != null) - { - _shutdown = set.runCommand(bb, _os, command); - reply.setData(_outputBytes.toByteArray()); - } - else - { - // This command set wasn't in our tree - reply.setErrorCode(JdwpConstants.Error.NOT_IMPLEMENTED); - } - } - catch (JdwpException ex) - { - reply.setErrorCode(ex.getErrorCode ()); - } - _connection.sendPacket (reply); - } - } -} diff --git a/libjava/gnu/classpath/jdwp/processor/ReferenceTypeCommandSet.java b/libjava/gnu/classpath/jdwp/processor/ReferenceTypeCommandSet.java deleted file mode 100644 index 34def9f2d07..00000000000 --- a/libjava/gnu/classpath/jdwp/processor/ReferenceTypeCommandSet.java +++ /dev/null @@ -1,321 +0,0 @@ -/* ReferenceTypeCommandSet.java -- lass to implement the ReferenceType - Command Set - Copyright (C) 2005 Free Software Foundation - -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.classpath.jdwp.processor; - -import gnu.classpath.jdwp.IVirtualMachine; -import gnu.classpath.jdwp.Jdwp; -import gnu.classpath.jdwp.JdwpConstants; -import gnu.classpath.jdwp.exception.InvalidFieldException; -import gnu.classpath.jdwp.exception.JdwpException; -import gnu.classpath.jdwp.exception.JdwpInternalErrorException; -import gnu.classpath.jdwp.exception.NotImplementedException; -import gnu.classpath.jdwp.id.IdManager; -import gnu.classpath.jdwp.id.ObjectId; -import gnu.classpath.jdwp.id.ReferenceTypeId; -import gnu.classpath.jdwp.util.JdwpString; -import gnu.classpath.jdwp.util.Signature; -import gnu.classpath.jdwp.util.Value; - -import java.io.DataOutputStream; -import java.io.IOException; -import java.lang.reflect.Field; -import java.lang.reflect.Method; -import java.nio.ByteBuffer; - -/** - * A class representing the ReferenceType Command Set. - * - * @author Aaron Luchko - */ -public class ReferenceTypeCommandSet implements CommandSet -{ - // Our hook into the jvm - private final IVirtualMachine vm = Jdwp.getIVirtualMachine(); - - // Manages all the different ids that are assigned by jdwp - private final IdManager idMan = Jdwp.getIdManager(); - - public boolean runCommand(ByteBuffer bb, DataOutputStream os, byte command) - throws JdwpException - { - try - { - switch (command) - { - case JdwpConstants.CommandSet.ReferenceType.SIGNATURE: - executeSignature(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.CLASS_LOADER: - executeClassLoader(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.MODIFIERS: - executeModifiers(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.FIELDS: - executeFields(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.METHODS: - executeMethods(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.GET_VALUES: - executeGetValues(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.SOURCE_FILE: - executeSourceFile(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.NESTED_TYPES: - executeNestedTypes(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.STATUS: - executeStatus(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.INTERFACES: - executeInterfaces(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.CLASS_OBJECT: - executeClassObject(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.SOURCE_DEBUG_EXTENSION: - executeSourceDebugExtension(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.SIGNATURE_WITH_GENERIC: - executeSignatureWithGeneric(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.FIELDS_WITH_GENERIC: - executeFieldWithGeneric(bb, os); - break; - case JdwpConstants.CommandSet.ReferenceType.METHODS_WITH_GENERIC: - executeMethodsWithGeneric(bb, os); - break; - default: - throw new NotImplementedException("Command " + command + - " not found in String Reference Command Set."); - } - } - catch (IOException ex) - { - // The DataOutputStream we're using isn't talking to a socket at all - // So if we throw an IOException we're in serious trouble - throw new JdwpInternalErrorException(ex); - } - return true; - } - - private void executeSignature(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ReferenceTypeId refId = idMan.readReferenceTypeId(bb); - String sig = Signature.computeClassSignature(refId.getType()); - JdwpString.writeString(os, sig); - } - - private void executeClassLoader(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ReferenceTypeId refId = idMan.readReferenceTypeId(bb); - - Class clazz = refId.getType(); - ClassLoader loader = clazz.getClassLoader(); - ObjectId oid = idMan.getId(loader); - oid.write(os); - } - - private void executeModifiers(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ReferenceTypeId refId = idMan.readReferenceTypeId(bb); - - Class clazz = refId.getType(); - os.writeInt(clazz.getModifiers()); - } - - private void executeFields(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ReferenceTypeId refId = idMan.readReferenceTypeId(bb); - Class clazz = refId.getType(); - - Field[] fields = clazz.getFields(); - os.writeInt(fields.length); - for (int i = 0; i < fields.length; i++) - { - Field field = fields[i]; - idMan.getId(field).write(os); - JdwpString.writeString(os, field.getName()); - JdwpString.writeString(os, Signature.computeFieldSignature(field)); - os.writeInt(field.getModifiers()); - } - } - - private void executeMethods(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ReferenceTypeId refId = idMan.readReferenceTypeId(bb); - Class clazz = refId.getType(); - - Method[] methods = clazz.getMethods(); - os.writeInt(methods.length); - for (int i = 0; i < methods.length; i++) - { - Method method = methods[i]; - idMan.getId(method).write(os); - JdwpString.writeString(os, method.getName()); - JdwpString.writeString(os, Signature.computeMethodSignature(method)); - os.writeInt(method.getModifiers()); - } - } - - private void executeGetValues(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ReferenceTypeId refId = idMan.readReferenceTypeId(bb); - Class clazz = refId.getType(); - - int numFields = bb.getInt(); - os.writeInt(numFields); // Looks pointless but this is the protocol - for (int i = 0; i < numFields; i++) - { - ObjectId fieldId = idMan.readId(bb); - Field field = (Field) (fieldId.getObject()); - Class fieldClazz = field.getDeclaringClass(); - - // We don't actually need the clazz to get the field but we might as - // well check that the debugger got it right - if (fieldClazz.isAssignableFrom(clazz)) - Value.writeStaticValueFromField(os, field); - else - throw new InvalidFieldException(fieldId.getId()); - } - } - - private void executeSourceFile(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ReferenceTypeId refId = idMan.readReferenceTypeId(bb); - Class clazz = refId.getType(); - - // We'll need to go into the jvm for this unless there's an easier way - String sourceFileName = vm.getSourceFile(clazz); - JdwpString.writeString(os, sourceFileName); - // clazz.getProtectionDomain().getCodeSource().getLocation(); - } - - private void executeNestedTypes(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ReferenceTypeId refId = idMan.readReferenceTypeId(bb); - Class clazz = refId.getType(); - Class[] declaredClazzes = clazz.getDeclaredClasses(); - os.writeInt(declaredClazzes.length); - for (int i = 0; i < declaredClazzes.length; i++) - { - Class decClazz = declaredClazzes[i]; - ReferenceTypeId clazzId = idMan.getReferenceTypeId(decClazz); - clazzId.writeTagged(os); - } - } - - private void executeStatus(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ReferenceTypeId refId = idMan.readReferenceTypeId(bb); - Class clazz = refId.getType(); - - // I don't think there's any other way to get this - int status = vm.getStatus(clazz); - os.writeInt(status); - } - - private void executeInterfaces(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ReferenceTypeId refId = idMan.readReferenceTypeId(bb); - Class clazz = refId.getType(); - Class[] interfaces = clazz.getInterfaces(); - os.writeInt(interfaces.length); - for (int i = 0; i < interfaces.length; i++) - { - Class interfaceClass = interfaces[i]; - ReferenceTypeId intId = idMan.getReferenceTypeId(interfaceClass); - intId.write(os); - } - } - - private void executeClassObject(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ReferenceTypeId refId = idMan.readReferenceTypeId(bb); - Class clazz = refId.getType(); - ObjectId clazzObjectId = idMan.getId(clazz); - clazzObjectId.write(os); - } - - private void executeSourceDebugExtension(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - // This command is optional, determined by VirtualMachines CapabilitiesNew - // so we'll leave it till later to implement - throw new NotImplementedException( - "Command SourceDebugExtension not implemented."); - } - - private void executeSignatureWithGeneric(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - // We don't have generics yet - throw new NotImplementedException( - "Command SourceDebugExtension not implemented."); - } - - private void executeFieldWithGeneric(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - // We don't have generics yet - throw new NotImplementedException( - "Command SourceDebugExtension not implemented."); - } - - private void executeMethodsWithGeneric(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - // We don't have generics yet - throw new NotImplementedException( - "Command SourceDebugExtension not implemented."); - } -} diff --git a/libjava/gnu/classpath/jdwp/processor/StringReferenceCommandSet.java b/libjava/gnu/classpath/jdwp/processor/StringReferenceCommandSet.java deleted file mode 100644 index 1f1b04cb0cc..00000000000 --- a/libjava/gnu/classpath/jdwp/processor/StringReferenceCommandSet.java +++ /dev/null @@ -1,98 +0,0 @@ -/* StringReferenceCommandSet.java -- class to implement the StringReference - Command Set - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.processor; - -import gnu.classpath.jdwp.Jdwp; -import gnu.classpath.jdwp.JdwpConstants; -import gnu.classpath.jdwp.exception.JdwpException; -import gnu.classpath.jdwp.exception.JdwpInternalErrorException; -import gnu.classpath.jdwp.exception.NotImplementedException; -import gnu.classpath.jdwp.id.ObjectId; -import gnu.classpath.jdwp.util.JdwpString; - -import java.io.DataOutputStream; -import java.io.IOException; -import java.nio.ByteBuffer; - -/** - * A class representing the StringReference Command Set. - * - * @author Aaron Luchko - */ -public class StringReferenceCommandSet implements CommandSet -{ - - public boolean runCommand(ByteBuffer bb, DataOutputStream os, byte command) - throws JdwpException - { - try - { - - // Although there's only a single command to choose from we still use - // a switch to maintain consistency with the rest of the CommandSets - switch (command) - { - case JdwpConstants.CommandSet.StringReference.VALUE: - executeValue(bb, os); - break; - default: - throw new NotImplementedException("Command " + command + - " not found in String Reference Command Set."); - } - } - catch (IOException ex) - { - // The DataOutputStream we're using isn't talking to a socket at all - // So if we throw an IOException we're in serious trouble - throw new JdwpInternalErrorException(ex); - } - return true; - } - - private void executeValue(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ObjectId oid = Jdwp.getIdManager().readId(bb); - - String str = (String) oid.getObject(); - JdwpString.writeString(os, str); - } -} diff --git a/libjava/gnu/classpath/jdwp/processor/VirtualMachineCommandSet.java b/libjava/gnu/classpath/jdwp/processor/VirtualMachineCommandSet.java deleted file mode 100644 index 32b98781727..00000000000 --- a/libjava/gnu/classpath/jdwp/processor/VirtualMachineCommandSet.java +++ /dev/null @@ -1,474 +0,0 @@ -/* VirtualMachineCommandSet.java -- class to implement the VirtualMachine - Command Set - Copyright (C) 2005 Free Software Foundation - -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.classpath.jdwp.processor; - -import gnu.classpath.jdwp.IVirtualMachine; -import gnu.classpath.jdwp.Jdwp; -import gnu.classpath.jdwp.JdwpConstants; -import gnu.classpath.jdwp.exception.JdwpException; -import gnu.classpath.jdwp.exception.JdwpInternalErrorException; -import gnu.classpath.jdwp.exception.NotImplementedException; -import gnu.classpath.jdwp.id.IdManager; -import gnu.classpath.jdwp.id.ObjectId; -import gnu.classpath.jdwp.id.ReferenceTypeId; -import gnu.classpath.jdwp.util.JdwpString; -import gnu.classpath.jdwp.util.Signature; - -import java.io.DataOutputStream; -import java.io.IOException; -import java.nio.ByteBuffer; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.Properties; - -/** - * A class representing the VirtualMachine Command Set. - * - * @author Aaron Luchko - */ -public class VirtualMachineCommandSet implements CommandSet -{ - // Our hook into the jvm - private final IVirtualMachine vm = Jdwp.getIVirtualMachine(); - - // Manages all the different ids that are assigned by jdwp - private final IdManager idMan = Jdwp.getIdManager(); - - // The Jdwp object - private final Jdwp jdwp = Jdwp.getDefault(); - - public boolean runCommand(ByteBuffer bb, DataOutputStream os, byte command) - throws JdwpException - { - boolean keepRunning = true; - try - { - switch (command) - { - case JdwpConstants.CommandSet.VirtualMachine.VERSION: - executeVersion(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.CLASSES_BY_SIGNATURE: - executeClassesBySignature(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.ALL_CLASSES: - executeAllClasses(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.ALL_THREADS: - executeAllThreads(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.TOP_LEVEL_THREAD_GROUPS: - executeTopLevelThreadGroups(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.IDSIZES: - executeIDsizes(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.DISPOSE: - keepRunning = false; - executeDispose(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.SUSPEND: - executeSuspend(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.RESUME: - executeResume(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.EXIT: - keepRunning = false; - executeExit(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.CREATE_STRING: - executeCreateString(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.CAPABILITIES: - executeCapabilities(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.CLASS_PATHS: - executeClassPaths(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.DISPOSE_OBJECTS: - executeDisposeObjects(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.HOLD_EVENTS: - executeHoldEvents(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.RELEASE_EVENTS: - executeReleaseEvents(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.CAPABILITIES_NEW: - executeCapabilitiesNew(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.REDEFINE_CLASSES: - executeRedefineClasses(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.SET_DEFAULT_STRATUM: - executeSetDefaultStratum(bb, os); - break; - case JdwpConstants.CommandSet.VirtualMachine.ALL_CLASSES_WITH_GENERIC: - executeAllClassesWithGeneric(bb, os); - break; - - default: - break; - } - } - catch (IOException ex) - { - // The DataOutputStream we're using isn't talking to a socket at all - // So if we throw an IOException we're in serious trouble - throw new JdwpInternalErrorException(ex); - } - return keepRunning; - } - - private void executeVersion(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - - Properties props = System.getProperties(); - - int jdwpMajor = JdwpConstants.Version.MAJOR; - int jdwpMinor = JdwpConstants.Version.MINOR; - // The description field is pretty loosely defined - String description = "JDWP version " + jdwpMajor + "." + jdwpMinor - + ", JVM version " + props.getProperty("java.vm.name") - + " " + props.getProperty("java.vm.version") + " " - + props.getProperty("java.version"); - String vmVersion = props.getProperty("java.version"); - String vmName = props.getProperty("java.vm.name"); - JdwpString.writeString(os, description); - os.write(jdwpMajor); - os.write(jdwpMinor); - JdwpString.writeString(os, vmName); - JdwpString.writeString(os, vmVersion); - } - - private void executeClassesBySignature(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - String sig = JdwpString.readString(bb); - ArrayList allMatchingClasses = new ArrayList(); - - // This will be an Iterator over all loaded Classes - Iterator iter = vm.getAllLoadedClasses(); - - while (iter.hasNext()) - { - Class clazz = (Class) iter.next(); - String clazzSig = Signature.computeClassSignature(clazz); - if (clazzSig.equals(sig)) - allMatchingClasses.add(clazz); - } - - os.writeInt(allMatchingClasses.size()); - for (int i = 0; i < allMatchingClasses.size(); i++) - { - Class clazz = (Class) allMatchingClasses.get(i); - ReferenceTypeId id = idMan.getReferenceTypeId(clazz); - id.writeTagged(os); - int status = vm.getStatus(clazz); - os.writeInt(status); - } - } - - private void executeAllClasses(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - // Disable garbage collection while we're collecting the info on loaded - // classes so we some classes don't get collected between the time we get - // the count and the time we get the list - vm.disableGarbageCollection(); - - int classCount = vm.getAllLoadedClassesCount(); - os.writeInt(classCount); - - // This will be an Iterator over all loaded Classes - Iterator iter = vm.getAllLoadedClasses(); - vm.enableGarbageCollection(); - int count = 0; - - // Note it's possible classes were created since out classCount so make - // sure we don't write more classes than we told the debugger - while (iter.hasNext() && count++ < classCount) - { - Class clazz = (Class) iter.next(); - ReferenceTypeId id = idMan.getReferenceTypeId(clazz); - id.writeTagged(os); - String sig = Signature.computeClassSignature(clazz); - JdwpString.writeString(os, sig); - int status = vm.getStatus(clazz); - os.writeInt(status); - } - } - - private void executeAllThreads(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ThreadGroup jdwpGroup = Thread.currentThread().getThreadGroup(); - ThreadGroup root = getRootThreadGroup(jdwpGroup); - - int numThreads = root.activeCount(); - Thread allThreads[] = new Thread[numThreads]; - root.enumerate(allThreads, true); - - // We need to loop through for the true count since some threads may have - // been destroyed since we got - // activeCount so those spots in the array will be null. As well we must - // ignore any threads that belong to jdwp - numThreads = 0; - for (int i = 0; i < allThreads.length; i++) - { - Thread thread = allThreads[i]; - if (thread == null) - break; // No threads after this point - if (!thread.getThreadGroup().equals(jdwpGroup)) - numThreads++; - } - - os.writeInt(numThreads); - - for (int i = 0; i < allThreads.length; i++) - { - Thread thread = allThreads[i]; - if (thread == null) - break; // No threads after this point - if (!thread.getThreadGroup().equals(jdwpGroup)) - idMan.getId(thread).write(os); - } - } - - private void executeTopLevelThreadGroups(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ThreadGroup jdwpGroup = jdwp.getJdwpThreadGroup(); - ThreadGroup root = getRootThreadGroup(jdwpGroup); - - os.writeInt(1); // Just one top level group allowed? - idMan.getId(root); - } - - private void executeDispose(ByteBuffer bb, DataOutputStream os) - throws JdwpException - { - // resumeAllThreads isn't sufficient as a thread may have been - // suspended multiple times, we likely need a way to keep track of how many - // times a thread has been suspended or else a stronger resume method for - // this purpose - // vm.resumeAllThreadsExcept(jdwp.getJdwpThreadGroup()); - - // Simply shutting down the jdwp layer will take care of the rest of the - // shutdown other than disabling debugging in the VM - // vm.disableDebugging(); - - // Don't implement this until we're sure how to remove all the debugging - // effects from the VM. - throw new NotImplementedException( - "Command VirtualMachine.Dispose not implemented"); - - } - - private void executeIDsizes(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - ObjectId oid = new ObjectId(); - os.writeInt(oid.size()); // fieldId - os.writeInt(oid.size()); // methodId - os.writeInt(oid.size()); // objectId - os.writeInt(new ReferenceTypeId((byte) 0x00).size()); // referenceTypeId - os.writeInt(oid.size()); // frameId - } - - private void executeSuspend(ByteBuffer bb, DataOutputStream os) - throws JdwpException - { - vm.suspendAllThreadsExcept(jdwp.getJdwpThreadGroup()); - } - - private void executeResume(ByteBuffer bb, DataOutputStream os) - throws JdwpException - { - vm.resumeAllThreadsExcept(jdwp.getJdwpThreadGroup()); - } - - private void executeExit(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - int exitCode = bb.getInt(); - jdwp.setExit(exitCode); - } - - private void executeCreateString(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - String string = JdwpString.readString(bb); - ObjectId stringId = Jdwp.getIdManager().getId(string); - - // Since this string isn't referenced anywhere we'll disable garbage - // collection on it so it's still around when the debugger gets back to it. - stringId.disableCollection(); - stringId.write(os); - } - - private void executeCapabilities(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - // Store these somewhere? - os.writeBoolean(false); // canWatchFieldModification - os.writeBoolean(false); // canWatchFieldAccess - os.writeBoolean(false); // canGetBytecodes - os.writeBoolean(false); // canGetSyntheticAttribute - os.writeBoolean(false); // canGetOwnedMonitorInfo - os.writeBoolean(false); // canGetCurrentContendedMonitor - os.writeBoolean(false); // canGetMonitorInfo - } - - private void executeClassPaths(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - String baseDir = System.getProperty("user.dir"); - JdwpString.writeString(os, baseDir); - - // Find and write the classpath - String classPath = System.getProperty("java.class.path"); - String[] paths = classPath.split(":"); - - os.writeInt(paths.length); - for (int i = 0; i < paths.length; i++) - JdwpString.writeString(os, paths[i]); - - // Now the bootpath - String bootPath = System.getProperty("sun.boot.class.path"); - paths = bootPath.split(":"); - os.writeInt(paths.length); - for (int i = 0; i < paths.length; i++) - JdwpString.writeString(os, paths[i]); - } - - private void executeDisposeObjects(ByteBuffer bb, DataOutputStream os) - throws JdwpException - { - // Instead of going through the list of objects they give us it's probably - // better just to find the garbage collected objects ourselves - idMan.update(); - } - - private void executeHoldEvents(ByteBuffer bb, DataOutputStream os) - throws JdwpException - { - // Going to have to implement a send queue somewhere and do this without - // triggering events - // Until then just don't implement - throw new NotImplementedException( - "Command VirtualMachine.HoldEvents not implemented"); - } - - // Opposite of executeHoldEvents - private void executeReleaseEvents(ByteBuffer bb, DataOutputStream os) - throws JdwpException - { - throw new NotImplementedException( - "Command VirtualMachine.ReleaseEvents not implemented"); - } - - private void executeCapabilitiesNew(ByteBuffer bb, DataOutputStream os) - throws JdwpException, IOException - { - // Store these somewhere? - final int CAPABILITIES_NEW_SIZE = 32; - os.writeBoolean(false); // canWatchFieldModification - os.writeBoolean(false); // canWatchFieldAccess - os.writeBoolean(false); // canGetBytecodes - os.writeBoolean(false); // canGetSyntheticAttribute - os.writeBoolean(false); // canGetOwnedMonitorInfo - os.writeBoolean(false); // canGetCurrentContendedMonitor - os.writeBoolean(false); // canGetMonitorInfo - os.writeBoolean(false); // canRedefineClasses - os.writeBoolean(false); // canAddMethod - os.writeBoolean(false); // canUnrestrictedlyRedefineClasses - os.writeBoolean(false); // canPopFrames - os.writeBoolean(false); // canUseInstanceFilters - os.writeBoolean(false); // canGetSourceDebugExtension - os.writeBoolean(false); // canRequestVMDeathEvent - os.writeBoolean(false); // canSetDefaultStratum - for (int i = 15; i < CAPABILITIES_NEW_SIZE; i++) - // Future capabilities - // currently unused - os.writeBoolean(false); // Set to false - } - - private void executeRedefineClasses(ByteBuffer bb, DataOutputStream os) - throws JdwpException - { - // Optional command, don't implement - throw new NotImplementedException( - "Command VirtualMachine.RedefineClasses not implemented"); - } - - private void executeSetDefaultStratum(ByteBuffer bb, DataOutputStream os) - throws JdwpException - { - // Optional command, don't implement - throw new NotImplementedException( - "Command VirtualMachine.SetDefaultStratum not implemented"); - } - - private void executeAllClassesWithGeneric(ByteBuffer bb, DataOutputStream os) - throws JdwpException - { - // We don't handle generics - throw new NotImplementedException( - "Command VirtualMachine.AllClassesWithGeneric not implemented"); - } - - /** - * Find the root ThreadGroup of this ThreadGroup - */ - private ThreadGroup getRootThreadGroup(ThreadGroup group) - { - ThreadGroup parent = group.getParent(); - - while (parent != null) - { - group = parent; - parent = group.getParent(); - } - return group; // This group was the root - } -} diff --git a/libjava/gnu/classpath/jdwp/transport/ITransport.java b/libjava/gnu/classpath/jdwp/transport/ITransport.java deleted file mode 100644 index 371cf8f06af..00000000000 --- a/libjava/gnu/classpath/jdwp/transport/ITransport.java +++ /dev/null @@ -1,84 +0,0 @@ -/* ITransport.java -- An interface defining JDWP transports - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.transport; - -import java.io.InputStream; -import java.io.IOException; -import java.io.OutputStream; -import java.lang.IllegalArgumentException; -import java.util.HashMap; - -/** - * A class representing a transport layer. This class serves as a generic - * interface for all transport types used in the JDWP back-end. - * - * @author Keith Seitz - */ -public interface ITransport -{ - /** - * Configure the transport with the given properties - * - * @param properties properties of the transport configuration - * @throws TransportException on configury error - */ - public void configure (HashMap properties) - throws TransportException; - - /** - * Initialize the transport - * - * @throws TransportException on initialization error - */ - public void initialize () - throws TransportException; - - /** - * Get the input stream for the transport - */ - public InputStream getInputStream () - throws IOException; - - /** - * Get the output stream for the transport - */ - public OutputStream getOutputStream () - throws IOException; -} diff --git a/libjava/gnu/classpath/jdwp/transport/JdwpCommandPacket.java b/libjava/gnu/classpath/jdwp/transport/JdwpCommandPacket.java deleted file mode 100644 index e99159aad9b..00000000000 --- a/libjava/gnu/classpath/jdwp/transport/JdwpCommandPacket.java +++ /dev/null @@ -1,149 +0,0 @@ -/* JdwpCommandPacket.java -- JDWP command packet - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.transport; - -import java.io.DataOutputStream; -import java.io.IOException; - -/** - * A class representing a JDWP command packet. - * This class adds command set and command to the packet header - * information in {@link gnu.classpath.jdwp.transport.JdwpPacket} - * and adds additional command packet-specific processing. - * - * @author Keith Seitz - */ -public class JdwpCommandPacket extends JdwpPacket -{ - /** - * Command set - */ - protected byte _commandSet; - - /** - * Command - */ - protected byte _command; - - // Minimum packet size [excluding super class] - // ( commandSet (1) + command (1) ) - private static final int MINIMUM_LENGTH = 2; - - /** - * Constructs a new JdwpCommandPacket - */ - public JdwpCommandPacket () - { - // Don't assign an id. This constructor is called by - // JdwpPacket.fromBytes, and that will assign a packet id. - } - - /** - * Constructs a new JdwpCommandPacket - * with the given command set and command - * - * @param set the command set - * @param command the command - */ - public JdwpCommandPacket (byte set, byte command) - { - _id = ++_last_id; - _commandSet = set; - _command = command; - } - - /** - * Retuns the length of this packet - */ - public int getLength () - { - return MINIMUM_LENGTH + super.getLength (); - } - - /** - * Returns the command set - */ - public byte getCommandSet () - { - return _commandSet; - } - - /** - * Sets the command set - */ - public void setCommandSet (byte cs) - { - _commandSet = cs; - } - - /** - * Returns the command - */ - public byte getCommand () - { - return _command; - } - - /** - * Sets the command - */ - public void setCommand (byte cmd) - { - _command = cmd; - } - - // Reads command packet data from the given buffer, starting - // at the given offset - protected int myFromBytes (byte[] bytes, int index) - { - int i = 0; - setCommandSet (bytes[index + i++]); - setCommand (bytes[index + i++]); - return i; - } - - // Writes the command packet data into the given buffer - protected void myWrite (DataOutputStream dos) - throws IOException - { - dos.writeByte (getCommandSet ()); - dos.writeByte (getCommand ()); - } -} diff --git a/libjava/gnu/classpath/jdwp/transport/JdwpConnection.java b/libjava/gnu/classpath/jdwp/transport/JdwpConnection.java deleted file mode 100644 index 18250d3209b..00000000000 --- a/libjava/gnu/classpath/jdwp/transport/JdwpConnection.java +++ /dev/null @@ -1,298 +0,0 @@ -/* JdwpConnection.java -- A JDWP-speaking connection - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.transport; - -import gnu.classpath.jdwp.Jdwp; -import gnu.classpath.jdwp.event.Event; -import gnu.classpath.jdwp.event.EventRequest; - -import java.io.ByteArrayOutputStream; -import java.io.DataInputStream; -import java.io.DataOutputStream; -import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; - -/** - * A connection via some transport to some JDWP-speaking entity. - * This is also a thread which handles all communications to/from - * the debugger. While access to the transport layer may be accessed by - * several threads, start-up and initialization should not be allowed - * to occur more than once. - * - *

This class is also a thread that is responsible for pulling - * packets off the wire and sticking them in a queue for packet - * processing threads. - * - * @author Keith Seitz (keiths@redhat.com) - */ -public class JdwpConnection - extends Thread -{ - // The JDWP handshake - private static final byte[] _HANDSHAKE = {'J', 'D', 'W', 'P', '-', 'H', 'a', - 'n', 'd', 's', 'h', 'a', 'k', 'e'}; - - // Transport method - private ITransport _transport; - - // Command queue - private ArrayList _commandQueue; - - // Shutdown flag - private boolean _shutdown; - - // Input stream from transport - private DataInputStream _inStream; - - // Output stream from transprot - private DataOutputStream _outStream; - - // A buffer used to construct the packet data - private ByteArrayOutputStream _bytes; - - // A DataOutputStream for the byte buffer - private DataOutputStream _doStream; - - /** - * Creates a new JdwpConnection instance - * - * @param transport the transport to use for communications - */ - public JdwpConnection (ITransport transport) - { - _transport = transport; - _commandQueue = new ArrayList (); - _shutdown = false; - _bytes = new ByteArrayOutputStream (); - _doStream = new DataOutputStream (_bytes); - } - - /** - * Initializes the connection, including connecting - * to socket or shared memory endpoint - * - * @throws TransportException if initialization fails - */ - public void initialize () - throws TransportException - { - // Initialize transport (connect socket, e.g.) - _transport.initialize (); - - // Do handshake - try - { - _inStream = new DataInputStream (_transport.getInputStream ()); - _outStream = new DataOutputStream (_transport.getOutputStream ()); - _doHandshake (); - } - catch (IOException ioe) - { - throw new TransportException (ioe); - } - } - - /* Does the JDWP handshake -- this should not need synchronization - because this is called by VM startup code, i.e., no packet - processing threads have started yet. */ - private void _doHandshake () - throws IOException - { - // According to the spec, the handshake is always initiated by - // the debugger, regardless of whether the JVM is in client mode or - // server mode. - - // Wait for handshake from debugger - byte[] hshake = new byte[_HANDSHAKE.length]; - _inStream.readFully (hshake, 0, _HANDSHAKE.length); - - if (Arrays.equals (hshake, _HANDSHAKE)) - { - // Send reply handshake - _outStream.write (_HANDSHAKE, 0, _HANDSHAKE.length); - return; - } - else - { - throw new IOException ("invalid JDWP handshake (\"" + hshake + "\")"); - } - } - - /** - * Main run method for the thread. This thread loops waiting for - * packets to be read via the connection. When a packet is complete - * and ready for processing, it places the packet in a queue that can - * be accessed via getPacket - */ - public void run () - { - while (!_shutdown) - { - try - { - _readOnePacket (); - } - catch (IOException ioe) - { - /* IOException can occur for two reasons: - 1. Lost connection with the other side - 2. Transport was shutdown - In either case, we make sure that all of the - back-end gets shutdown. */ - Jdwp.getInstance().shutdown (); - } - catch (Throwable t) - { - System.out.println ("JdwpConnection.run: caught an exception: " - + t); - // Just keep going - } - } - } - - // Reads a single packet from the connection, adding it to the packet - // queue when a complete packet is ready. - private void _readOnePacket () - throws IOException - { - byte[] data = null; - - // Read in the packet - int length = _inStream.readInt (); - if (length < 11) - { - throw new IOException ("JDWP packet length < 11 (" - + length + ")"); - } - - data = new byte[length]; - data[0] = (byte) (length >>> 24); - data[1] = (byte) (length >>> 16); - data[2] = (byte) (length >>> 8); - data[3] = (byte) length; - _inStream.readFully (data, 4, length - 4); - - JdwpPacket packet = JdwpPacket.fromBytes (data); - if (packet != null) - { - synchronized (_commandQueue) - { - _commandQueue.add (packet); - _commandQueue.notifyAll (); - } - } - } - - /** - * Returns a packet from the queue of ready packets - * - * @returns a JdwpPacket ready for processing - * null when shutting down - */ - public JdwpPacket getPacket () - { - synchronized (_commandQueue) - { - while (_commandQueue.isEmpty ()) - { - try - { - _commandQueue.wait (); - } - catch (InterruptedException ie) - { - /* PacketProcessor is interrupted - when shutting down */ - return null; - } - } - - return (JdwpPacket) _commandQueue.remove (0); - } - } - - /** - * Send a packet to the debugger - * - * @param pkt a JdwpPacket to send - * @throws IOException - */ - public void sendPacket (JdwpPacket pkt) - throws IOException - { - pkt.write (_outStream); - } - - /** - * Send an event notification to the debugger - * - * @param request the debugger request that wanted this event - * @param event the event - * @throws IOException - */ - public void sendEvent (EventRequest request, Event event) - throws IOException - { - JdwpPacket pkt; - - synchronized (_bytes) - { - _bytes.reset (); - pkt = event.toPacket (_doStream, request); - pkt.setData (_bytes.toByteArray ()); - } - - sendPacket (pkt); - } - - /** - * Shutdown the connection - */ - public void shutdown () - { - if (!_shutdown) - { - _transport.shutdown (); - _shutdown = true; - interrupt (); - } - } -} diff --git a/libjava/gnu/classpath/jdwp/transport/JdwpPacket.java b/libjava/gnu/classpath/jdwp/transport/JdwpPacket.java deleted file mode 100644 index 7fa93e2de1b..00000000000 --- a/libjava/gnu/classpath/jdwp/transport/JdwpPacket.java +++ /dev/null @@ -1,278 +0,0 @@ -/* JdwpPacket.java -- Base class for JDWP command and reply packets - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.transport; - -import java.io.DataOutputStream; -import java.io.IOException; - -/** - * All command and reply packets in JDWP share - * common header type information: - * - * length (4 bytes) : size of entire packet, including length - * id (4 bytes) : unique packet id - * flags (1 byte) : flag byte - * [command packet stuff | reply packet stuff] - * data (variable) : unique command-/reply-specific data - * - * This class deal with everything except the command- and reply-specific - * data, which get handled in {@link - * gnu.classpath.jdwp.transport.JdwpCommandPacket} and {@link - * gnu.classpath.jdwp.transprot.JdwpReplyPacket}. - * - * @author Keith Seitz - */ -public abstract class JdwpPacket -{ - // Last id of packet constructed - protected static int _last_id = 0; - - // JDWP reply packet flag - protected static final int JDWP_FLAG_REPLY = 0x80; - - /** - * Minimum packet size excluding sub-class data - * ( length (4) + id (4) + flags (1) ) - */ - protected static final int MINIMUM_SIZE = 9; - - /** - * Id of command/reply - */ - protected int _id; - - /** - * Packet flags - */ - protected byte _flags; - - /** - * Packet-specific data - */ - protected byte[] _data; - - /** - * Constructor - */ - public JdwpPacket () - { - // By default, DON'T assign an id. This way when a packet - // is constructed from fromBytes, _last_id won't increment (i.e., - // it won't leave holes in the outgoing packet ids). - } - - /** - * Constructs a JdwpPacket with the id - * from the given packet. - * - * @param pkt a packet whose id will be used in this new packet - */ - public JdwpPacket (JdwpPacket pkt) - { - _id = pkt.getId (); - } - - /** - * Returns the packet id - */ - public int getId () - { - return _id; - } - - /** - * Sets the packet id - */ - public void setId (int id) - { - _id = id; - } - - /** - * Returns the packet flags - */ - public byte getFlags () - { - return _flags; - } - - /** - * Sets the packet flags - */ - public void setFlags (byte flags) - { - _flags = flags; - } - - /** - * Gets the command/reply-specific data in this packet - */ - public byte[] getData () - { - return _data; - } - - /** - * Sets the command/reply-specific data in this packet - */ - public void setData (byte[] data) - { - _data = data; - } - - /** - * Returns the length of this entire packet - */ - public int getLength () - { - return MINIMUM_SIZE + (_data == null ? 0 : _data.length); - } - - /** - * Allow subclasses to initialize from data - * - * @param bytes packet data from the wire - * @param index index into bytes to start processing - * @return number of bytes in bytes processed - */ - protected abstract int myFromBytes (byte[] bytes, int index); - - /** - * Convert the given bytes into a JdwpPacket. Uses the - * abstract method myFromBytes to allow subclasses to - * process data. - * - * If the given data does not represent a valid JDWP packet, it returns - * null. - * - * @param bytes packet data from the wire - * @param index index into bytes to start processing - * @return number of bytes in bytes processed - */ - public static JdwpPacket fromBytes (byte[] bytes) - { - int i = 0; - int length = ((bytes[i++] & 0xff) << 24 | (bytes[i++] & 0xff) << 16 - | (bytes[i++] & 0xff) << 8 | (bytes[i++] & 0xff)); - int id = 0; - byte flags = 0; - - if (bytes.length == length) - { - id = ((bytes[i++] & 0xff) << 24 | (bytes[i++] & 0xff) << 16 - | (bytes[i++] & 0xff) << 8 | (bytes[i++] & 0xff)); - flags = bytes[i++]; - - Class clazz = null; - if (flags == 0) - clazz = JdwpCommandPacket.class; - else if ((flags & JDWP_FLAG_REPLY) != 0) - clazz = JdwpReplyPacket.class; - else - { - // Malformed packet. Discard it. - return null; - } - - JdwpPacket pkt = null; - try - { - pkt = (JdwpPacket) clazz.newInstance (); - } - catch (InstantiationException ie) - { - // Discard packet - return null; - } - catch (IllegalAccessException iae) - { - // Discard packet - return null; - } - - pkt.setId (id); - pkt.setFlags (flags); - - i += pkt.myFromBytes (bytes, i); - byte[] data = new byte[length - i]; - System.arraycopy (bytes, i, data, 0, data.length); - pkt.setData (data); - - return pkt; - } - - return null; - } - - /** - * Put subclass information onto the stream - * - * @param dos the output stream to which to write - */ - protected abstract void myWrite (DataOutputStream dos) - throws IOException; - - /** - * Writes the packet to the output stream - * - * @param dos the output stream to which to write the packet - */ - public void write (DataOutputStream dos) - throws IOException - { - // length - int length = getLength (); - dos.writeInt (length); - - // ID - dos.writeInt (getId ()); - - // flag - dos.writeByte (getFlags ()); - - // packet-specific stuff - myWrite (dos); - - // data (if any) - byte[] data = getData (); - if (data != null && data.length > 0) - dos.write (data, 0, data.length); - } -} diff --git a/libjava/gnu/classpath/jdwp/transport/JdwpReplyPacket.java b/libjava/gnu/classpath/jdwp/transport/JdwpReplyPacket.java deleted file mode 100644 index de32ecf995b..00000000000 --- a/libjava/gnu/classpath/jdwp/transport/JdwpReplyPacket.java +++ /dev/null @@ -1,137 +0,0 @@ -/* JdwpReplyPacket.java -- JDWP reply packet - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.transport; - -import java.io.DataOutputStream; -import java.io.IOException; - -/** - * A class represents a JDWP reply packet. - * This class adds an error code to the packet header information - * in {@link gnu.classpath.transport.JdwpPacket} and adds additional - * reply packet-specific processing. - * - * @author Keith Seitz - */ -public class JdwpReplyPacket extends JdwpPacket -{ - /** - * Error code - */ - protected short _errorCode; - - // Minimum packet size [excluding super class] ( errorCode (2) ) - private static final int MINIMUM_LENGTH = 2; - - /** - * Constructs a JdwpReplyPacket. - */ - public JdwpReplyPacket () - { - // Don't assign a packet id. This is called by JdwpPacket.fromBytes - // which assigns a packet id. (Not that a VM would do that...) - } - - /** - * Constructs a JdwpReplyPacket with the - * id from the given packet and error code - * - * @param pkt the packet whose id this packet will use - * @param errorCode the error code - */ - public JdwpReplyPacket (JdwpPacket pkt, short errorCode) - { - this(pkt); - _errorCode = errorCode; - } - - /** - * Constructs a JdwpReplyPacket with the - * id from the given packet and an empty error code - * - * @param pkt the packet whose id this packet will use - */ - public JdwpReplyPacket (JdwpPacket pkt) - { - super (pkt); - _flags = (byte) JDWP_FLAG_REPLY; - } - - /** - * Returns the length of this packet - */ - public int getLength () - { - return MINIMUM_LENGTH + super.getLength (); - } - - /** - * Returns the error code - */ - public short getErrorCode () - { - return _errorCode; - } - - /** - * Sets the error code - */ - public void setErrorCode (short ec) - { - _errorCode = ec; - } - - // Reads command packet data from the given buffer, starting - // at the given offset - protected int myFromBytes (byte[] bytes, int index) - { - int i = 0; - setErrorCode ((short) ((bytes[index + i++] & 0xff) << 8 - | (bytes[index + i++] & 0xff))); - return i; - } - - // Writes the command packet data into the given buffer - protected void myWrite (DataOutputStream dos) - throws IOException - { - dos.writeShort (getErrorCode ()); - } -} diff --git a/libjava/gnu/classpath/jdwp/transport/SocketTransport.java b/libjava/gnu/classpath/jdwp/transport/SocketTransport.java deleted file mode 100644 index 0ad7357e183..00000000000 --- a/libjava/gnu/classpath/jdwp/transport/SocketTransport.java +++ /dev/null @@ -1,171 +0,0 @@ -/* SocketTransport.java -- a socket transport - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.transport; - -import gnu.classpath.jdwp.transport.ITransport; -import gnu.classpath.jdwp.transport.TransportException; - -import java.io.InputStream; -import java.io.IOException; -import java.io.OutputStream; -import java.net.ServerSocket; -import java.net.Socket; -import java.util.HashMap; - -import javax.net.ServerSocketFactory; -import javax.net.SocketFactory; - -/** - * A socket-based transport. This transport uses - * configury string that looks like "name=dt_socket, - * address=localhost:1234,server=y". - * - * @author Keith Seitz - */ -class SocketTransport - implements ITransport -{ - /** - * Name of this transport - */ - public static final String NAME = "dt_socket"; - - // Configure properties - private static final String _PROPERTY_ADDRESS = "address"; - private static final String _PROPERTY_SERVER = "server"; - - // Port number - private int _port; - - // Host name - private String _host; - - // Are we acting as a server? - private boolean _server = false; - - // Socket - private Socket _socket; - - /** - * Setup the connection configuration from the given properties - * - * @param properties the properties of the JDWP session - * @throws TransportException for any configury errors - */ - public void configure (HashMap properties) - throws TransportException - { - // Get address [form: "hostname:port"] - String p = (String) properties.get (_PROPERTY_ADDRESS); - if (p != null) - { - String[] s = p.split (":"); - if (s.length == 2) - { - _host = s[0]; - _port = Integer.parseInt (s[1]); - } - } - - // Get server [form: "y" or "n"] - p = (String) properties.get (_PROPERTY_SERVER); - if (p != null) - { - if (p.toLowerCase().equals ("y")) - _server = true; - } - } - - /** - * Initialize this socket connection. This includes - * connecting to the host (or listening for it). - * - * @throws TransportException if a transport-related error occurs - */ - public void initialize () - throws TransportException - { - try - { - if (_server) - { - // Get a server socket - ServerSocketFactory ssf = ServerSocketFactory.getDefault (); - ServerSocket ss = ssf.createServerSocket (_port, 1); - _socket = ss.accept (); - } - else - { - // Get a client socket (the factory will connect it) - SocketFactory sf = SocketFactory.getDefault (); - _socket = sf.createSocket (_host, _port); - } - } - catch (IOException ioe) - { - // This will grab UnknownHostException, too. - throw new TransportException (ioe); - } - } - - /** - * Returns an InputStream for the transport - * - * @throws IOException if an I/O error occurs creating the stream - * or the socket is not connected - */ - public InputStream getInputStream () - throws IOException - { - return _socket.getInputStream (); - } - - /** - * Returns an OutputStream for the transport - * - * @throws IOException if an I/O error occurs creating the stream - * or the socket is not connected - */ - public OutputStream getOutputStream () - throws IOException - { - return _socket.getOutputStream (); - } -} diff --git a/libjava/gnu/classpath/jdwp/transport/TransportException.java b/libjava/gnu/classpath/jdwp/transport/TransportException.java deleted file mode 100644 index 057422a879e..00000000000 --- a/libjava/gnu/classpath/jdwp/transport/TransportException.java +++ /dev/null @@ -1,75 +0,0 @@ -/* TransportException.java -- Exception for transport configury errors - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.transport; - -/** - * A transport configury or initialization exception thrown by - * JDWP transports. This class is a generic exception class - * that the different transport layers use to report transport-specific - * exceptions that may occur (which could be very different from - * one transport to the next.). - * - * @author Keith Seitz - */ -public class TransportException - extends Exception -{ - /** - * Constructs a TransportException with the - * given message - * - * @param message a message describing the exception - */ - public TransportException (String message) - { - super (message); - } - - /** - * Constructs a TransportException with the - * given Throwable root cause - * - * @param t the cause of the exception - */ - public TransportException (Throwable t) - { - super (t); - } -} diff --git a/libjava/gnu/classpath/jdwp/transport/TransportFactory.java b/libjava/gnu/classpath/jdwp/transport/TransportFactory.java deleted file mode 100644 index 480fb362939..00000000000 --- a/libjava/gnu/classpath/jdwp/transport/TransportFactory.java +++ /dev/null @@ -1,115 +0,0 @@ -/* TransportFactory.java -- Factory for transports - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.transport; - -import java.util.HashMap; - -/** - * A factory class that constructs transports for use by - * the JDWP back-end. - * - * @author Keith Seitz - */ -public class TransportFactory -{ - // Keyword in configspec that specifies transport method - private static final String _TRANSPORT_PROPERTY = "transport"; - - // A single transport method mapping - private static class TransportMethod - { - String name; - Class clazz; - public TransportMethod (String name, Class clazz) - { - this.name = name; - this.clazz = clazz; - } - } - - // List of all supported transport methods - private static TransportMethod[] _transportMethods = new TransportMethod[] - { - new TransportMethod (SocketTransport.NAME, SocketTransport.class) - //new TransportMethod (ShmemTransport.NAME, ShmemTransport.class) - }; - - /** - * Get a transport configured as specified in the properties - * - * @param properties a HashMap specifying the JDWP - * configuration properties - * @returns the created and configured transport - * @throws TransportException for invalid configurations - */ - public static ITransport newInstance (HashMap properties) - throws TransportException - { - String name = null; - if (properties != null) - name = (String) properties.get (_TRANSPORT_PROPERTY); - if (name == null) - throw new TransportException ("no transport specified"); - - for (int i = 0; i < _transportMethods.length; ++i) - { - if (_transportMethods[i].name.equals (name)) - { - try - { - ITransport t; - t = (ITransport) _transportMethods[i].clazz.newInstance (); - t.configure (properties); - return t; - } - catch (TransportException te) - { - throw te; - } - catch (Exception e) - { - throw new TransportException (e); - } - } - } - - throw new TransportException ("transport \"" + name + "\" not found"); - } -} diff --git a/libjava/gnu/classpath/jdwp/util/JdwpString.java b/libjava/gnu/classpath/jdwp/util/JdwpString.java deleted file mode 100644 index 592249fccb2..00000000000 --- a/libjava/gnu/classpath/jdwp/util/JdwpString.java +++ /dev/null @@ -1,95 +0,0 @@ -/* JdwpString.java -- utility class to read and write jdwp strings - Copyright (C) 2005 Free Software Foundation - -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.jdwp.util; - -import gnu.classpath.jdwp.exception.JdwpInternalErrorException; - -import java.io.DataOutputStream; -import java.io.IOException; -import java.io.UnsupportedEncodingException; -import java.nio.ByteBuffer; - -/** - * A class to compute the JDWP representation of Strings. - * - * @author Aaron Luchko - */ -public class JdwpString -{ - - /** - * Write this String to the outStream as a string understood by jdwp. - * - * @param os write the String here - * @param string the String to write - * @throws IOException - */ - public static void writeString(DataOutputStream os, String string) - throws IOException - { - // Get the bytes of the string as a string in UTF-8 - byte[] strBytes = string.getBytes("UTF-8"); - os.writeInt(strBytes.length); - os.write(strBytes); - } - - /** - * Read a jdwp style string from the ByteBuffer. - * - * @param bb contains the string - * @return the String that was read - * @throws JdwpInternalErrorException bb didn't contain a value UTF-8 string - */ - public static String readString(ByteBuffer bb) - throws JdwpInternalErrorException - { - int length = bb.getInt(); - byte[] strBytes = new byte[length]; - bb.get(strBytes); - try - { - return new String(strBytes, "UTF-8"); - } - catch (UnsupportedEncodingException ex) - { - // Any string from the VM should be in UTF-8 so an encoding error - // shouldn't be possible - throw new JdwpInternalErrorException(ex); - } - } -} diff --git a/libjava/gnu/classpath/jdwp/util/Signature.java b/libjava/gnu/classpath/jdwp/util/Signature.java deleted file mode 100644 index 36445c31841..00000000000 --- a/libjava/gnu/classpath/jdwp/util/Signature.java +++ /dev/null @@ -1,149 +0,0 @@ -/* Signature.java -- utility class to compute class and method signatures - Copyright (C) 2005 Free Software Foundation - -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 -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.jdwp.util; - -import java.lang.reflect.Field; -import java.lang.reflect.Method; - -/** - * A class to compute class and method signatures. - * - * @author Tom Tromey (tromey@redhat.com) - * @author Keith Seitz (keiths@redhat.com) - */ -public class Signature -{ - /** - * Computes the class signature, i.e., java.lang.String.class - * returns "Ljava/lang/String;". - * - * @param theClass the class for which to compute the signature - * @return the class's type signature - */ - public static String computeClassSignature (Class theClass) - { - StringBuffer sb = new StringBuffer (); - _addToSignature (sb, theClass); - return sb.toString (); - } - - /** - * Computes the field signature which is just the class signature of the - * field's type, ie a Field of type java.lang.String this will return - * "Ljava/lang/String;". - * - * @param field the field for which to compute the signature - * @return the field's type signature - */ - public static String computeFieldSignature (Field field) - { - return computeClassSignature (field.getType()); - } - - /** - * Computes the method signature, i.e., java.lang.String.split (String, int) - * returns "(Ljava/lang/String;I)[Ljava/lang/String;" - * - * @param method the method for which to compute the signature - * @return the method's type signature - */ - public static String computeMethodSignature (Method method) - { - return _computeSignature (method.getReturnType (), - method.getParameterTypes ()); - } - - private static String _computeSignature (Class returnType, - Class[] paramTypes) - { - StringBuffer sb = new StringBuffer ("("); - if (paramTypes != null) - { - for (int i = 0; i < paramTypes.length; ++i) - _addToSignature (sb, paramTypes[i]); - } - sb.append (")"); - _addToSignature (sb, returnType); - return sb.toString(); - } - - private static void _addToSignature (StringBuffer sb, Class k) - { - // For some reason there's no easy way to get the signature of a - // class. - if (k.isPrimitive ()) - { - if (k == void.class) - sb.append('V'); - else if (k == boolean.class) - sb.append('Z'); - else if (k == byte.class) - sb.append('B'); - else if (k == char.class) - sb.append('C'); - else if (k == short.class) - sb.append('S'); - else if (k == int.class) - sb.append('I'); - else if (k == float.class) - sb.append('F'); - else if (k == double.class) - sb.append('D'); - else if (k == long.class) - sb.append('J'); - return; - } - - String name = k.getName (); - int len = name.length (); - sb.ensureCapacity (len); - if (! k.isArray ()) - sb.append('L'); - for (int i = 0; i < len; ++i) - { - char c = name.charAt (i); - if (c == '.') - c = '/'; - sb.append (c); - } - if (! k.isArray ()) - sb.append(';'); - } -} diff --git a/libjava/gnu/java/awt/BitMaskExtent.java b/libjava/gnu/java/awt/BitMaskExtent.java deleted file mode 100644 index 28134991099..00000000000 --- a/libjava/gnu/java/awt/BitMaskExtent.java +++ /dev/null @@ -1,79 +0,0 @@ -/* Copyright (C) 2000, 2002 Free Software Foundation - -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.java.awt; - -/** - * Simple transparent utility class that can be used to perform bit - * mask extent calculations. - */ -public final class BitMaskExtent -{ - /** The number of the least significant bit of the bit mask extent. */ - public byte leastSignificantBit; - - /** The number of bits in the bit mask extent. */ - public byte bitWidth; - - /** - * Set the bit mask. This will calculate and set the leastSignificantBit - * and bitWidth fields. - * - * @see #leastSignificantBit - * @see #bitWidth - */ - public void setMask(long mask) - { - leastSignificantBit = 0; - bitWidth = 0; - if (mask == 0) return; - long shiftMask = mask; - for (; (shiftMask&1) == 0; shiftMask >>>=1) leastSignificantBit++; - for (; (shiftMask&1) != 0; shiftMask >>>=1) bitWidth++; - - if (shiftMask != 0) - throw new IllegalArgumentException("mask must be continuous"); - } - - /** - * Calculate the bit mask based on the values of the - * leastSignificantBit and bitWidth fields. - */ - public long toMask() - { - return ((1<not implement the Porter-Duff - * XOR operator, but an exclusive or of overlapping subpixel regions. - * - *

A screen shot of BitwiseXORComposite in action - * - *

The above screen shot shows the result of applying six different - * BitwiseXORComposites. They were constructed with the colors colors - * white, blue, black, orange, green, and brown, respectively. Each - * composite was used to paint a fully white rectangle on top of the - * blue bar in the background. - * - *

The purpose of this composite is to support the {@link - * Graphics#setXORMode(Color)} method in composite-aware graphics - * implementations. Applications typically would use - * setXORMode for drawing “highlights” such - * as text selections or cursors by inverting colors temporarily and - * then inverting them back. - * - *

A concrete Graphics implementation may contain - * the following code: - * - *

 public void setXORMode(Color xorColor)
- * {
- *   setComposite(new gnu.java.awt.BitwiseXORComposite(xorColor));
- * }
- *
- * public void setPaintMode()
- * {
- *   setComposite(java.awt.AlphaComposite.SrcOver);
- * }
- * - * @author Graydon Hoare (graydon@redhat.com) - * @author Sascha Brawer (brawer@dandelis.ch) - */ -public class BitwiseXORComposite - implements Composite -{ - /** - * The color whose RGB value is xor-ed with the values of each - * pixel. - */ - protected Color xorColor; - - - /** - * Constructs a new composite for xor-ing the pixel value. - * - * @param xorColor the color whose pixel value will be bitwise - * xor-ed with the source and destination pixels. - */ - public BitwiseXORComposite(Color xorColor) - { - this.xorColor = xorColor; - } - - - /** - * Creates a context object for performing the compositing - * operation. Several contexts may co-exist for one composite; each - * context may simultaneously be called from concurrent threads. - * - * @param srcColorModel the color model of the source. - * @param dstColorModel the color model of the destination. - * @param hints hints for choosing between rendering alternatives. - */ - public CompositeContext createContext(ColorModel srcColorModel, - ColorModel dstColorModel, - RenderingHints hints) - { - if (IntContext.isSupported(srcColorModel, dstColorModel, hints)) - return new IntContext(srcColorModel, xorColor); - - return new GeneralContext(srcColorModel, dstColorModel, xorColor); - } - - - /** - * A fallback CompositeContext that performs bitwise XOR of pixel - * values with the pixel value of the specified xorColor. - * - *

Applying this CompositeContext on a 1024x1024 BufferedImage of - * TYPE_INT_RGB took 611 ms on a lightly loaded 2.4 GHz - * Intel Pentium 4 CPU running Sun J2SE 1.4.1_01 on GNU/Linux - * 2.4.20. The timing is the average of ten runs on the same - * BufferedImage. Since the measurements were taken with {@link - * System#currentTimeMillis()}, they are rather inaccurate. - * - * @author Graydon Hoare (graydon@redhat.com) - */ - private static class GeneralContext - implements CompositeContext - { - ColorModel srcColorModel; - ColorModel dstColorModel; - Color xorColor; - - public GeneralContext(ColorModel srcColorModel, - ColorModel dstColorModel, - Color xorColor) - { - this.srcColorModel = srcColorModel; - this.dstColorModel = dstColorModel; - this.xorColor = xorColor; - } - - - public void compose(Raster src, Raster dstIn, WritableRaster dstOut) - { - Rectangle srcRect = src.getBounds(); - Rectangle dstInRect = dstIn.getBounds(); - Rectangle dstOutRect = dstOut.getBounds(); - - int xp = xorColor.getRGB(); - int w = Math.min(Math.min(srcRect.width, dstOutRect.width), - dstInRect.width); - int h = Math.min(Math.min(srcRect.height, dstOutRect.height), - dstInRect.height); - - Object srcPix = null, dstPix = null, rpPix = null; - - // Re-using the rpPix object saved 1-2% of execution time in - // the 1024x1024 pixel benchmark. - - for (int y = 0; y < h; y++) - { - for (int x = 0; x < w; x++) - { - srcPix = src.getDataElements(x + srcRect.x, y + srcRect.y, srcPix); - dstPix = dstIn.getDataElements(x + dstInRect.x, y + dstInRect.y, - dstPix); - int sp = srcColorModel.getRGB(srcPix); - int dp = dstColorModel.getRGB(dstPix); - int rp = sp ^ xp ^ dp; - dstOut.setDataElements(x + dstOutRect.x, y + dstOutRect.y, - dstColorModel.getDataElements(rp, rpPix)); - } - } - } - - - /** - * Disposes any cached resources. The default implementation does - * nothing because no resources are cached. - */ - public void dispose() - { - } - } - - - /** - * An optimized CompositeContext that performs bitwise XOR of - * int pixel values with the pixel value of a specified - * xorColor. This CompositeContext working only for - * rasters whose transfer format is {@link DataBuffer#TYPE_INT}. - * - *

Applying this CompositeContext on a 1024x1024 BufferedImage of - * TYPE_INT_RGB took 69 ms on a lightly loaded 2.4 GHz - * Intel Pentium 4 CPU running Sun J2SE 1.4.1_01 on GNU/Linux - * 2.4.20. The timing is the average of ten runs on the same - * BufferedImage. Since the measurements were taken with {@link - * System#currentTimeMillis()}, they are rather inaccurate. - * - * @author Sascha Brawer (brawer@dandelis.ch) - */ - private static class IntContext - extends GeneralContext - { - public IntContext(ColorModel colorModel, Color xorColor) - { - super(colorModel, colorModel, xorColor); - } - - - public void compose(Raster src, Raster dstIn, - WritableRaster dstOut) - { - int aX, bX, dstX, aY, bY, dstY, width, height; - int xorPixel; - int[] srcLine, dstLine; - - aX = src.getMinX(); - aY = src.getMinY(); - bX = dstIn.getMinX(); - bY = dstIn.getMinY(); - dstX = dstOut.getMinX(); - dstY = dstOut.getMinY(); - width = Math.min(Math.min(src.getWidth(), dstIn.getWidth()), - dstOut.getWidth()); - height = Math.min(Math.min(src.getHeight(), dstIn.getHeight()), - dstOut.getHeight()); - if ((width < 1) || (height < 1)) - return; - - srcLine = new int[width]; - dstLine = new int[width]; - - /* We need an int[] array with at least one element here; - * srcLine is as good as any other. - */ - srcColorModel.getDataElements(this.xorColor.getRGB(), srcLine); - xorPixel = srcLine[0]; - - for (int y = 0; y < height; y++) - { - src.getDataElements(aX, y + aY, width, 1, srcLine); - dstIn.getDataElements(bX, y + bY, width, 1, dstLine); - - for (int x = 0; x < width; x++) - dstLine[x] ^= srcLine[x] ^ xorPixel; - - dstOut.setDataElements(dstX, y + dstY, width, 1, dstLine); - } - } - - - /** - * Determines whether an instance of this CompositeContext would - * be able to process the specified color models. - */ - public static boolean isSupported(ColorModel srcColorModel, - ColorModel dstColorModel, - RenderingHints hints) - { - // FIXME: It would be good if someone could review these checks. - // They probably need to be more restrictive. - - int transferType; - - transferType = srcColorModel.getTransferType(); - if (transferType != dstColorModel.getTransferType()) - return false; - - if (transferType != DataBuffer.TYPE_INT) - return false; - - return true; - } - } -} diff --git a/libjava/gnu/java/awt/Buffers.java b/libjava/gnu/java/awt/Buffers.java deleted file mode 100644 index c6ccf919145..00000000000 --- a/libjava/gnu/java/awt/Buffers.java +++ /dev/null @@ -1,243 +0,0 @@ -/* Buffers.java -- - Copyright (C) 2000, 2002, 2004 Free Software Foundation - -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.java.awt; - -import java.awt.image.DataBuffer; -import java.awt.image.DataBufferByte; -import java.awt.image.DataBufferDouble; -import java.awt.image.DataBufferFloat; -import java.awt.image.DataBufferInt; -import java.awt.image.DataBufferShort; -import java.awt.image.DataBufferUShort; - -/** - * Utility class for creating and accessing data buffers of arbitrary - * data types. - */ -public final class Buffers -{ - /** - * Create a data buffer of a particular type. - * - * @param dataType the desired data type of the buffer. - * @param data an array containing data, or null - * @param size the size of the data buffer bank - */ - public static DataBuffer createBuffer(int dataType, Object data, - int size) - { - if (data == null) return createBuffer(dataType, size, 1); - - return createBufferFromData(dataType, data, size); - } - - - /** - * Create a data buffer of a particular type. - * - * @param dataType the desired data type of the buffer. - * @param size the size of the data buffer bank - */ - public static DataBuffer createBuffer(int dataType, int size) { - return createBuffer(dataType, size, 1); - } - - /** - * Create a data buffer of a particular type. - * - * @param dataType the desired data type of the buffer. - * @param size the size of the data buffer bank - * @param numBanks the number of banks the buffer should have - */ - public static DataBuffer createBuffer(int dataType, int size, int numBanks) - { - switch (dataType) - { - case DataBuffer.TYPE_BYTE: - return new DataBufferByte(size, numBanks); - case DataBuffer.TYPE_SHORT: - return new DataBufferShort(size, numBanks); - case DataBuffer.TYPE_USHORT: - return new DataBufferUShort(size, numBanks); - case DataBuffer.TYPE_INT: - return new DataBufferInt(size, numBanks); - case DataBuffer.TYPE_FLOAT: - return new DataBufferFloat(size, numBanks); - case DataBuffer.TYPE_DOUBLE: - return new DataBufferDouble(size, numBanks); - default: - throw new UnsupportedOperationException(); - } - } - - /** - * Create a data buffer of a particular type. - * - * @param dataType the desired data type of the buffer - * @param data an array containing the data - * @param size the size of the data buffer bank - */ - public static DataBuffer createBufferFromData(int dataType, Object data, - int size) - { - switch (dataType) - { - case DataBuffer.TYPE_BYTE: - return new DataBufferByte((byte[]) data, size); - case DataBuffer.TYPE_SHORT: - return new DataBufferShort((short[]) data, size); - case DataBuffer.TYPE_USHORT: - return new DataBufferUShort((short[]) data, size); - case DataBuffer.TYPE_INT: - return new DataBufferInt((int[]) data, size); - case DataBuffer.TYPE_FLOAT: - return new DataBufferFloat((float[]) data, size); - case DataBuffer.TYPE_DOUBLE: - return new DataBufferDouble((double[]) data, size); - default: - throw new UnsupportedOperationException(); - } - } - - /** - * Return the data array of a data buffer, regardless of the data - * type. - * - * @return an array of primitive values. The actual array type - * depends on the data type of the buffer. - */ - public static Object getData(DataBuffer buffer) - { - if (buffer instanceof DataBufferByte) - return ((DataBufferByte) buffer).getData(); - - if (buffer instanceof DataBufferShort) - return ((DataBufferShort) buffer).getData(); - - if (buffer instanceof DataBufferUShort) - return ((DataBufferUShort) buffer).getData(); - - if (buffer instanceof DataBufferInt) - return ((DataBufferInt) buffer).getData(); - - if (buffer instanceof DataBufferFloat) - return ((DataBufferFloat) buffer).getData(); - - if (buffer instanceof DataBufferDouble) - return ((DataBufferDouble) buffer).getData(); - - throw new ClassCastException("Unknown data buffer type"); - } - - - /** - * Copy data from array contained in data buffer, much like - * System.arraycopy. Create a suitable destination array if the - * given destination array is null. - */ - public static Object getData(DataBuffer src, int srcOffset, - Object dest, int destOffset, - int length) - { - Object from; - if (src instanceof DataBufferByte) - { - from = ((DataBufferByte) src).getData(); - if (dest == null) dest = new byte[length+destOffset]; - } - else if (src instanceof DataBufferShort) - { - from = ((DataBufferShort) src).getData(); - if (dest == null) dest = new short[length+destOffset]; - } - else if (src instanceof DataBufferUShort) - { - from = ((DataBufferUShort) src).getData(); - if (dest == null) dest = new short[length+destOffset]; - } - else if (src instanceof DataBufferInt) - { - from = ((DataBufferInt) src).getData(); - if (dest == null) dest = new int[length+destOffset]; - } - else if (src instanceof DataBufferFloat) - { - from = ((DataBufferFloat) src).getData(); - if (dest == null) dest = new float[length+destOffset]; - } - else if (src instanceof DataBufferDouble) - { - from = ((DataBufferDouble) src).getData(); - if (dest == null) dest = new double[length+destOffset]; - } - else - { - throw new ClassCastException("Unknown data buffer type"); - } - - System.arraycopy(from, srcOffset, dest, destOffset, length); - return dest; - } - - /** - * @param bits the width of a data element measured in bits - * - * @return the smallest data type that can store data elements of - * the given number of bits, without any truncation. - */ - public static int smallestAppropriateTransferType(int bits) - { - if (bits <= 8) - { - return DataBuffer.TYPE_BYTE; - } - else if (bits <= 16) - { - return DataBuffer.TYPE_USHORT; - } - else if (bits <= 32) - { - return DataBuffer.TYPE_INT; - } - else - { - return DataBuffer.TYPE_UNDEFINED; - } - } -} diff --git a/libjava/gnu/java/awt/ClasspathToolkit.java b/libjava/gnu/java/awt/ClasspathToolkit.java deleted file mode 100644 index d42bfc08221..00000000000 --- a/libjava/gnu/java/awt/ClasspathToolkit.java +++ /dev/null @@ -1,369 +0,0 @@ -/* ClasspathToolkit.java -- Abstract superclass for Classpath toolkits. - Copyright (C) 2003, 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.java.awt; - -import gnu.java.awt.peer.ClasspathFontPeer; -import gnu.java.awt.peer.ClasspathTextLayoutPeer; - -import java.awt.AWTException; -import java.awt.Dimension; -import java.awt.DisplayMode; -import java.awt.EventQueue; -import java.awt.Font; -import java.awt.FontMetrics; -import java.awt.GraphicsDevice; -import java.awt.GraphicsEnvironment; -import java.awt.Image; -import java.awt.Toolkit; -import java.awt.font.FontRenderContext; -import java.awt.image.ColorModel; -import java.awt.image.ImageProducer; -import java.awt.peer.RobotPeer; -import java.io.File; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.text.AttributedString; -import java.util.HashMap; -import java.util.Map; - -import javax.imageio.spi.IIORegistry; - -/** - * An abstract superclass for Classpath toolkits. - * - *

There exist some parts of AWT and Java2D that are specific to - * the underlying platform, but for which the {@link Toolkit} class - * does not provide suitable abstractions. Examples include some - * methods of {@link Font} or {@link GraphicsEnvironment}. Those - * methods use ClasspathToolkit as a central place for obtaining - * platform-specific functionality. - * - *

In addition, ClasspathToolkit implements some abstract methods - * of {@link java.awt.Toolkit} that are not really platform-specific, - * such as the maintenance of a cache of loaded images. - * - *

Thread Safety: The methods of this class may safely be - * called without external synchronization. This also hold for any - * inherited {@link Toolkit} methods. Subclasses are responsible for - * the necessary synchronization. - * - * @author Sascha Brawer (brawer@dandelis.ch) - */ -public abstract class ClasspathToolkit - extends Toolkit -{ - /** - * A map from URLs to previously loaded images, used by {@link - * #getImage(java.net.URL)}. For images that were loaded via a path - * to an image file, the map contains a key with a file URL. - */ - private HashMap imageCache; - - - /** - * Returns a shared instance of the local, platform-specific - * graphics environment. - * - *

This method is specific to GNU Classpath. It gets called by - * the Classpath implementation of {@link - * GraphicsEnvironment.getLocalGraphcisEnvironment()}. - */ - public abstract GraphicsEnvironment getLocalGraphicsEnvironment(); - - - /** - * Determines the current size of the default, primary screen. - * - * @throws HeadlessException if the local graphics environment is - * headless, which means that no screen is attached and no user - * interaction is allowed. - */ - public Dimension getScreenSize() - { - DisplayMode mode; - - // getDefaultScreenDevice throws HeadlessException if the - // local graphics environment is headless. - mode = GraphicsEnvironment.getLocalGraphicsEnvironment() - .getDefaultScreenDevice().getDisplayMode(); - - return new Dimension(mode.getWidth(), mode.getHeight()); - } - - - /** - * Determines the current color model of the default, primary - * screen. - * - * @see GraphicsEnvironment#getDefaultScreenDevice() - * @see java.awt.GraphicsDevice#getDefaultConfiguration() - * @see java.awt.GraphicsConfiguration#getColorModel() - * - * @throws HeadlessException if the local graphics environment is - * headless, which means that no screen is attached and no user - * interaction is allowed. - */ - public ColorModel getColorModel() - { - // getDefaultScreenDevice throws HeadlessException if the - // local graphics environment is headless. - return GraphicsEnvironment.getLocalGraphicsEnvironment() - .getDefaultScreenDevice().getDefaultConfiguration() - .getColorModel(); - } - - /** - * Retrieves the metrics for rendering a font on the screen. - * - * @param font the font whose metrics are requested. - */ - public FontMetrics getFontMetrics(Font font) - { - return ((ClasspathFontPeer) font.getPeer ()).getFontMetrics (font); - } - - - /** - * Acquires an appropriate {@link ClasspathFontPeer}, for use in - * classpath's implementation of {@link java.awt.Font}. - * - * @param name The logical name of the font. This may be either a face - * name or a logical font name, or may even be null. A default - * implementation of name decoding is provided in - * {@link ClasspathFontPeer}, but may be overridden in other toolkits. - * - * @param attrs Any extra {@link java.awt.font.TextAttribute} attributes - * this font peer should have, such as size, weight, family name, or - * transformation. - */ - public abstract ClasspathFontPeer getClasspathFontPeer (String name, Map attrs); - - public abstract ClasspathTextLayoutPeer - getClasspathTextLayoutPeer (AttributedString str, FontRenderContext frc); - - - /** - * Creates a {@link Font}, in a platform-specific manner. - * - * The default implementation simply constructs a {@link Font}, but some - * toolkits may wish to override this, to return {@link Font} subclasses which - * implement {@link java.awt.font.OpenType} or - * {@link java.awt.font.MultipleMaster}. - */ - public Font getFont (String name, Map attrs) - { - return new Font (name, attrs); - } - - - /** - * Creates a font, reading the glyph definitions from a stream. - * - *

This method provides the platform-specific implementation for - * the static factory method {@link Font#createFont(int, - * java.io.InputStream)}. - * - * @param format the format of the font data, such as {@link - * Font#TRUETYPE_FONT}. An implementation may ignore this argument - * if it is able to automatically recognize the font format from the - * provided data. - * - * @param stream an input stream from where the font data is read - * in. The stream will be advanced to the position after the font - * data, but not closed. - * - * @throws IllegalArgumentException if format is - * not supported. - * - * @throws FontFormatException if stream does not - * contain data in the expected format, or if required tables are - * missing from a font. - * - * @throws IOException if a problem occurs while reading in the - * contents of stream. - */ - public abstract Font createFont(int format, InputStream stream); - - - /** - * Returns an image from the specified file, which must be in a - * recognized format. The set of recognized image formats may vary - * from toolkit to toolkit. - * - *

This method maintains a cache for images. If an image has been - * loaded from the same path before, the cached copy will be - * returned. The implementation may hold cached copies for an - * indefinite time, which can consume substantial resources with - * large images. Users are therefore advised to use {@link - * #createImage(java.lang.String)} instead. - * - *

The default implementation creates a file URL for the - * specified path and invokes {@link #getImage(URL)}. - * - * @param path A path to the image file. - * - * @return IllegalArgumentException if path does not - * designate a valid path. - */ - public Image getImage(String path) - { - try - { - return getImage(new File(path).toURL()); - } - catch (MalformedURLException muex) - { - throw (IllegalArgumentException) new IllegalArgumentException(path) - .initCause(muex); - } - } - - - /** - * Loads an image from the specified URL. The image data must be in - * a recognized format. The set of recognized image formats may vary - * from toolkit to toolkit. - * - *

This method maintains a cache for images. If an image has been - * loaded from the same URL before, the cached copy will be - * returned. The implementation may hold cached copies for an - * indefinite time, which can consume substantial resources with - * large images. Users are therefore advised to use {@link - * #createImage(java.net.URL)} instead. - * - * @param url the URL from where the image is read. - */ - public Image getImage(URL url) - { - Image result; - - synchronized (this) - { - // Many applications never call getImage. Therefore, we lazily - // create the image cache when it is actually needed. - if (imageCache == null) - imageCache = new HashMap(); - else - { - result = (Image) imageCache.get(url); - if (result != null) - return result; - } - - // The createImage(URL) method, which is specified by - // java.awt.Toolkit, is not implemented by this abstract class - // because it is platform-dependent. Once Classpath has support - // for the javax.imageio package, it might be worth considering - // that toolkits provide native stream readers. Then, the class - // ClasspathToolkit could provide a general implementation that - // delegates the image format parsing to javax.imageio. - result = createImage(url); - - // It is not clear whether it would be a good idea to use weak - // references here. The advantage would be reduced memory - // consumption, since loaded images would not be kept - // forever. But on VMs that frequently perform garbage - // collection (which includes VMs with a parallel or incremental - // collector), the image might frequently need to be re-loaded, - // possibly over a slow network connection. - imageCache.put(url, result); - - return result; - } - } - - - /** - * Returns an image from the specified file, which must be in a - * recognized format. The set of recognized image formats may vary - * from toolkit to toolkit. - * - *

A new image is created every time this method gets called, - * even if the same path has been passed before. - * - *

The default implementation creates a file URL for the - * specified path and invokes {@link #createImage(URL)}. - * - * @param path A path to the file to be read in. - */ - public Image createImage(String path) - { - try - { - // The abstract method createImage(URL) is defined by - // java.awt.Toolkit, but intentionally not implemented by - // ClasspathToolkit because it is platform specific. - return createImage(new File(path).toURL()); - } - catch (MalformedURLException muex) - { - throw (IllegalArgumentException) new IllegalArgumentException(path) - .initCause(muex); - } - } - - /** - * Creates an ImageProducer from the specified URL. The image is assumed - * to be in a recognised format. If the toolkit does not implement the - * image format or the image format is not recognised, null is returned. - * This default implementation is overriden by the Toolkit implementations. - * - * @param url URL to read image data from. - */ - public ImageProducer createImageProducer(URL url) - { - return null; - } - - public abstract RobotPeer createRobot (GraphicsDevice screen) - throws AWTException; - - /** - * Used to register ImageIO SPIs provided by the toolkit. - */ - - public void registerImageIOSpis(IIORegistry reg) - { - } - - public abstract boolean nativeQueueEmpty(); - public abstract void wakeNativeQueue(); - public abstract void iterateNativeQueue(EventQueue locked, boolean block); -} diff --git a/libjava/gnu/java/awt/ComponentDataBlitOp.java b/libjava/gnu/java/awt/ComponentDataBlitOp.java deleted file mode 100644 index 545427ea767..00000000000 --- a/libjava/gnu/java/awt/ComponentDataBlitOp.java +++ /dev/null @@ -1,156 +0,0 @@ -/* Copyright (C) 2000, 2002, 2004 Free Software Foundation - -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.java.awt; - -import java.awt.RenderingHints; -import java.awt.geom.Point2D; -import java.awt.geom.Rectangle2D; -import java.awt.image.ComponentSampleModel; -import java.awt.image.DataBuffer; -import java.awt.image.Raster; -import java.awt.image.RasterOp; -import java.awt.image.WritableRaster; - -/** - * This raster copy operation assumes that both source and destination - * sample models are tightly pixel packed and contain the same number - * of bands. - * - * @throws java.lang.ClassCastException if the sample models of the - * rasters are not of type ComponentSampleModel. - * - * @author Rolf W. Rasmussen (rolfwr@ii.uib.no) - */ -public class ComponentDataBlitOp implements RasterOp -{ - public static final ComponentDataBlitOp INSTANCE = new ComponentDataBlitOp(); - - public WritableRaster filter(Raster src, WritableRaster dest) - { - if (dest == null) - dest = createCompatibleDestRaster(src); - - DataBuffer srcDB = src.getDataBuffer(); - DataBuffer destDB = dest.getDataBuffer(); - - ComponentSampleModel srcSM = (ComponentSampleModel) src.getSampleModel(); - ComponentSampleModel destSM = (ComponentSampleModel) dest.getSampleModel(); - - - // Calculate offset to data in the underlying arrays: - - int srcScanlineStride = srcSM.getScanlineStride(); - int destScanlineStride = destSM.getScanlineStride(); - int srcX = src.getMinX() - src.getSampleModelTranslateX(); - int srcY = src.getMinY() - src.getSampleModelTranslateY(); - int destX = dest.getMinX() - dest.getSampleModelTranslateX(); - int destY = dest.getMinY() - dest.getSampleModelTranslateY(); - - int numBands = srcSM.getNumBands(); - - /* We can't use getOffset(x, y) from the sample model since we - don't want the band offset added in. */ - - int srcOffset = - numBands*srcX + srcScanlineStride*srcY + // from sample model - srcDB.getOffset(); // from data buffer - - int destOffset = - numBands*destX + destScanlineStride*destY + // from sample model - destDB.getOffset(); // from data buffer - - // Determine how much, and how many times to blit. - - int rowSize = src.getWidth()*numBands; - int h = src.getHeight(); - - if ((rowSize == srcScanlineStride) && - (rowSize == destScanlineStride)) - { - // collapse scan line blits to one large blit. - rowSize *= h; - h = 1; - } - - - // Do blitting - - Object srcArray = Buffers.getData(srcDB); - Object destArray = Buffers.getData(destDB); - - for (int yd = 0; ydCIE XYZ conversions in SrgbConverter are used. - * - * @author Sven de Marothy - */ -public class CieXyzConverter implements ColorSpaceConverter -{ - public float[] toCIEXYZ(float[] in) - { - float[] out = new float[3]; - System.arraycopy(in, 0, out, 0, 3); - return out; - } - - public float[] fromCIEXYZ(float[] in) - { - float[] out = new float[3]; - System.arraycopy(in, 0, out, 0, 3); - return out; - } - - public float[] toRGB(float[] in) - { - return SrgbConverter.XYZtoRGB(in); - } - - public float[] fromRGB(float[] in) - { - return SrgbConverter.RGBtoXYZ(in); - } -} diff --git a/libjava/gnu/java/awt/color/ClutProfileConverter.java b/libjava/gnu/java/awt/color/ClutProfileConverter.java deleted file mode 100644 index bff97cc9b87..00000000000 --- a/libjava/gnu/java/awt/color/ClutProfileConverter.java +++ /dev/null @@ -1,152 +0,0 @@ -/* ClutProfileConverter.java -- Conversion routines for CLUT-Based profiles - Copyright (C) 2004 Free Software Foundation - -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.java.awt.color; - -import java.awt.color.ICC_Profile; - - -/** - * ClutProfileConverter - conversions through a CLUT-based profile - * - * @author Sven de Marothy - */ -public class ClutProfileConverter implements ColorSpaceConverter -{ - private ColorLookUpTable toPCS; - private ColorLookUpTable fromPCS; - private int nChannels; - - public ClutProfileConverter(ICC_Profile profile) - { - nChannels = profile.getNumComponents(); - - // Sun does not specifiy which rendering intent should be used, - // neither does the ICC v2 spec really. - // Try intent 0 - try - { - toPCS = new ColorLookUpTable(profile, ICC_Profile.icSigAToB0Tag); - } - catch (Exception e) - { - toPCS = null; - } - - try - { - fromPCS = new ColorLookUpTable(profile, ICC_Profile.icSigBToA0Tag); - } - catch (Exception e) - { - fromPCS = null; - } - - if (toPCS != null || fromPCS != null) - return; - - // If no intent 0 clut is available, look for a intent 1 clut. - try - { - toPCS = new ColorLookUpTable(profile, ICC_Profile.icSigAToB1Tag); - } - catch (Exception e) - { - toPCS = null; - } - - try - { - fromPCS = new ColorLookUpTable(profile, ICC_Profile.icSigBToA1Tag); - } - catch (Exception e) - { - fromPCS = null; - } - - if (toPCS != null || fromPCS != null) - return; - - // Last shot.. intent 2 CLUT. - try - { - toPCS = new ColorLookUpTable(profile, ICC_Profile.icSigAToB2Tag); - } - catch (Exception e) - { - toPCS = null; - } - - try - { - fromPCS = new ColorLookUpTable(profile, ICC_Profile.icSigBToA2Tag); - } - catch (Exception e) - { - fromPCS = null; - } - - if (toPCS == null && fromPCS == null) - throw new IllegalArgumentException("No CLUTs in profile!"); - } - - public float[] toCIEXYZ(float[] in) - { - if (toPCS != null) - return toPCS.lookup(in); - else - return new float[3]; - } - - public float[] toRGB(float[] in) - { - return SrgbConverter.XYZtoRGB(toCIEXYZ(in)); - } - - public float[] fromCIEXYZ(float[] in) - { - if (fromPCS != null) - return fromPCS.lookup(in); - else - return new float[nChannels]; - } - - public float[] fromRGB(float[] in) - { - return fromCIEXYZ(SrgbConverter.RGBtoXYZ(in)); - } -} diff --git a/libjava/gnu/java/awt/color/ColorLookUpTable.java b/libjava/gnu/java/awt/color/ColorLookUpTable.java deleted file mode 100644 index 6b6418bc284..00000000000 --- a/libjava/gnu/java/awt/color/ColorLookUpTable.java +++ /dev/null @@ -1,429 +0,0 @@ -/* ColorLookUpTable.java -- ICC v2 CLUT - Copyright (C) 2004 Free Software Foundation - -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.java.awt.color; - -import java.awt.color.ColorSpace; -import java.awt.color.ICC_Profile; -import java.nio.ByteBuffer; - - -/** - * ColorLookUpTable handles color lookups through a color lookup table, - * as defined in the ICC specification. - * Both 'mft2' and 'mft1' (8 and 16-bit) type CLUTs are handled. - * - * This will have to be updated later for ICC 4.0.0 - * - * @author Sven de Marothy - */ -public class ColorLookUpTable -{ - /** - * CIE 1931 D50 white point (in Lab coordinates) - */ - private static float[] D50 = { 0.96422f, 1.00f, 0.82521f }; - - /** - * Number of input/output channels - */ - int nIn; - - /** - * Number of input/output channels - */ - int nOut; - int nInTableEntries; // Number of input table entries - int nOutTableEntries; // Number of output table entries - int gridpoints; // Number of gridpoints - int nClut; // This is nOut*(gridpoints**nIn) - double[][] inTable; // 1D input table ([channel][table]) - short[][] outTable; // 1D input table ([channel][table]) - double[] clut; // The color lookup table - float[][] inMatrix; // input matrix (XYZ only) - boolean useMatrix; // Whether to use the matrix or not. - int[] multiplier; - int[] offsets; // Hypercube offsets - boolean inputLab; // Set if the CLUT input CS is Lab - boolean outputLab; // Set if the CLUT output CS is Lab - - /** - * Constructor - * Requires a profile file to get the CLUT from and the tag of the - * CLUT to create. (icSigXToYZTag where X,Y = [A | B], Z = [0,1,2]) - */ - public ColorLookUpTable(ICC_Profile profile, int tag) - { - useMatrix = false; - - switch (tag) - { - case ICC_Profile.icSigAToB0Tag: - case ICC_Profile.icSigAToB1Tag: - case ICC_Profile.icSigAToB2Tag: - if (profile.getColorSpaceType() == ColorSpace.TYPE_XYZ) - useMatrix = true; - inputLab = false; - outputLab = (profile.getPCSType() == ColorSpace.TYPE_Lab); - break; - case ICC_Profile.icSigBToA0Tag: - case ICC_Profile.icSigBToA1Tag: - case ICC_Profile.icSigBToA2Tag: - if (profile.getPCSType() == ColorSpace.TYPE_XYZ) - useMatrix = true; - inputLab = (profile.getPCSType() == ColorSpace.TYPE_Lab); - outputLab = false; - break; - default: - throw new IllegalArgumentException("Not a clut-type tag."); - } - - byte[] data = profile.getData(tag); - if (data == null) - throw new IllegalArgumentException("Unsuitable profile, does not contain a CLUT."); - - // check 'mft' - if (data[0] != 0x6d || data[1] != 0x66 || data[2] != 0x74) - throw new IllegalArgumentException("Unsuitable profile, invalid CLUT data."); - - if (data[3] == 0x32) - readClut16(data); - else if (data[3] == 0x31) - readClut8(data); - else - throw new IllegalArgumentException("Unknown/invalid CLUT type."); - } - - /** - * Loads a 16-bit CLUT into our data structures - */ - private void readClut16(byte[] data) - { - ByteBuffer buf = ByteBuffer.wrap(data); - - nIn = data[8] & (0xFF); - nOut = data[9] & (0xFF); - nInTableEntries = buf.getShort(48); - nOutTableEntries = buf.getShort(50); - gridpoints = data[10] & (0xFF); - - inMatrix = new float[3][3]; - for (int i = 0; i < 3; i++) - for (int j = 0; j < 3; j++) - inMatrix[i][j] = ((float) (buf.getInt(12 + (i * 3 + j) * 4))) / 65536.0f; - - inTable = new double[nIn][nInTableEntries]; - for (int channel = 0; channel < nIn; channel++) - for (int i = 0; i < nInTableEntries; i++) - inTable[channel][i] = (double) ((int) buf.getShort(52 - + (channel * nInTableEntries - + i) * 2) - & (0xFFFF)) / 65536.0; - - nClut = nOut; - multiplier = new int[nIn]; - multiplier[nIn - 1] = nOut; - for (int i = 0; i < nIn; i++) - { - nClut *= gridpoints; - if (i > 0) - multiplier[nIn - i - 1] = multiplier[nIn - i] * gridpoints; - } - - int clutOffset = 52 + nIn * nInTableEntries * 2; - clut = new double[nClut]; - for (int i = 0; i < nClut; i++) - clut[i] = (double) ((int) buf.getShort(clutOffset + i * 2) & (0xFFFF)) / 65536.0; - - outTable = new short[nOut][nOutTableEntries]; - for (int channel = 0; channel < nOut; channel++) - for (int i = 0; i < nOutTableEntries; i++) - outTable[channel][i] = buf.getShort(clutOffset - + (nClut - + channel * nOutTableEntries + i) * 2); - - // calculate the hypercube corner offsets - offsets = new int[(1 << nIn)]; - offsets[0] = 0; - for (int j = 0; j < nIn; j++) - { - int factor = 1 << j; - for (int i = 0; i < factor; i++) - offsets[factor + i] = offsets[i] + multiplier[j]; - } - } - - /** - * Loads a 8-bit CLUT into our data structures. - */ - private void readClut8(byte[] data) - { - ByteBuffer buf = ByteBuffer.wrap(data); - - nIn = (data[8] & (0xFF)); - nOut = (data[9] & (0xFF)); - nInTableEntries = 256; // always 256 - nOutTableEntries = 256; // always 256 - gridpoints = (data[10] & (0xFF)); - - inMatrix = new float[3][3]; - for (int i = 0; i < 3; i++) - for (int j = 0; j < 3; j++) - inMatrix[i][j] = ((float) (buf.getInt(12 + (i * 3 + j) * 4))) / 65536.0f; - - inTable = new double[nIn][nInTableEntries]; - for (int channel = 0; channel < nIn; channel++) - for (int i = 0; i < nInTableEntries; i++) - inTable[channel][i] = (double) ((int) buf.get(48 - + (channel * nInTableEntries - + i)) & (0xFF)) / 255.0; - - nClut = nOut; - multiplier = new int[nIn]; - multiplier[nIn - 1] = nOut; - for (int i = 0; i < nIn; i++) - { - nClut *= gridpoints; - if (i > 0) - multiplier[nIn - i - 1] = multiplier[nIn - i] * gridpoints; - } - - int clutOffset = 48 + nIn * nInTableEntries; - clut = new double[nClut]; - for (int i = 0; i < nClut; i++) - clut[i] = (double) ((int) buf.get(clutOffset + i) & (0xFF)) / 255.0; - - outTable = new short[nOut][nOutTableEntries]; - for (int channel = 0; channel < nOut; channel++) - for (int i = 0; i < nOutTableEntries; i++) - outTable[channel][i] = (short) (buf.get(clutOffset + nClut - + channel * nOutTableEntries - + i) * 257); - - // calculate the hypercube corner offsets - offsets = new int[(1 << nIn)]; - offsets[0] = 0; - for (int j = 0; j < nIn; j++) - { - int factor = 1 << j; - for (int i = 0; i < factor; i++) - offsets[factor + i] = offsets[i] + multiplier[j]; - } - } - - /** - * Performs a lookup through the Color LookUp Table. - * If the CLUT tag type is AtoB the conversion will be from the device - * color space to the PCS, BtoA type goes in the opposite direction. - * - * For convenience, the PCS values for input or output will always be - * CIE XYZ (D50), if the actual PCS is Lab, the values will be converted. - * - * N-dimensional linear interpolation is used. - */ - float[] lookup(float[] in) - { - float[] in2 = new float[in.length]; - if (useMatrix) - { - for (int i = 0; i < 3; i++) - in2[i] = in[0] * inMatrix[i][0] + in[1] * inMatrix[i][1] - + in[2] * inMatrix[i][2]; - } - else if (inputLab) - in2 = XYZtoLab(in); - else - System.arraycopy(in, 0, in2, 0, in.length); - - // input table - for (int i = 0; i < nIn; i++) - { - int index = (int) Math.floor(in2[i] * (double) (nInTableEntries - 1)); // floor in - - // clip values. - if (index >= nInTableEntries - 1) - in2[i] = (float) inTable[i][nInTableEntries - 1]; - else if (index < 0) - in2[i] = (float) inTable[i][0]; - else - { - // linear interpolation - double alpha = in2[i] * ((double) nInTableEntries - 1.0) - index; - in2[i] = (float) (inTable[i][index] * (1 - alpha) - + inTable[i][index + 1] * alpha); - } - } - - // CLUT lookup - double[] output2 = new double[nOut]; - double[] weights = new double[(1 << nIn)]; - double[] clutalpha = new double[nIn]; // interpolation values - int offset = 0; // = gp - for (int i = 0; i < nIn; i++) - { - int index = (int) Math.floor(in2[i] * ((double) gridpoints - 1.0)); - double alpha = in2[i] * ((double) gridpoints - 1.0) - (double) index; - - // clip values. - if (index >= gridpoints - 1) - { - index = gridpoints - 1; - alpha = 1.0; - } - else if (index < 0) - index = 0; - clutalpha[i] = alpha; - offset += index * multiplier[i]; - } - - // Calculate interpolation weights - weights[0] = 1.0; - for (int j = 0; j < nIn; j++) - { - int factor = 1 << j; - for (int i = 0; i < factor; i++) - { - weights[factor + i] = weights[i] * clutalpha[j]; - weights[i] *= (1.0 - clutalpha[j]); - } - } - - for (int i = 0; i < nOut; i++) - output2[i] = weights[0] * clut[offset + i]; - - for (int i = 1; i < (1 << nIn); i++) - { - int offset2 = offset + offsets[i]; - for (int f = 0; f < nOut; f++) - output2[f] += weights[i] * clut[offset2 + f]; - } - - // output table - float[] output = new float[nOut]; - for (int i = 0; i < nOut; i++) - { - int index = (int) Math.floor(output2[i] * ((double) nOutTableEntries - - 1.0)); - - // clip values. - if (index >= nOutTableEntries - 1) - output[i] = outTable[i][nOutTableEntries - 1]; - else if (index < 0) - output[i] = outTable[i][0]; - else - { - // linear interpolation - double a = output2[i] * ((double) nOutTableEntries - 1.0) - - (double) index; - output[i] = (float) ((double) ((int) outTable[i][index] & (0xFFFF)) * (1 - - a) - + (double) ((int) outTable[i][index + 1] & (0xFFFF)) * a) / 65536f; - } - } - - if (outputLab) - return LabtoXYZ(output); - return output; - } - - /** - * Converts CIE Lab coordinates to (D50) XYZ ones. - */ - private float[] LabtoXYZ(float[] in) - { - // Convert from byte-packed format to a - // more convenient one (actual Lab values) - // (See ICC spec for details) - // factor is 100 * 65536 / 65280 - in[0] = (float) (100.392156862745 * in[0]); - in[1] = (in[1] * 256.0f) - 128.0f; - in[2] = (in[2] * 256.0f) - 128.0f; - - float[] out = new float[3]; - - out[1] = (in[0] + 16.0f) / 116.0f; - out[0] = in[1] / 500.0f + out[1]; - out[2] = out[1] - in[2] / 200.0f; - - for (int i = 0; i < 3; i++) - { - double exp = out[i] * out[i] * out[i]; - if (exp <= 0.008856) - out[i] = (out[i] - 16.0f / 116.0f) / 7.787f; - else - out[i] = (float) exp; - out[i] = D50[i] * out[i]; - } - return out; - } - - /** - * Converts CIE XYZ coordinates to Lab ones. - */ - private float[] XYZtoLab(float[] in) - { - float[] temp = new float[3]; - - for (int i = 0; i < 3; i++) - { - temp[i] = in[i] / D50[i]; - - if (temp[i] <= 0.008856f) - temp[i] = (7.7870689f * temp[i]) + (16f / 116.0f); - else - temp[i] = (float) Math.exp((1.0 / 3.0) * Math.log(temp[i])); - } - - float[] out = new float[3]; - out[0] = (116.0f * temp[1]) - 16f; - out[1] = 500.0f * (temp[0] - temp[1]); - out[2] = 200.0f * (temp[1] - temp[2]); - - // Normalize to packed format - out[0] = (float) (out[0] / 100.392156862745); - out[1] = (out[1] + 128f) / 256f; - out[2] = (out[2] + 128f) / 256f; - for (int i = 0; i < 3; i++) - { - if (out[i] < 0f) - out[i] = 0f; - if (out[i] > 1f) - out[i] = 1f; - } - return out; - } -} diff --git a/libjava/gnu/java/awt/color/ColorSpaceConverter.java b/libjava/gnu/java/awt/color/ColorSpaceConverter.java deleted file mode 100644 index 63ba08a4ff5..00000000000 --- a/libjava/gnu/java/awt/color/ColorSpaceConverter.java +++ /dev/null @@ -1,69 +0,0 @@ -/* ColorSpaceConverter.java -- an interface for colorspace conversion - Copyright (C) 2004 Free Software Foundation - -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.java.awt.color; - - -/** - * ColorSpaceConverter - used by java.awt.color.ICC_ColorSpace - * - * Color space conversion can occur in several ways: - * - * -Directly (for the built in spaces sRGB, linear RGB, gray, CIE XYZ and PYCC - * -ICC_ProfileRGB works through TRC curves and a matrix - * -ICC_ProfileGray works through a single TRC - * -Everything else is done through Color lookup tables. - * - * The different conversion methods are implemented through - * an interface. The built-in colorspaces are implemented directly - * with the relevant conversion equations. - * - * In this way, we hopefully will always use the fastest and most - * accurate method available. - * - * @author Sven de Marothy - */ -public interface ColorSpaceConverter -{ - float[] toCIEXYZ(float[] in); - - float[] fromCIEXYZ(float[] in); - - float[] toRGB(float[] in); - - float[] fromRGB(float[] in); -} diff --git a/libjava/gnu/java/awt/color/GrayProfileConverter.java b/libjava/gnu/java/awt/color/GrayProfileConverter.java deleted file mode 100644 index 3c725138a66..00000000000 --- a/libjava/gnu/java/awt/color/GrayProfileConverter.java +++ /dev/null @@ -1,137 +0,0 @@ -/* GrayProfileConverter.java -- Gray profile conversion class - Copyright (C) 2004 Free Software Foundation - -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.java.awt.color; - -import java.awt.color.ICC_Profile; -import java.awt.color.ICC_ProfileGray; -import java.awt.color.ProfileDataException; - -/** - * GrayProfileConverter - converts Grayscale profiles (ICC_ProfileGray) - * - * This type of profile contains a single tone reproduction curve (TRC). - * Conversion consists of simple TRC lookup. - * - * This implementation is very lazy and does everything applying the TRC and - * utilizing the built-in linear grayscale color space. - * - * @author Sven de Marothy - */ -public class GrayProfileConverter implements ColorSpaceConverter -{ - private GrayScaleConverter gc; - private ToneReproductionCurve trc; - private ColorLookUpTable toPCS; - private ColorLookUpTable fromPCS; - - /** - * Constructs the converter described by an ICC_ProfileGray object - */ - public GrayProfileConverter(ICC_ProfileGray profile) - { - try - { - trc = new ToneReproductionCurve(profile.getGamma()); - } - catch (ProfileDataException e) - { - trc = new ToneReproductionCurve(profile.getTRC()); - } - - // linear grayscale converter - gc = new GrayScaleConverter(); - - // If a CLUT is available, it should be used, and the TRCs ignored. - // Note: A valid profile may only have CLUTs in one direction, and - // TRC:s without useful info, making reverse-transforms impossible. - // In this case the TRC will be used for the reverse-transform with - // unpredictable results. This is in line with the Java specification, - try - { - toPCS = new ColorLookUpTable(profile, ICC_Profile.icSigAToB0Tag); - } - catch (Exception e) - { - toPCS = null; - } - - try - { - fromPCS = new ColorLookUpTable(profile, ICC_Profile.icSigBToA0Tag); - } - catch (Exception e) - { - fromPCS = null; - } - } - - public float[] toCIEXYZ(float[] in) - { - if (toPCS != null) - return toPCS.lookup(in); - float[] gray = new float[1]; - gray[0] = trc.lookup(in[0]); - return gc.toCIEXYZ(gray); - } - - public float[] toRGB(float[] in) - { - float[] gray = new float[1]; - gray[0] = trc.lookup(in[0]); - return gc.toRGB(gray); - } - - public float[] fromRGB(float[] in) - { - // get linear grayscale value - float[] gray = gc.fromRGB(in); - gray[0] = trc.reverseLookup(gray[0]); - return gray; - } - - public float[] fromCIEXYZ(float[] in) - { - if (fromPCS != null) - return fromPCS.lookup(in); - - float[] gray = gc.fromCIEXYZ(in); - gray[0] = trc.reverseLookup(gray[0]); - return gray; - } -} diff --git a/libjava/gnu/java/awt/color/GrayScaleConverter.java b/libjava/gnu/java/awt/color/GrayScaleConverter.java deleted file mode 100644 index 7a27ddba828..00000000000 --- a/libjava/gnu/java/awt/color/GrayScaleConverter.java +++ /dev/null @@ -1,110 +0,0 @@ -/* GrayScaleConverter.java -- Linear grayscale conversion class - Copyright (C) 2004 Free Software Foundation - -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.java.awt.color; - - -/** - * Linear Grayscale converter - * - * @author Sven de Marothy - */ -public class GrayScaleConverter implements ColorSpaceConverter -{ - // intensity factors (ITU Rec. BT.709) - double[] coeff = { 0.2125f, 0.7154f, 0.0721f }; - - /** - * CIE 1931 D50 white point (in Lab coordinates) - */ - private static float[] D50 = { 0.96422f, 1.00f, 0.82521f }; - - public float[] toCIEXYZ(float[] in) - { - float g = in[0]; - if (g < 0) - g = 1 + g; - float[] out = { g * D50[0], g * D50[1], g * D50[2] }; // White spot - return out; - } - - public float[] toRGB(float[] in) - { - float[] out = new float[3]; - if (in[0] <= 0.00304f) - out[0] = in[0] * 12.92f; - else - out[0] = 1.055f * ((float) Math.exp((1 / 2.4) * Math.log(in[0]))) - - 0.055f; - out[1] = out[2] = out[0]; - return out; - } - - public float[] fromCIEXYZ(float[] in) - { - float[] temp = new float[3]; - temp[0] = 3.1338f * in[0] - 1.6171f * in[1] - 0.4907f * in[2]; - temp[1] = -0.9785f * in[0] + 1.9160f * in[1] + 0.0334f * in[2]; - temp[2] = 0.0720f * in[0] - 0.2290f * in[1] + 1.4056f * in[2]; - float[] out = new float[1]; - for (int i = 0; i < 3; i++) - out[0] = (float) (temp[i] * coeff[i]); - return out; - } - - public float[] fromRGB(float[] in) - { - float[] out = new float[1]; - - // Convert non-linear RGB coordinates to linear ones, - // numbers from the w3 spec. - out[0] = 0; - for (int i = 0; i < 3; i++) - { - float n = in[i]; - if (n < 0) - n = 0f; - if (n > 1) - n = 1f; - if (n <= 0.03928f) - out[0] += (float) (coeff[i] * n / 12.92); - else - out[0] += (float) (coeff[i] * Math.exp(2.4 * Math.log((n + 0.055) / 1.055))); - } - return out; - } -} diff --git a/libjava/gnu/java/awt/color/LinearRGBConverter.java b/libjava/gnu/java/awt/color/LinearRGBConverter.java deleted file mode 100644 index 13a4e2c04f4..00000000000 --- a/libjava/gnu/java/awt/color/LinearRGBConverter.java +++ /dev/null @@ -1,152 +0,0 @@ -/* LinearRGBConverter.java -- conversion to a linear RGB color space - Copyright (C) 2004 Free Software Foundation - -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.java.awt.color; - - -/** - * LinearRGBConverter - conversion routines for a linear sRGB colorspace - * sRGB is a standard for RGB colorspaces, adopted by the w3c. - * - * The specification is available at: - * http://www.w3.org/Graphics/Color/sRGB.html - * - * @author Sven de Marothy - */ -public class LinearRGBConverter implements ColorSpaceConverter -{ - /** - * linear RGB --> sRGB - * Use the inverse gamma curve - */ - public float[] toRGB(float[] in) - { - float[] out = new float[3]; - for (int i = 0; i < 3; i++) - { - float n = in[i]; - if (n < 0) - n = 0f; - if (n > 1) - n = 1f; - if (n <= 0.00304f) - out[i] = in[0] * 12.92f; - else - out[i] = 1.055f * ((float) Math.exp((1 / 2.4) * Math.log(n))) - - 0.055f; - } - return out; - } - - /** - * sRGB --> linear RGB - * Use the gamma curve (gamma=2.4 in sRGB) - */ - public float[] fromRGB(float[] in) - { - float[] out = new float[3]; - - // Convert non-linear RGB coordinates to linear ones, - // numbers from the w3 spec. - for (int i = 0; i < 3; i++) - { - float n = in[i]; - if (n < 0) - n = 0f; - if (n > 1) - n = 1f; - if (n <= 0.03928f) - out[i] = (float) (n / 12.92); - else - out[i] = (float) (Math.exp(2.4 * Math.log((n + 0.055) / 1.055))); - } - return out; - } - - /** - * Linear RGB --> CIE XYZ (D50 relative) - * This is a simple matrix transform, the matrix (relative D65) - * is given in the sRGB spec. This has been combined with a - * linear Bradford transform for the D65-->D50 mapping, resulting - * in a single matrix which does the whole thing. - * - */ - public float[] fromCIEXYZ(float[] in) - { - /* - * Note: The numbers which were used to calculate this only had four - * digits of accuracy. So don't be fooled by the number of digits here. - * If someone has more accurate source, feel free to update this. - */ - float[] out = new float[3]; - out[0] = (float) (3.13383065124221 * in[0] - 1.61711949411313 * in[1] - - 0.49071914111101 * in[2]); - out[1] = (float) (-0.97847026691142 * in[0] + 1.91597856031996 * in[1] - + 0.03340430640699 * in[2]); - out[2] = (float) (0.07203679486279 * in[0] - 0.22903073553113 * in[1] - + 1.40557835776234 * in[2]); - if (out[0] < 0) - out[0] = 0f; - if (out[1] < 0) - out[1] = 0f; - if (out[2] < 0) - out[2] = 0f; - if (out[0] > 1.0f) - out[0] = 1.0f; - if (out[1] > 1.0f) - out[1] = 1.0f; - if (out[2] > 1.0f) - out[2] = 1.0f; - return out; - } - - /** - * Linear RGB --> CIE XYZ (D50 relative) - * Uses the inverse of the above matrix. - */ - public float[] toCIEXYZ(float[] in) - { - float[] out = new float[3]; - out[0] = (float) (0.43606375022190 * in[0] + 0.38514960146481 * in[1] - + 0.14308641888799 * in[2]); - out[1] = (float) (0.22245089403542 * in[0] + 0.71692584775182 * in[1] - + 0.06062451125578 * in[2]); - out[2] = (float) (0.01389851860679 * in[0] + 0.09707969011198 * in[1] - + 0.71399604572506 * in[2]); - return out; - } -} diff --git a/libjava/gnu/java/awt/color/ProfileHeader.java b/libjava/gnu/java/awt/color/ProfileHeader.java deleted file mode 100644 index 4fdef560a42..00000000000 --- a/libjava/gnu/java/awt/color/ProfileHeader.java +++ /dev/null @@ -1,398 +0,0 @@ -/* ProfileHeader.java -- Encapsules ICC Profile header data - Copyright (C) 2004 Free Software Foundation - -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.java.awt.color; - -import java.awt.color.ColorSpace; -import java.awt.color.ICC_Profile; -import java.nio.ByteBuffer; - - -/** - * Header, abstracts and validates the header data. - * - * @author Sven de Marothy - */ -public class ProfileHeader -{ - /** - * Magic identifier (ASCII 'acsp') - */ - private static final int icMagicNumber = 0x61637370; - - /** - * Mapping from ICC Profile signatures to ColorSpace types - */ - private static final int[] csTypeMap = - { - ICC_Profile.icSigXYZData, - ColorSpace.TYPE_XYZ, - ICC_Profile.icSigLabData, - ColorSpace.TYPE_Lab, - ICC_Profile.icSigLuvData, - ColorSpace.TYPE_Luv, - ICC_Profile.icSigYCbCrData, - ColorSpace.TYPE_YCbCr, - ICC_Profile.icSigYxyData, - ColorSpace.TYPE_Yxy, - ICC_Profile.icSigRgbData, - ColorSpace.TYPE_RGB, - ICC_Profile.icSigGrayData, - ColorSpace.TYPE_GRAY, - ICC_Profile.icSigHsvData, - ColorSpace.TYPE_HSV, - ICC_Profile.icSigHlsData, - ColorSpace.TYPE_HLS, - ICC_Profile.icSigCmykData, - ColorSpace.TYPE_CMYK, - ICC_Profile.icSigCmyData, - ColorSpace.TYPE_CMY, - ICC_Profile.icSigSpace2CLR, - ColorSpace.TYPE_2CLR, - ICC_Profile.icSigSpace3CLR, - ColorSpace.TYPE_3CLR, - ICC_Profile.icSigSpace4CLR, - ColorSpace.TYPE_4CLR, - ICC_Profile.icSigSpace5CLR, - ColorSpace.TYPE_5CLR, - ICC_Profile.icSigSpace6CLR, - ColorSpace.TYPE_6CLR, - ICC_Profile.icSigSpace7CLR, - ColorSpace.TYPE_7CLR, - ICC_Profile.icSigSpace8CLR, - ColorSpace.TYPE_8CLR, - ICC_Profile.icSigSpace9CLR, - ColorSpace.TYPE_9CLR, - ICC_Profile.icSigSpaceACLR, - ColorSpace.TYPE_ACLR, - ICC_Profile.icSigSpaceBCLR, - ColorSpace.TYPE_BCLR, - ICC_Profile.icSigSpaceCCLR, - ColorSpace.TYPE_CCLR, - ICC_Profile.icSigSpaceDCLR, - ColorSpace.TYPE_DCLR, - ICC_Profile.icSigSpaceECLR, - ColorSpace.TYPE_ECLR, - ICC_Profile.icSigSpaceFCLR, - ColorSpace.TYPE_FCLR - }; - - /** - * Size of an ICC header (128 bytes) - */ - public static final int HEADERSIZE = 128; - - /** - * Mapping of ICC class signatures to profile class constants - */ - private static final int[] classMap = - { - ICC_Profile.icSigInputClass, - ICC_Profile.CLASS_INPUT, - ICC_Profile.icSigDisplayClass, - ICC_Profile.CLASS_DISPLAY, - ICC_Profile.icSigOutputClass, - ICC_Profile.CLASS_OUTPUT, - ICC_Profile.icSigLinkClass, - ICC_Profile.CLASS_DEVICELINK, - ICC_Profile.icSigColorSpaceClass, - ICC_Profile.CLASS_COLORSPACECONVERSION, - ICC_Profile.icSigAbstractClass, - ICC_Profile.CLASS_ABSTRACT, - ICC_Profile.icSigNamedColorClass, - ICC_Profile.CLASS_NAMEDCOLOR - }; - private int size; - private int cmmId; - - // Major/Minor version, The ICC-1998 spec is major v2 - private int majorVersion; - - // Major/Minor version, The ICC-1998 spec is major v2 - private int minorVersion; - private int profileClass; // profile device class - private int colorSpace; // data color space type - private int profileColorSpace; // profile connection space (PCS) type - private byte[] timestamp; // original creation timestamp - private int platform; // platform signature - private int flags; // flags - private int magic; // magic number. - private int manufacturerSig; // manufacturer sig - private int modelSig; // model sig - private byte[] attributes; // Attributes - private int intent; // rendering intent - private byte[] illuminant; // illuminant info (Coordinates of D50 in the PCS) - private int creatorSig; // Creator sig (same type as manufacturer) - - /** - * Creates a 'default' header for use with our predefined profiles. - * Note the device and profile color spaces are not set. - */ - public ProfileHeader() - { - creatorSig = 0; - intent = 0; - modelSig = manufacturerSig = (int) 0x6E6f6E65; // 'none' - magic = icMagicNumber; - cmmId = 0; - platform = 0; // no preferred platform - timestamp = new byte[8]; - majorVersion = 2; - minorVersion = 0x10; - flags = 0; - - // D50 in XYZ format (encoded) - illuminant = new byte[] - { - (byte) 0x00, (byte) 0x00, (byte) 0xf6, (byte) 0xd6, - (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0x00, - (byte) 0x00, (byte) 0x00, (byte) 0xd3, (byte) 0x2d - }; - attributes = new byte[8]; - profileClass = ICC_Profile.CLASS_DISPLAY; - } - - /** - * Creates a header from profile data. Only the header portion (128 bytes) - * is read, so the array passed need not be the full profile. - */ - public ProfileHeader(byte[] data) - { - ByteBuffer buf = ByteBuffer.wrap(data); - - // Get size (the sign bit shouldn't matter. - // A valid profile can never be +2Gb) - size = buf.getInt(ICC_Profile.icHdrSize); - - // CMM ID - cmmId = buf.getInt(ICC_Profile.icHdrCmmId); - - // Version number - majorVersion = (int) (data[ICC_Profile.icHdrVersion]); - minorVersion = (int) (data[ICC_Profile.icHdrVersion + 1]); - - // Profile/Device class - int classSig = buf.getInt(ICC_Profile.icHdrDeviceClass); - profileClass = -1; - for (int i = 0; i < classMap.length; i += 2) - if (classMap[i] == classSig) - { - profileClass = classMap[i + 1]; - break; - } - - // get the data color space - int csSig = buf.getInt(ICC_Profile.icHdrColorSpace); - colorSpace = -1; - for (int i = 0; i < csTypeMap.length; i += 2) - if (csTypeMap[i] == csSig) - { - colorSpace = csTypeMap[i + 1]; - break; - } - - // get the profile color space (PCS), must be xyz or lab except - // for device-link-class profiles - int pcsSig = buf.getInt(ICC_Profile.icHdrPcs); - profileColorSpace = -1; - if (profileClass != ICC_Profile.CLASS_DEVICELINK) - { - if (pcsSig == ICC_Profile.icSigXYZData) - profileColorSpace = ColorSpace.TYPE_XYZ; - if (pcsSig == ICC_Profile.icSigLabData) - profileColorSpace = ColorSpace.TYPE_Lab; - } - else - { - for (int i = 0; i < csTypeMap.length; i += 2) - if (csTypeMap[i] == pcsSig) - { - profileColorSpace = csTypeMap[i + 1]; - break; - } - } - - // creation timestamp - timestamp = new byte[8]; - System.arraycopy(data, ICC_Profile.icHdrDate, timestamp, 0, 8); - - // magic number - magic = buf.getInt(ICC_Profile.icHdrMagic); - - // platform info - platform = buf.getInt(ICC_Profile.icHdrPlatform); - // get flags - flags = buf.getInt(ICC_Profile.icHdrFlags); - // get manufacturer sign - manufacturerSig = buf.getInt(ICC_Profile.icHdrManufacturer); - // get header model - modelSig = buf.getInt(ICC_Profile.icHdrModel); - // attributes - attributes = new byte[8]; - System.arraycopy(data, ICC_Profile.icHdrAttributes, attributes, 0, 8); - // rendering intent - intent = buf.getInt(ICC_Profile.icHdrRenderingIntent); - // illuminant info - illuminant = new byte[12]; - System.arraycopy(data, ICC_Profile.icHdrIlluminant, illuminant, 0, 12); - // Creator signature - creatorSig = buf.getInt(ICC_Profile.icHdrCreator); - // The rest of the header (Total size: 128 bytes) is unused.. - } - - /** - * Verify that the header is valid - * @param size equals the file size if it is to be verified, -1 otherwise - * @throws IllegalArgumentException if the header is found to be invalid. - */ - public void verifyHeader(int size) throws IllegalArgumentException - { - // verify size - if (size != -1 && this.size != size) - throw new IllegalArgumentException("Invalid profile length:" + size); - - // Check version number - if (majorVersion != 2) - throw new IllegalArgumentException("Wrong major version number:" - + majorVersion); - - // Profile/Device class - if (profileClass == -1) - throw new IllegalArgumentException("Invalid profile/device class"); - - // get the data color space - if (colorSpace == -1) - throw new IllegalArgumentException("Invalid colorspace"); - - // profile color space - if (profileColorSpace == -1) - throw new IllegalArgumentException("Invalid PCS."); - - // check magic number - if (magic != icMagicNumber) - throw new IllegalArgumentException("Invalid magic number!"); - } - - /** - * Creates a header, setting the header file size at the same time. - * @param size the profile file size. - */ - public byte[] getData(int size) - { - byte[] data = new byte[HEADERSIZE]; - ByteBuffer buf = ByteBuffer.wrap(data); - buf.putInt(ICC_Profile.icHdrSize, size); - buf.putInt(ICC_Profile.icHdrCmmId, cmmId); - buf.putShort(ICC_Profile.icHdrVersion, - (short) (majorVersion << 8 | minorVersion)); - for (int i = 1; i < classMap.length; i += 2) - if (profileClass == classMap[i]) - buf.putInt(ICC_Profile.icHdrDeviceClass, classMap[i - 1]); - for (int i = 1; i < csTypeMap.length; i += 2) - if (csTypeMap[i] == colorSpace) - buf.putInt(ICC_Profile.icHdrColorSpace, csTypeMap[i - 1]); - for (int i = 1; i < csTypeMap.length; i += 2) - if (csTypeMap[i] == profileColorSpace) - buf.putInt(ICC_Profile.icHdrPcs, csTypeMap[i - 1]); - - System.arraycopy(timestamp, 0, data, ICC_Profile.icHdrDate, - timestamp.length); - buf.putInt(ICC_Profile.icHdrMagic, icMagicNumber); - buf.putInt(ICC_Profile.icHdrPlatform, platform); - buf.putInt(ICC_Profile.icHdrFlags, flags); - buf.putInt(ICC_Profile.icHdrManufacturer, manufacturerSig); - buf.putInt(ICC_Profile.icHdrModel, modelSig); - System.arraycopy(attributes, 0, data, ICC_Profile.icHdrAttributes, - attributes.length); - buf.putInt(ICC_Profile.icHdrRenderingIntent, intent); - System.arraycopy(illuminant, 0, data, ICC_Profile.icHdrIlluminant, - illuminant.length); - buf.putInt(ICC_Profile.icHdrCreator, creatorSig); - return buf.array(); - } - - public int getSize() - { - return size; - } - - public void setSize(int s) - { - size = s; - } - - public int getMajorVersion() - { - return majorVersion; - } - - public int getMinorVersion() - { - return minorVersion; - } - - public int getProfileClass() - { - return profileClass; - } - - public void setProfileClass(int pc) - { - profileClass = pc; - } - - public int getColorSpace() - { - return colorSpace; - } - - public int getProfileColorSpace() - { - return profileColorSpace; - } - - public void setColorSpace(int cs) - { - colorSpace = cs; - } - - public void setProfileColorSpace(int pcs) - { - profileColorSpace = pcs; - } - -} diff --git a/libjava/gnu/java/awt/color/PyccConverter.java b/libjava/gnu/java/awt/color/PyccConverter.java deleted file mode 100644 index cd50d8776cd..00000000000 --- a/libjava/gnu/java/awt/color/PyccConverter.java +++ /dev/null @@ -1,72 +0,0 @@ -/* PyccConverter.java -- PhotoYCC conversion class - Copyright (C) 2004 Free Software Foundation - -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.java.awt.color; - - -/** - * PyccConverter - conversion routines for the PhotoYCC colorspace - * - * Also known as PhotoCD YCC, it is an expansion of the conventional - * YCC color space to also include colors with over 100% white. - * - * XXX FIXME: Not yet implemented, implementation pending. - * - * @author Sven de Marothy - */ -public class PyccConverter implements ColorSpaceConverter -{ - public float[] toRGB(float[] in) - { - return null; - } - - public float[] fromRGB(float[] in) - { - return null; - } - - public float[] toCIEXYZ(float[] in) - { - return null; - } - - public float[] fromCIEXYZ(float[] in) - { - return null; - } -} diff --git a/libjava/gnu/java/awt/color/RgbProfileConverter.java b/libjava/gnu/java/awt/color/RgbProfileConverter.java deleted file mode 100644 index 0cbd28f6cca..00000000000 --- a/libjava/gnu/java/awt/color/RgbProfileConverter.java +++ /dev/null @@ -1,244 +0,0 @@ -/* RgbProfileConverter.java -- RGB Profile conversion class - Copyright (C) 2004 Free Software Foundation - -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.java.awt.color; - -import java.awt.color.ICC_Profile; -import java.awt.color.ICC_ProfileRGB; -import java.awt.color.ProfileDataException; - -/** - * RgbProfileConverter - converts RGB profiles (ICC_ProfileRGB) - * - * This type of profile contains a matrix and three - * tone reproduction curves (TRCs). - * - * Device RGB --> CIE XYZ is done through first multiplying with - * a matrix, then each component is looked-up against it's TRC. - * - * The opposite transform is done using the inverse of the matrix, - * and TRC:s. - * - * @author Sven de Marothy - */ -public class RgbProfileConverter implements ColorSpaceConverter -{ - private float[][] matrix; - private float[][] inv_matrix; - private ToneReproductionCurve rTRC; - private ToneReproductionCurve gTRC; - private ToneReproductionCurve bTRC; - private ColorLookUpTable toPCS; - private ColorLookUpTable fromPCS; - - /** - * CIE 1931 D50 white point (in Lab coordinates) - */ - private static float[] D50 = { 0.96422f, 1.00f, 0.82521f }; - - /** - * Constructs an RgbProfileConverter from a given ICC_ProfileRGB - */ - public RgbProfileConverter(ICC_ProfileRGB profile) - { - toPCS = fromPCS = null; - matrix = profile.getMatrix(); - - // get TRCs - try - { - rTRC = new ToneReproductionCurve(profile.getGamma(ICC_ProfileRGB.REDCOMPONENT)); - } - catch (ProfileDataException e) - { - rTRC = new ToneReproductionCurve(profile.getTRC(ICC_ProfileRGB.REDCOMPONENT)); - } - try - { - gTRC = new ToneReproductionCurve(profile.getGamma(ICC_ProfileRGB.GREENCOMPONENT)); - } - catch (ProfileDataException e) - { - gTRC = new ToneReproductionCurve(profile.getTRC(ICC_ProfileRGB.GREENCOMPONENT)); - } - try - { - bTRC = new ToneReproductionCurve(profile.getGamma(ICC_ProfileRGB.BLUECOMPONENT)); - } - catch (ProfileDataException e) - { - bTRC = new ToneReproductionCurve(profile.getTRC(ICC_ProfileRGB.BLUECOMPONENT)); - } - - // If a CLUT is available, it should be used, and the TRCs ignored. - // Note: A valid profile may only have CLUTs in one direction, and - // TRC:s without useful info, making reverse-transforms impossible. - // In this case the TRC will be used for the reverse-transform with - // unpredictable results. This is in line with the Java specification, - try - { - toPCS = new ColorLookUpTable(profile, ICC_Profile.icSigAToB0Tag); - } - catch (Exception e) - { - toPCS = null; - } - - try - { - fromPCS = new ColorLookUpTable(profile, ICC_Profile.icSigBToA0Tag); - } - catch (Exception e) - { - fromPCS = null; - } - - // Calculate the inverse matrix if no reverse CLUT is available - if(fromPCS == null) - inv_matrix = invertMatrix(matrix); - else - { - // otherwise just set it to an identity matrix - inv_matrix = new float[3][3]; - inv_matrix[0][0] = inv_matrix[1][1] = inv_matrix[2][2] = 1.0f; - } - } - - public float[] toCIEXYZ(float[] in) - { - // CLUT takes precedence - if (toPCS != null) - return toPCS.lookup(in); - - float[] temp = new float[3]; - float[] out = new float[3]; - - // device space --> linear gamma - temp[0] = rTRC.lookup(in[0]); - temp[1] = gTRC.lookup(in[1]); - temp[2] = bTRC.lookup(in[2]); - - // matrix multiplication - out[0] = matrix[0][0] * temp[0] + matrix[0][1] * temp[1] - + matrix[0][2] * temp[2]; - out[1] = matrix[1][0] * temp[0] + matrix[1][1] * temp[1] - + matrix[1][2] * temp[2]; - out[2] = matrix[2][0] * temp[0] + matrix[2][1] * temp[1] - + matrix[2][2] * temp[2]; - - return out; - } - - public float[] toRGB(float[] in) - { - return SrgbConverter.XYZtoRGB(toCIEXYZ(in)); - } - - public float[] fromCIEXYZ(float[] in) - { - if (fromPCS != null) - return fromPCS.lookup(in); - - float[] temp = new float[3]; - float[] out = new float[3]; - - // matrix multiplication - temp[0] = inv_matrix[0][0] * in[0] + inv_matrix[0][1] * in[1] - + inv_matrix[0][2] * in[2]; - temp[1] = inv_matrix[1][0] * in[0] + inv_matrix[1][1] * in[1] - + inv_matrix[1][2] * in[2]; - temp[2] = inv_matrix[2][0] * in[0] + inv_matrix[2][1] * in[1] - + inv_matrix[2][2] * in[2]; - - // device space --> linear gamma - out[0] = rTRC.reverseLookup(temp[0]); - out[1] = gTRC.reverseLookup(temp[1]); - out[2] = bTRC.reverseLookup(temp[2]); - - // FIXME: Sun appears to clip the return values to [0,1] - // I don't believe that is a Good Thing, - // (some colorspaces may allow values outside that range.) - // So we return the actual values here. - return out; - } - - public float[] fromRGB(float[] in) - { - return fromCIEXYZ(SrgbConverter.RGBtoXYZ(in)); - } - - /** - * Inverts a 3x3 matrix, returns the inverse, - * throws an IllegalArgumentException if the matrix is not - * invertible (this shouldn't happen for a valid profile) - */ - private float[][] invertMatrix(float[][] matrix) - { - float[][] out = new float[3][3]; - double determinant = matrix[0][0] * (matrix[1][1] * matrix[2][2] - - matrix[2][1] * matrix[1][2]) - - matrix[0][1] * (matrix[1][0] * matrix[2][2] - - matrix[2][0] * matrix[1][2]) - + matrix[0][2] * (matrix[1][0] * matrix[2][1] - - matrix[2][0] * matrix[1][1]); - - if (determinant == 0.0) - throw new IllegalArgumentException("Can't invert conversion matrix."); - float invdet = (float) (1.0 / determinant); - - out[0][0] = invdet * (matrix[1][1] * matrix[2][2] - - matrix[1][2] * matrix[2][1]); - out[0][1] = invdet * (matrix[0][2] * matrix[2][1] - - matrix[0][1] * matrix[2][2]); - out[0][2] = invdet * (matrix[0][1] * matrix[1][2] - - matrix[0][2] * matrix[1][1]); - out[1][0] = invdet * (matrix[1][2] * matrix[2][0] - - matrix[1][0] * matrix[2][2]); - out[1][1] = invdet * (matrix[0][0] * matrix[2][2] - - matrix[0][2] * matrix[2][0]); - out[1][2] = invdet * (matrix[0][2] * matrix[1][0] - - matrix[0][0] * matrix[1][2]); - out[2][0] = invdet * (matrix[1][0] * matrix[2][1] - - matrix[1][1] * matrix[2][0]); - out[2][1] = invdet * (matrix[0][1] * matrix[2][0] - - matrix[0][0] * matrix[2][1]); - out[2][2] = invdet * (matrix[0][0] * matrix[1][1] - - matrix[0][1] * matrix[1][0]); - return out; - } -} diff --git a/libjava/gnu/java/awt/color/SrgbConverter.java b/libjava/gnu/java/awt/color/SrgbConverter.java deleted file mode 100644 index a30a0db906c..00000000000 --- a/libjava/gnu/java/awt/color/SrgbConverter.java +++ /dev/null @@ -1,152 +0,0 @@ -/* SrgbConverter.java -- sRGB conversion class - Copyright (C) 2004 Free Software Foundation - -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.java.awt.color; - - -/** - * SrgbConverter - conversion routines for the sRGB colorspace - * sRGB is a standard for RGB colorspaces, adopted by the w3c. - * - * The specification is available at: - * http://www.w3.org/Graphics/Color/sRGB.html - * - * @author Sven de Marothy - */ -/** - * - * Note the matrix numbers used here are NOT identical to those in the - * w3 spec, as those numbers are CIE XYZ relative a D65 white point. - * The CIE XYZ we use is relative a D50 white point, so therefore a - * linear Bradford transform matrix for D65->D50 mapping has been applied. - * (The ICC documents describe this transform) - * - * Linearized Bradford transform: - * 0.8951 0.2664 -0.1614 - * -0.7502 1.7135 0.0367 - * 0.0389 -0.0685 1.0296 - * - * Inverse: - * 0.9870 -0.1471 0.1600 - * 0.4323 0.5184 0.0493 - * -0.00853 0.0400 0.9685 - */ -public class SrgbConverter implements ColorSpaceConverter -{ - public float[] fromCIEXYZ(float[] in) - { - return XYZtoRGB(in); - } - - public float[] toCIEXYZ(float[] in) - { - return RGBtoXYZ(in); - } - - public float[] toRGB(float[] in) - { - float[] out = new float[3]; - System.arraycopy(in, 0, out, 0, 3); - return out; - } - - public float[] fromRGB(float[] in) - { - float[] out = new float[3]; - System.arraycopy(in, 0, out, 0, 3); - return out; - } - - /** - * CIE XYZ (D50 relative) --> sRGB - * - * Static as it's used by other ColorSpaceConverters to - * convert to sRGB if the color space is defined in XYZ. - */ - public static float[] XYZtoRGB(float[] in) - { - float[] temp = new float[3]; - temp[0] = 3.1338f * in[0] - 1.6171f * in[1] - 0.4907f * in[2]; - temp[1] = -0.9785f * in[0] + 1.9160f * in[1] + 0.0334f * in[2]; - temp[2] = 0.0720f * in[0] - 0.2290f * in[1] + 1.4056f * in[2]; - - float[] out = new float[3]; - for (int i = 0; i < 3; i++) - { - if (temp[i] < 0) - temp[i] = 0.0f; - if (temp[i] > 1) - temp[i] = 1.0f; - if (temp[i] <= 0.00304f) - out[i] = temp[i] * 12.92f; - else - out[i] = 1.055f * ((float) Math.exp((1 / 2.4) * Math.log(temp[i]))) - - 0.055f; - } - return out; - } - - /** - * sRGB --> CIE XYZ (D50 relative) - * - * Static as it's used by other ColorSpaceConverters to - * convert to XYZ if the color space is defined in RGB. - */ - public static float[] RGBtoXYZ(float[] in) - { - float[] temp = new float[3]; - float[] out = new float[3]; - for (int i = 0; i < 3; i++) - if (in[i] <= 0.03928f) - temp[i] = in[i] / 12.92f; - else - temp[i] = (float) Math.exp(2.4 * Math.log((in[i] + 0.055) / 1.055)); - - /* - * Note: The numbers which were used to calculate this only had four - * digits of accuracy. So don't be fooled by the number of digits here. - * If someone has more accurate source, feel free to update this. - */ - out[0] = (float) (0.436063750222 * temp[0] + 0.385149601465 * temp[1] - + 0.143086418888 * temp[2]); - out[1] = (float) (0.222450894035 * temp[0] + 0.71692584775 * temp[1] - + 0.060624511256 * temp[2]); - out[2] = (float) (0.0138985186 * temp[0] + 0.097079690112 * temp[1] - + 0.713996045725 * temp[2]); - return out; - } -} diff --git a/libjava/gnu/java/awt/color/TagEntry.java b/libjava/gnu/java/awt/color/TagEntry.java deleted file mode 100644 index a9786468384..00000000000 --- a/libjava/gnu/java/awt/color/TagEntry.java +++ /dev/null @@ -1,121 +0,0 @@ -/* TagEntry.java -- A utility class used for storing the tags in ICC_Profile - Copyright (C) 2004 Free Software Foundation - -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.java.awt.color; - - -/** - * TagEntry - stores a profile tag. - * These are conveniently stored in a hashtable with the tag signature - * as a key. A legal profile can only have one tag with a given sig, - * so we can conveniently ignore collisions. - * - * @author Sven de Marothy - */ -public class TagEntry -{ - // tag table entry size - public static final int entrySize = 12; - private int signature; - private int size; - private int offset; - private byte[] data; - - public TagEntry(int sig, int offset, int size, byte[] data) - { - this.signature = sig; - this.offset = offset; - this.size = size; - this.data = new byte[size]; - System.arraycopy(data, offset, this.data, 0, size); - } - - public TagEntry(int sig, byte[] data) - { - this.signature = sig; - this.size = data.length; - this.data = new byte[size]; - System.arraycopy(data, offset, this.data, 0, size); - } - - public byte[] getData() - { - byte[] d = new byte[size]; - System.arraycopy(this.data, 0, d, 0, size); - return d; - } - - public String hashKey() - { - return tagHashKey(signature); - } - - public String toString() - { - String s = ""; - s = s + (char) ((byte) ((signature >> 24) & 0xFF)); - s = s + (char) ((byte) ((signature >> 16) & 0xFF)); - s = s + (char) ((byte) ((signature >> 8) & 0xFF)); - s = s + (char) ((byte) (signature & 0xFF)); - return s; - } - - public int getSignature() - { - return signature; - } - - public int getSize() - { - return size; - } - - public int getOffset() - { - return offset; - } - - public void setOffset(int offset) - { - this.offset = offset; - } - - public static String tagHashKey(int sig) - { - return "" + sig; - } -} diff --git a/libjava/gnu/java/awt/color/ToneReproductionCurve.java b/libjava/gnu/java/awt/color/ToneReproductionCurve.java deleted file mode 100644 index a1bccbd4068..00000000000 --- a/libjava/gnu/java/awt/color/ToneReproductionCurve.java +++ /dev/null @@ -1,177 +0,0 @@ -/* ToneReproductionCurve.java -- Representation of an ICC 'curv' type TRC - Copyright (C) 2004 Free Software Foundation - -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.java.awt.color; - - -/** - * ToneReproductionCurve - TRCs are used to describe RGB - * and Grayscale profiles. The TRC is essentially the gamma - * function of the color space. - * - * For example, Apple RGB has a gamma of 1.8, most monitors are ~2.2, - * sRGB is 2.4 with a small linear part near 0. - * Linear spaces are of course 1.0. - * (The exact function is implemented in SrgbConverter) - * - * The ICC specification allows the TRC to be described as a single - * Gamma value, where the function is thus out = in**gamma. - * Alternatively, the gamma function may be represented by a lookup table - * of values, in which case linear interpolation is used. - * - * @author Sven de Marothy - */ -public class ToneReproductionCurve -{ - private float[] trc; - private float gamma; - private float[] reverseTrc; - - /** - * Constructs a TRC from a gamma values - */ - public ToneReproductionCurve(float gamma) - { - trc = null; - reverseTrc = null; - this.gamma = gamma; - } - - /** - * Constructs a TRC from a set of float values - */ - public ToneReproductionCurve(float[] trcValues) - { - trc = new float[trcValues.length]; - System.arraycopy(trcValues, 0, trc, 0, trcValues.length); - setupReverseTrc(); - } - - /** - * Constructs a TRC from a set of short values normalized to - * the 0-65535 range (as in the ICC profile file). - * (Note the values are treated as unsigned) - */ - public ToneReproductionCurve(short[] trcValues) - { - trc = new float[trcValues.length]; - for (int i = 0; i < trcValues.length; i++) - trc[i] = (float) ((int) trcValues[i] & (0xFFFF)) / 65535.0f; - setupReverseTrc(); - } - - /** - * Performs a TRC lookup - */ - public float lookup(float in) - { - float out; - - if (trc == null) - { - if (in == 0f) - return 0.0f; - return (float) Math.exp(gamma * Math.log(in)); - } - else - { - double alpha = in * (trc.length - 1); - int index = (int) Math.floor(alpha); - alpha = alpha - (double) index; - if (index >= trc.length - 1) - return trc[trc.length - 1]; - if (index <= 0) - return trc[0]; - out = (float) (trc[index] * (1.0 - alpha) + trc[index + 1] * alpha); - } - return out; - } - - /** - * Performs an reverse lookup - */ - public float reverseLookup(float in) - { - float out; - - if (trc == null) - { - if (in == 0f) - return 0.0f; - return (float) Math.exp((1.0 / gamma) * Math.log(in)); - } - else - { - double alpha = in * (reverseTrc.length - 1); - int index = (int) Math.floor(alpha); - alpha = alpha - (double) index; - if (index >= reverseTrc.length - 1) - return reverseTrc[reverseTrc.length - 1]; - if (index <= 0) - return reverseTrc[0]; - out = (float) (reverseTrc[index] * (1.0 - alpha) - + reverseTrc[index + 1] * alpha); - } - return out; - } - - /** - * Calculates a reverse-lookup table. - * We use a whopping 10,000 entries.. This is should be more than any - * real-life TRC table (typically around 256-1024) so we won't be losing - * any precision. - * - * This will of course generate completely invalid results if the curve - * is not monotonic and invertable. But what's the alternative? - */ - public void setupReverseTrc() - { - reverseTrc = new float[10000]; - int j = 0; - for (int i = 0; i < 10000; i++) - { - float n = ((float) i) / 10000f; - while (trc[j + 1] < n && j < trc.length - 2) - j++; - - if (j == trc.length - 2) - reverseTrc[i] = trc[trc.length - 1]; - else - reverseTrc[i] = (j + (n - trc[j]) / (trc[j + 1] - trc[j])) / ((float) trc.length); - } - } -} diff --git a/libjava/gnu/java/awt/doc-files/BitwiseXORComposite-1.png b/libjava/gnu/java/awt/doc-files/BitwiseXORComposite-1.png deleted file mode 100644 index 588c910dd758a17b998e475ef89fb3db5d0743f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8845 zcmcI~bx>Ts0M9# z0RVIWWjSeGpWg>L{-*J}PcZX59OY}l_d)?#Zy9Hl-bY%iz8~Uo9~rS5y%D&yZX|>7 zlca_r>-}teopOmg31JL(w?f~wKiuWN$O#OZ(ax*de_X!WbqzWk|9*8gNxMA%&~mij zTD{+CKEDyru~xRZX-R-CO%RGw^HuQ;vX(IT@39Dk6zI|vvPePpvb@a5DMjU5x2bYN z*H`Vg>?JREjB%#Ok`(Rrst%&_e}tEpwZ8hB-Rn@GI_vy)SJFdAm%i1hS=V|En90eA z^@&aiQU(~Jg6kmP)WzX=W{>;78~;yt=>LxzU9iV#o72>DpX3bR(iZK^uH!HF2BX>~ z#hLQa+6(^qQ)Mr8Bwp&{Q6@k32rP>!!O1?+VSN$^M+&-FdZfUb`k&SGrW;N&(qZ+^ z*e{di=Kh&_Hkt*wcKzT@KIhBEfeHWuw~YE2(aP&44k^3_=uX%igo{4;DdwwsCKF8p{HjCA%+DoyMGifPepS_s5nbpX|1Gdq zjUf+te3$(yc04-r8{oy^a=ii+WsNReK#Q| zwup&|g#lEn%VOQ_3eB^3#El+a7lHm2;^UK^TFCNWe?$BWn!Q)R*Isu1 z#8+9oUpCu%_G1>B3f{A~w;wOs`dq#9Vi#~wBd;1i9v~I*9QsMox3#C^v=n~qYTDt@ zO99E<2gOo=Ppz1k>A9aD9ts#UM;cH`#l13VE}ib2-t8z3fRUs}twj@(u{i&xW5GB% zaSBdUsl!9<987?^b_H)blzBOahOQ40Q;Bp_`*G0no1Y!c;gND%4B!|}_7X|okH(Py z9I|9}rVKM*n;d`l{0^*20B@ER?R=CQb{xwL+p>BnQT6pZf3pQ%xYDuTej^L| zwlY&XR~byd6BI?iM#ricrKev`;&srQ%w7ai`Q{D1zvmAy!75135qm*Bs-fcD{VA-~ z%-kZi;`{kPd^n!lCD-l6w5zcb7YP^O<7068pRiJz^uNJTW`D$}C__$oahwG*$j<)+ zL)?6F^Cygfz`n22EOS$8kWupk1rm~)#_)RnOrfw4G;xWIgII-F0dpxPbgBEde#*vY z!b;?Jqvo%f9N6TiiBkrxb)ioj%1>rMyNYzgO#s0l#hKA}#L{VRZU zzGq;tQ>>eYd>v;64%3^V34PpgX?jdO+SB;yX^`@z~EDHaVmg|Nhkgu!I?(QFHk zvyI$|Ym{4$h@2d-U@;#zce(&J5errTOuu^WsfgS@W`VQ0*#Z`aGkEF{LlJhcByS&M zhJ_ni`D%GZtDMAPK0Fq0c}4X}%UUp84<{`4usmiEprj_ZJBAyJf?TcF;<~5KFee+H zi--#OYuNA0b`f=}zq%F11J{WPvFtsa_&Y(r)FlEa?rerDLDp-v9sV1L5slGt#fMv; z(@=pyG77ZrITFRVuO`A?f8(ghUTaInCTcVM`(sACm}uaaBvt=W2MUN$q?JK)ky7(+ z4+_~e5bjgorsSC_q>5oNfIDK^Gn?KM;Pk-|Pbm!nEG!~7 z4Yc!@1~mv(%sVrDFnuF4$b}mf_4pbj)&Nl?K-W@G!6A8N$x3W&iBP~!^V7xed4VXp zfHMO}E`-wClCvnNMu^Dlv%8|kN!)d0W!-LqVsv<3zsACP1Ev?79Ur%%Nca7nVr>h# zaPayPf)=2MRe)+95H_RhH3iM7wG3a_53R7~>HBa@^Z~-O%VG8E^tH_prI5vnXb17r zFX{W#L9Im@aZs*=gE55=)Q0t>cv1 zqmsk2RtARlzSMiT0xUZgmG}12CEtx}TI~AQ*!OCvlmX-C6v{In?iOJt4Ggg$A!X&| z`6xOp!LjU~tF`*1$FhMO6i&F71oFdJD{13JrwqP7OWm{`lXI!cjW*Y%ro0xi$OJ8D6LZ?2_lOr!Pp<5bx>#?eeyD0V%&xhh>oPTzg7E=0T1s|8Guy52?HlDlQ#Cuu zL0soF)jt!#67Pikg;IGUHZCn39z;|t0*A{A5!_FY!b{tKYrqQ~ChspA>_aGpn@jI5 z>FM4WH{#RucLx&>q0qf}yx=Y)| z>TXB5f1e278pz4UN`{Zix@lo}uSZR(Xlb8!=PiChu~^_nP*nx;F3~tw*I|MtAJ)AM z-&eUKEb?MyhEMUz&O3ar3GgUCW0x}Yco{jLLTou`>VC{k5e94685)GX`TNVOMR%zT zJ^&m%S!$Xr2%}mvlQ{1fX)sv&2E6jOGVX`f$2)@C(^FZPcmZR%DIZ2DWYMnDJCSv_a{H($C$^W?ZINBOwB#F^-e2g$4aIGh$0keWQ3?PcA>o+&ucf zsT$V2q15b_c4_t?7|r9T>Ja?!5qh1qBs;gMoMZ5`LKGPwOZHuGsGq~xHnrd;j>q~> z+p$v^fF8ylUg&Ic>BcDJkF=IpSQh(T-DSm=8?mo`L>hS*>U8nZOB+jp=ut8wU4z^3OmH=X-CRg1qzp`xD6bgXA&bgaSr(VV-=4-AVXzIv z^jx?dts4Jen%I}?3xhuIJ#IJZu!g@*p{-b3BPKLb8Wa$5;~#I(hiBgZB4lFCGIKjz z?m1ZUYu1oP(a4@~9g8NN3g@dEjVg7!;P@00Ys8)-y0HLqreZ0Z+#-*o(XzBEq=n@V z0==eMu_O1*M2me5^W1tPsmY2CVmv+rk-JtyG^n#bs}fwx@sS@UuN1r6ydpPeY&ZLv zI`-i3UG{4MSoDHi93Yq0VNB=4xZ7{g6uWz?V`1pu)X(mk!%+ECQ zEY~E}aw}fzW5UB~yH`8xx{bG2-SJ)xZo*xu#DlZDB1Cw~8GFd1>rWJdxbAuGGIh*C zh64sV)ZJ6_C2Xgjiitio)+BjkFry{RXqBvPORp1?tr~RhNU$-TDXe2!t+GWkEo>d$qj9CQwORena=;I5XpyM)&33>o7 zE*iF_PO^3c(V}58h%D4x#__rClUzL$W9D``7>Gs;+zc%@(>FfjuS~W6*kZ{vE@yYP zgP@d;_Im0(l=P~_0HgWm4?qS4+n=X_&P-}qg@5*DDz~nlfP&D5AT7D$2Bm`|ve6`w zF#Pl5Mmd4E>2z?i4!?48%B8X5}wj>AHMQhvHK z;~DkNqnXONoNSC@S+y!m1TC8Jyp^gF65Gue*{@5qWFIU7C0R6*U0j(lR$j9RSkQ^0|_O|ehcSsYdTW_4GL&a=x)gt|eNFnnB!*_5@C z*kmB$zNA0gHYWn>1*y_2d0GgS)6;jFL6q?BU6Iu_CJ&j12tx@Y zsVk24JIREDGlzk$#7Y<1)YCK2cpf7=cEoe=wn_|HPa^|+ehtCdEMcD`il? z{?j*Aw<~T-OEq?l?2<7kMP1#3GOMNoO~3AC{pKzvC1oQxMS;KZ6Y8axhHuOjg|H1( zwjj{gH@xHMcq1kR**>?%={N1xy7()^w~3vm4QzX@yXU<<0k2LU!{f#fqUekW#r2KTM+*nAO# zscS-pju=agh@c%|^s+Th_l@rmP9t59z{5@JwAF4rrhLk6s_ zBFwRQe(^S4osn={jQJnc#?wmR2n&xEiXQwKAO{zHcXStAEt6H17o8rqi`n}`b3r=? zOV+z>NlU4lr{vnYH4D69HZ@fn4;@h(1o`?l`@Bd@Ocx_vX)APtjO4!Ba{gv6W!hr- zT*tPZIV1U{3mqfC&CSR7*NNrTVNET{$LG{c@v)yjFPxZLPm=`&iM*~&a#@u-TKzMt z`lQmgM8vo*qos8Hy80cOyhd}pInR%m=Dl$*uJve1XlHLU-!zt(^4!o4*uIy~%jQM7 zytLt?+}* za0Izz+mj~EOOUb&y1R8c>Dq#W4_C-pnONONebR}nAMS>4sqXK2-HXHBT~>ORTkMv} zWFtPWlyU&3C*BkGF>x+w?d{t;Tbw2!=N{elI=SJ5<)e)o&bffD(1hi>vDA zrc8Ur9vP)|C9djMMVukJmWzxrc%6}Jz&v2Ud82nkqe_+&dfv0w#dskjd*;1}Y7lxu4&q=d{9Nc6_*z@_6LYs zqJ`Gx#SS``)te^+Kwu0h{C~VW`jgpWSAw@EE$#bx2-wcYU*qDEgJ8zQm=kXKG1QxDv1D zH-^W<^LvGjJC5?)?3*^q0H2k@ki5!s`=7H#%GCvm$vpD&ReuLZwX|ZsT|YjMoA5oKy zPa0lY|BSpPgMT?xpTzXt$$BsfWpo_WJcSaLTocenPV%{lDJi|g1)If5OP?l}usn*y zodCXHo_z5N2#leL4Mo3y6qAu5OAO_3|3eUtN95_2tK(f8t z&l|p_6IXD4t2t5eQc!Us2udPzfWpyVpvG8Lg@q66i-?Sz5bvpj(gt2jp9%U>hFh6L zrp6{T{ItBW&F&;LBfg`$puv6?bF<}WWoLbSFpgi$+E;;CGFvVx0b+Fd8&m9z?9#FCl66C>y%+nt!Ml`PDUQ~#1lc;c6|~m z8lIRPca6-n+p?DKl*;Ser_=4_v6C;%uAYJ&B-UdTkgEM3;+WRk-y8p#E)mMc%8CVd zNo?%u+zp;C-W>vQi7?b@4svx;9_hyG)4j>Q55H5WgE&WuufTmq zSW#FC2j3Az4cO&80+Luq4qh?hNau-Crs3^`E&WnLTou%P+TvX-a}w zUyDHokSO-R`X9U8Z55T?v)vfDwJKjrOUzf628VpswV8;s*UdXo}s8gAC$F1R(R}u?13fyA$DuzTs$m}%C@l5 zgmQ>6SBbQgpP)hFvx~>R)52uUlO@=#Jy-tMm?H7Pw2%y z=w7Q+pvS7gdl@JyhJ*!({5{-vYT~17aaQ_H^e!e9OLSmAOp&9F{_3aU;LojBU$f*FVFZ!$Gl~y{m{MYink7<<#ghpiv>{> zDsl=#MY-Rd>OWJxg^vu7ZFI&LGCIuLP-&{6ix624uK1Nwi+{(kOg$8GvY@Tj1J>JS zU1puGcq0Ou=^ZCkO_R}KCRh*IS)zdwW-3m{k6OoZ)~tedACFxnq=K)!HWvfDw4-rN z+igNsTHGVrOxgnjs@k}w$c!*S?NKjY{~Avdav@N*WVpM|;AdmAp!|4q>(E>rj}KoT z&H6cNjTr-~L}@$xl9xSlK{P~3lY!pZi7=|0hr;(Yi(+1+vl^}eEhRw*z0{A)H?iBCVkD$&8Y=h=z}{9IHhQZ zQ|Zg6#zZtVN2h_}YkO;f(RWwm0m?e(7NbCRmMP6&Tw|MF4GsW{G>9L5{~XEwe0>tb zC;8DYDYi>&Rl^O{lJcLUf0Q@0#4$f@6$jqE3df)CBRaN={gu>GieEUfmk8ptTNZIK ztf=l1!t*EMpGhZq<@z^y;?vVn*Kiv7s%2dqOS-(gDa?9=I*bAngi6tu&B(V&SFA~U z$g9EVIOnR^VcG1X#r9rq#B;$mYhk$VJ#(fYgz9OX^?FdL(|D=;IvHNvIYB6G!es6m z{uOUFjyhdP{rl!TRm_Wf(-z6T0(ph1ubB7*guVa#^=ijA6lZ0~)_(G6R)picfXL>% zcEe6Cki-_6-HP!%K(74=vC?MjfID87;VaF^J%|L|x!+B6h%Fs`1hjcWrdhnSExs;9 zk7N$uAy#gLO(Q?qmI;N`H4ZM2D2Z_FC!L>wuRJsV0d>Y^XZ7-S0U?DGhu1EdxzRQ6 znHd-xqUgN$J#kGqtoU{l;u@jsoAr(U!t<;Bzp%mJw<0WiMAJh!`uZjBD4mxI^j|G3 z_Vl4uniSfOPZcy#k50am9`d)v%gQ#Latry8?zH~n0N{@(oqrTy7!B`^5+I48#n*ECIQF2^6X~Nfv;NVV0LwEZdQJ6=qrT zV7J-5>FW*5ei(d=n)u_+X!PAh-_Jx-V2J_aTV$>%YAPLHvO8Yt^U&WvlM9XNXZC&J zZo-4Z6(DO7(E=0U>)Qe&eviMpt)#7A0Z~yRZm5((u9&o`sY+_P@#+i}AOHsL+baTN zGssZu!6eM}5m$STekEVveVQK1Z>xfDQlb~KY5RX38(Y_2E()-SXM?Z{wM$pmB4Z(* z9cM*?*MSUTrAIHQQa4LGi#RBRxh1{S`tIex^cp$6iHwGwrrXWEm1dPwE^mX0>&!yT ziEsljx!;|9FP4snJNx)Mvh!jf@hcP*#2B?zxY)AS;m+ajmZAMOVHh?iRRX5xCCmw4Y7)d?s#_V$vQzyy(axOB+z*?9Hf zXo{f1u(t|H?A~lNb(6_AZHcN7QB98y_o`RfI&Mwm-ydRnl_n)8pQ;Wl#l#RR$ml@6 zLuFTTW~%9FZ`$xGScB#ZE^-E{cT2PoMGJ=SAd_F9LGNDsy@Yn?vGCTtKc@3S@EZ4& z>m?Dam%I}j-8D3JSQxXH8Of{efPO*4Jic7QC6e5RK>Akp(f&wV02X!_7}B#uAYxl^1_~l=YfQrMoY4 zHVjREd5(zc47iwvs)}Gkp@^(lmSSEei4W

Wf7gC($Id9!#{pPw3--mJ494pUO; zg~LRGXbh@1`>`*Y6C8ZgoF$6IA0G{y6FP|G+b+mx^ETnIu(4)0w8|oMgFG?P;Z*EE zJZPb>doT;VW5qVY$!X;?wOBK#f5uEkN@^sxaxqtC#1FTS+h(&+h-`fjFQ{PE<(1nc zH3$@W3iFjcf5TY`Gc-Y--Y@BFj@Jp}r8yonhL5Pms7FPL7-w5#EYw${Io^^Y4}>_q z>pjFc%r+9ma0u@6z8g;0_R8JwF3lI|gy|T;)=s}eYmGCUbW;R_UJvN;TvSpY9v+{` z!s1-LBRT@2!pNMQbmIXLZAeQVp|H8ZAznClz1 zd)K>5ic6`_lVtjgGZ%@gZ4uW#{rz+j)XK^~hdHTJXUj3Yy#*Y@S35S~j9#glVzI%P z07K$+YAFxVc%e?$%*a$yvuF1|hh?YOt&HKPD5iUH=J^Q!ri& z5fAJC%T6Oh<+X1UW{{V1dQ)T#wAhGvkcOTvIJT6-%laSj;Qs$)9Q=m|@ZYN$l>Tm5 zJupyg?398t6w|@RZorWuBb%r{s{Jy8y+Yn|vW)vBIhKwCdoN*%UL-fmV^5LW|1Uw| z|E4t%d@O5Lxy{mNpUx7eD;51;M2N7K)Ly3=nUtc6I^rd&(tq3tc|GoDv5%q|7ogt@Cl6}LN-Zr>DwWaI08_X*O04{vH0{~rR%=q diff --git a/libjava/gnu/java/awt/image/ImageDecoder.java b/libjava/gnu/java/awt/image/ImageDecoder.java deleted file mode 100644 index 141c8541794..00000000000 --- a/libjava/gnu/java/awt/image/ImageDecoder.java +++ /dev/null @@ -1,156 +0,0 @@ -/* ImageDecoder.java -- - Copyright (C) 1999, 2000, 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.java.awt.image; - -import java.awt.image.ImageConsumer; -import java.awt.image.ImageProducer; -import java.io.ByteArrayInputStream; -import java.io.FileInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.net.URL; -import java.util.Vector; - -public abstract class ImageDecoder implements ImageProducer -{ - Vector consumers = new Vector (); - String filename; - URL url; - byte[] data; - int offset; - int length; - InputStream input; - - static - { - // FIXME: there was some broken code here that looked like - // it wanted to rely on this property. I don't have any idea - // what it was intended to do. - // String endian = System.getProperties ().getProperty ("gnu.cpu.endian"); - } - - public ImageDecoder (String filename) - { - this.filename = filename; - } - - public ImageDecoder (URL url) - { - this.url = url; - } - - public ImageDecoder (InputStream is) - { - this.input = is; - } - - public ImageDecoder (byte[] imagedata, int imageoffset, int imagelength) - { - data = imagedata; - offset = imageoffset; - length = imagelength; - } - - public void addConsumer (ImageConsumer ic) - { - consumers.addElement (ic); - } - - public boolean isConsumer (ImageConsumer ic) - { - return consumers.contains (ic); - } - - public void removeConsumer (ImageConsumer ic) - { - consumers.removeElement (ic); - } - - public void startProduction (ImageConsumer ic) - { - if (!isConsumer(ic)) - addConsumer(ic); - - Vector list = (Vector) consumers.clone (); - try - { - // Create the input stream here rather than in the - // ImageDecoder constructors so that exceptions cause - // imageComplete to be called with an appropriate error - // status. - if (input == null) - { - try - { - if (url != null) - input = url.openStream(); - else - { - if (filename != null) - input = new FileInputStream (filename); - else - input = new ByteArrayInputStream (data, offset, length); - } - produce (list, input); - } - finally - { - input = null; - } - } - else - { - produce (list, input); - } - } - catch (Exception e) - { - for (int i = 0; i < list.size (); i++) - { - ImageConsumer ic2 = (ImageConsumer) list.elementAt (i); - ic2.imageComplete (ImageConsumer.IMAGEERROR); - } - } - } - - public void requestTopDownLeftRightResend (ImageConsumer ic) - { - } - - public abstract void produce (Vector v, InputStream is) throws IOException; -} diff --git a/libjava/gnu/java/awt/image/XBMDecoder.java b/libjava/gnu/java/awt/image/XBMDecoder.java deleted file mode 100644 index 0793d8ee749..00000000000 --- a/libjava/gnu/java/awt/image/XBMDecoder.java +++ /dev/null @@ -1,155 +0,0 @@ -/* XBMDecoder.java -- Decodes X-bitmaps - Copyright (C) 1999, 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.java.awt.image; - -import java.awt.image.ColorModel; -import java.awt.image.ImageConsumer; -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.Reader; -import java.net.URL; -import java.util.StringTokenizer; -import java.util.Vector; - -public class XBMDecoder extends ImageDecoder -{ - BufferedReader reader; - static final ColorModel cm = ColorModel.getRGBdefault (); - static final int black = 0xff000000; - static final int transparent = 0x00000000; - static final int masktable[] = { 0x01, 0x02, 0x04, 0x08, - 0x10, 0x20, 0x40, 0x80 }; - - public XBMDecoder (String filename) - { - super (filename); - } - - public XBMDecoder (URL url) - { - super (url); - } - - public void produce (Vector v, InputStream is) throws IOException - { - reader = new BufferedReader (new InputStreamReader (is)); - int width = -1, height = -1; - - for (int i = 0; i < 2; i++) - { - String line = reader.readLine (); - StringTokenizer st = new StringTokenizer (line); - - st.nextToken (); // #define - st.nextToken (); // name_[width|height] - if (i == 0) - width = Integer.parseInt (st.nextToken (), 10); - else - height = Integer.parseInt (st.nextToken (), 10); - } - - for (int i = 0; i < v.size (); i++) - { - ImageConsumer ic = (ImageConsumer) v.elementAt (i); - - ic.setDimensions (width, height); - ic.setColorModel (cm); - ic.setHints (ImageConsumer.COMPLETESCANLINES - | ImageConsumer.SINGLEFRAME - | ImageConsumer.SINGLEPASS - | ImageConsumer.TOPDOWNLEFTRIGHT); - } - - /* skip to the byte array */ - while (reader.read () != '{') { } - - /* loop through each scanline */ - for (int line = 0; line < height; line++) - { - int scanline[] = getScanline (reader, width); - - for (int i = 0; i < v.size (); i++) - { - ImageConsumer ic = (ImageConsumer) v.elementAt (i); - ic.setPixels (0, 0 + line, width, 1, cm, scanline, 0, width); - } - } - - /* tell each ImageConsumer that we're finished */ - for (int i = 0; i < v.size (); i++) - { - ImageConsumer ic = (ImageConsumer) v.elementAt (i); - ic.imageComplete (ImageConsumer.STATICIMAGEDONE); - } - } - - public static int[] getScanline (Reader in, int len) throws IOException - { - char byteStr[] = new char[2]; - int scanline[] = new int[len]; - int x = 0; - - while (x < len) - { - int ch = in.read (); - if (ch == '0') - { - in.read (); // 'x' - - byteStr[0] = (char) in.read (); - byteStr[1] = (char) in.read (); - - int byteVal = Integer.parseInt (new String (byteStr), 16); - - for (int i = 0; i < 8; i++, x++) - { - if (x == len) // condition occurs if bitmap is padded - return scanline; - - scanline[x] = ((byteVal & masktable[i]) != 0) ? - black : transparent; - } - } - } - - return scanline; - } -} diff --git a/libjava/gnu/java/awt/peer/ClasspathFontPeer.java b/libjava/gnu/java/awt/peer/ClasspathFontPeer.java deleted file mode 100644 index 78ab3a9de21..00000000000 --- a/libjava/gnu/java/awt/peer/ClasspathFontPeer.java +++ /dev/null @@ -1,846 +0,0 @@ -/* ClasspathFontPeer.java -- Font peer used by GNU Classpath. - Copyright (C) 2003, 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.java.awt.peer; - -import gnu.java.awt.ClasspathToolkit; - -import java.awt.Font; -import java.awt.FontMetrics; -import java.awt.Toolkit; -import java.awt.font.FontRenderContext; -import java.awt.font.GlyphVector; -import java.awt.font.LineMetrics; -import java.awt.font.TextAttribute; -import java.awt.font.TransformAttribute; -import java.awt.geom.AffineTransform; -import java.awt.geom.Rectangle2D; -import java.awt.peer.FontPeer; -import java.text.AttributedCharacterIterator; -import java.text.CharacterIterator; -import java.util.HashMap; -import java.util.Locale; -import java.util.Map; - -/** - * A peer for fonts that are used inside Classpath. The purpose of - * this interface is to abstract from platform-specific font handling - * in the Classpath implementation of java.awt.Font and related - * classes. - * - *

State kept by the peer: a peer is generated for each Font - * object in the default implementation. If you wish to share peers between - * fonts, you will need to subclass both ClasspathFontPeer and - * {@link ClasspathToolKit}.

- * - *

Thread Safety: Methods of this interface may be called - * from arbitrary threads at any time. Implementations of the - * ClasspathFontPeer interface are required to perform - * the necessary synchronization.

- * - * @see java.awt.Font#getPeer - * @see java.awt.Toolkit#getFontPeer - * - * @author Sascha Brawer (brawer@dandelis.ch) - * @author Graydon Hoare (graydon@redhat.com) - */ -public abstract class ClasspathFontPeer - implements FontPeer -{ - - /*************************************************************************/ - - /* - * Instance Variables - */ - - /** - * The 3 names of this font. all fonts have 3 names, some of which - * may be equal: - * - * logical -- name the font was constructed from - * family -- a designer or brand name (Helvetica) - * face -- specific instance of a design (Helvetica Regular) - * - * @see isLogicalFontName - */ - - protected String logicalName; - protected String familyName; - protected String faceName; - - /** - * The font style, which is a combination (by OR-ing) of the font style - * constants PLAIN, BOLD and ITALIC, in this class. - */ - protected int style; - - /** - * The font point size. A point is 1/72 of an inch. - */ - protected float size; - - /** - * The affine transformation the font is currently subject to. - */ - protected AffineTransform transform; - - protected static ClasspathToolkit tk() - { - return (ClasspathToolkit)(Toolkit.getDefaultToolkit ()); - } - - /* - * Confusingly, a Logical Font is a concept unrelated to - * a Font's Logical Name. - * - * A Logical Font is one of 6 built-in, abstract font types - * which must be supported by any java environment: SansSerif, - * Serif, Monospaced, Dialog, and DialogInput. - * - * A Font's Logical Name is the name the font was constructed - * from. This might be the name of a Logical Font, or it might - * be the name of a Font Face. - */ - - protected static boolean isLogicalFontName(String name) - { - String uname = name.toUpperCase (); - return (uname.equals ("SANSSERIF") || - uname.equals ("SERIF") || - uname.equals ("MONOSPACED") || - uname.equals ("DIALOG") || - uname.equals ("DIALOGINPUT")); - } - - protected static String logicalFontNameToFaceName (String name) - { - String uname = name.toUpperCase (); - if (uname.equals("SANSSERIF")) - return "Helvetica"; - else if (uname.equals ("SERIF")) - return "Times"; - else if (uname.equals ("MONOSPACED")) - return "Courier"; - else if (uname.equals ("DIALOG")) - return "Helvetica"; - else if (uname.equals ("DIALOGINPUT")) - return "Helvetica"; - else - return "Helvetica"; - } - - protected static String faceNameToFamilyName (String name) - { - return name; - } - - public static void copyStyleToAttrs (int style, Map attrs) - { - if ((style & Font.BOLD) == Font.BOLD) - attrs.put (TextAttribute.WEIGHT, TextAttribute.WEIGHT_BOLD); - else - attrs.put (TextAttribute.WEIGHT, TextAttribute.WEIGHT_REGULAR); - - if ((style & Font.ITALIC) == Font.ITALIC) - attrs.put (TextAttribute.POSTURE, TextAttribute.POSTURE_OBLIQUE); - else - attrs.put (TextAttribute.POSTURE, TextAttribute.POSTURE_REGULAR); - } - - protected static void copyFamilyToAttrs (String fam, Map attrs) - { - if (fam != null) - attrs.put (TextAttribute.FAMILY, fam); - } - - public static void copySizeToAttrs (float size, Map attrs) - { - attrs.put (TextAttribute.SIZE, new Float (size)); - } - - protected static void copyTransformToAttrs (AffineTransform trans, Map attrs) - { - if (trans != null) - attrs.put(TextAttribute.TRANSFORM, new TransformAttribute (trans)); - } - - - protected void setStandardAttributes (String name, String family, int style, - float size, AffineTransform trans) - { - this.logicalName = name; - - if (isLogicalFontName (name)) - this.faceName = logicalFontNameToFaceName (name); - else - this.faceName = name; - - if (family != null) - this.familyName = family; - else - this.familyName = faceNameToFamilyName (faceName); - - this.style = style; - this.size = size; - this.transform = trans; - } - - - protected void setStandardAttributes (String name, Map attribs) - { - String family = this.familyName; - AffineTransform trans = this.transform; - float size = this.size; - int style = this.style; - - if (attribs.containsKey (TextAttribute.FAMILY)) - family = (String) attribs.get (TextAttribute.FAMILY); - - if (name == null) - name = "SansSerif"; - - if (attribs.containsKey (TextAttribute.WEIGHT)) - { - Float weight = (Float) attribs.get (TextAttribute.WEIGHT); - if (weight.floatValue () >= TextAttribute.WEIGHT_BOLD.floatValue ()) - style += Font.BOLD; - } - - if (attribs.containsKey (TextAttribute.POSTURE)) - { - Float posture = (Float) attribs.get (TextAttribute.POSTURE); - if (posture.floatValue () >= TextAttribute.POSTURE_OBLIQUE.floatValue ()) - style += Font.ITALIC; - } - - if (attribs.containsKey (TextAttribute.SIZE)) - { - Float sz = (Float) attribs.get (TextAttribute.SIZE); - size = sz.floatValue (); - - // Pango doesn't accept 0 as a font size. - if (size < 1) - size = 1; - } - else - size = 12; - - if (attribs.containsKey (TextAttribute.TRANSFORM)) - { - TransformAttribute ta = (TransformAttribute) - attribs.get(TextAttribute.TRANSFORM); - trans = ta.getTransform (); - } - - setStandardAttributes (name, family, style, size, trans); - } - - protected void getStandardAttributes (Map attrs) - { - copyFamilyToAttrs (this.familyName, attrs); - copySizeToAttrs (this.size, attrs); - copyStyleToAttrs (this.style, attrs); - copyTransformToAttrs (this.transform, attrs); - } - - - /* Begin public API */ - - public ClasspathFontPeer (String name, Map attrs) - { - setStandardAttributes (name, attrs); - } - - public ClasspathFontPeer (String name, int style, int size) - { - setStandardAttributes (name, (String)null, style, - (float)size, (AffineTransform)null); - } - - /** - * Implementation of {@link Font#getName} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public String getName (Font font) - { - return logicalName; - } - - /** - * Implementation of {@link Font#getFamily()} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public String getFamily (Font font) - { - return familyName; - } - - /** - * Implementation of {@link Font#getFamily(Locale)} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public String getFamily (Font font, Locale lc) - { - return familyName; - } - - /** - * Implementation of {@link Font#getFontName()} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public String getFontName (Font font) - { - return faceName; - } - - /** - * Implementation of {@link Font#getFontName(Locale)} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public String getFontName (Font font, Locale lc) - { - return faceName; - } - - /** - * Implementation of {@link Font#getSize} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public float getSize (Font font) - { - return size; - } - - /** - * Implementation of {@link Font#isPlain} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public boolean isPlain (Font font) - { - return style == Font.PLAIN; - } - - /** - * Implementation of {@link Font#isBold} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public boolean isBold (Font font) - { - return ((style & Font.BOLD) == Font.BOLD); - } - - /** - * Implementation of {@link Font#isItalic} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public boolean isItalic (Font font) - { - return ((style & Font.ITALIC) == Font.ITALIC); - } - - /** - * Implementation of {@link Font#deriveFont(int, float)} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public Font deriveFont (Font font, int style, float size) - { - Map attrs = new HashMap (); - getStandardAttributes (attrs); - copyStyleToAttrs (style, attrs); - copySizeToAttrs (size, attrs); - return tk().getFont (logicalName, attrs); - } - - /** - * Implementation of {@link Font#deriveFont(float)} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public Font deriveFont (Font font, float size) - { - Map attrs = new HashMap (); - getStandardAttributes (attrs); - copySizeToAttrs (size, attrs); - return tk().getFont (logicalName, attrs); - } - - /** - * Implementation of {@link Font#deriveFont(int)} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public Font deriveFont (Font font, int style) - { - Map attrs = new HashMap (); - getStandardAttributes (attrs); - copyStyleToAttrs (style, attrs); - return tk().getFont (logicalName, attrs); - } - - /** - * Implementation of {@link Font#deriveFont(int, AffineTransform)} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public Font deriveFont (Font font, int style, AffineTransform t) - { - Map attrs = new HashMap (); - getStandardAttributes (attrs); - copyStyleToAttrs (style, attrs); - copyTransformToAttrs (t, attrs); - return tk().getFont (logicalName, attrs); - } - - /** - * Implementation of {@link Font#deriveFont(AffineTransform)} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public Font deriveFont (Font font, AffineTransform t) - { - Map attrs = new HashMap (); - getStandardAttributes (attrs); - copyTransformToAttrs (t, attrs); - return tk().getFont (logicalName, attrs); - } - - /** - * Implementation of {@link Font#deriveFont(Map)} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public Font deriveFont (Font font, Map attrs) - { - return tk().getFont (logicalName, attrs); - } - - /** - * Implementation of {@link Font#getAttributes()} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public Map getAttributes (Font font) - { - HashMap h = new HashMap (); - getStandardAttributes (h); - return h; - } - - /** - * Implementation of {@link Font#getAvailableAttributes()} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public AttributedCharacterIterator.Attribute[] getAvailableAttributes(Font font) - { - AttributedCharacterIterator.Attribute a[] = - new AttributedCharacterIterator.Attribute[5]; - a[0] = TextAttribute.FAMILY; - a[1] = TextAttribute.SIZE; - a[2] = TextAttribute.POSTURE; - a[3] = TextAttribute.WEIGHT; - a[4] = TextAttribute.TRANSFORM; - return a; - } - - /** - * Implementation of {@link Font#getTransform()} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public AffineTransform getTransform (Font font) - { - if (transform == null) - transform = new AffineTransform (); - return transform; - } - - /** - * Implementation of {@link Font#isTransformed()} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public boolean isTransformed (Font font) - { - return ! transform.isIdentity (); - } - - /** - * Implementation of {@link Font#getItalicAngle()} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public float getItalicAngle (Font font) - { - if ((style & Font.ITALIC) == Font.ITALIC) - return TextAttribute.POSTURE_OBLIQUE.floatValue (); - else - return TextAttribute.POSTURE_REGULAR.floatValue (); - } - - - /** - * Implementation of {@link Font#getStyle()} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public int getStyle (Font font) - { - return style; - } - - - - - /* Remaining methods are abstract */ - - /** - * Implementation of {@link Font#canDisplay(char)} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public abstract boolean canDisplay (Font font, char c); - - /** - * Implementation of {@link Font#canDisplay(String)}, - * {@link Font#canDisplay(char [], int, int)}, and - * {@link Font#canDisplay(CharacterIterator, int, int)}. - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public abstract int canDisplayUpTo (Font font, CharacterIterator i, int start, int limit); - - - /** - * Returns the name of this font face inside the family, for example - * “Light”. - * - *

This method is currently not used by {@link Font}. However, - * this name would be needed by any serious desktop publishing - * application. - * - * @param font the font whose sub-family name is requested. - * - * @param locale the locale for which to localize the name. If - * locale is null, the returned name is - * localized to the user’s default locale. - * - * @return the name of the face inside its family, or - * null if the font does not provide a sub-family name. - */ - - public abstract String getSubFamilyName (Font font, Locale locale); - - - /** - * Implementation of {@link Font#getPSName()} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public abstract String getPostScriptName (Font font); - - - /** - * Implementation of {@link Font#getNumGlyphs()} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public abstract int getNumGlyphs (Font font); - - - /** - * Implementation of {@link Font#getMissingGlyphCode()} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public abstract int getMissingGlyphCode (Font font); - - - /** - * Implementation of {@link Font#getBaselineFor(char)} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public abstract byte getBaselineFor (Font font, char c); - - - /** - * Returns a name for the specified glyph. This is useful for - * generating PostScript or PDF files that embed some glyphs of a - * font. If the implementation follows glyph naming conventions - * specified by Adobe, search engines can extract the original text - * from the generated PostScript and PDF files. - * - *

This method is currently not used by GNU Classpath. However, - * it would be very useful for someone wishing to write a good - * PostScript or PDF stream provider for the - * javax.print package. - * - *

Names are not unique: Under some rare circumstances, - * the same name can be returned for different glyphs. It is - * therefore recommended that printer drivers check whether the same - * name has already been returned for antoher glyph, and make the - * name unique by adding the string ".alt" followed by the glyph - * index.

- * - *

This situation would occur for an OpenType or TrueType font - * that has a post table of format 3 and provides a - * mapping from glyph IDs to Unicode sequences through a - * Zapf table. If the same sequence of Unicode - * codepoints leads to different glyphs (depending on contextual - * position, for example, or on typographic sophistication level), - * the same name would get synthesized for those glyphs. To avoid - * this, the font peer would have to go through the names of all - * glyphs, which would make this operation very inefficient with - * large fonts. - * - * @param font the font containing the glyph whose name is - * requested. - * - * @param glyphIndex the glyph whose name the caller wants to - * retrieve. - * - * @return the glyph name, or null if a font does not - * provide glyph names. - */ - - public abstract String getGlyphName (Font font, int glyphIndex); - - - /** - * Implementation of {@link - * Font#createGlyphVector(FontRenderContext, String)}, {@link - * Font#createGlyphVector(FontRenderContext, char[])}, and {@link - * Font#createGlyphVector(FontRenderContext, CharacterIterator)}. - * - * @param font the font object that the created GlyphVector will return - * when it gets asked for its font. This argument is needed because the - * public API of {@link GlyphVector} works with {@link java.awt.Font}, - * not with font peers. - */ - - public abstract GlyphVector createGlyphVector (Font font, - FontRenderContext frc, - CharacterIterator ci); - - - /** - * Implementation of {@link Font#createGlyphVector(FontRenderContext, - * int[])}. - * - * @param font the font object that the created GlyphVector will return - * when it gets asked for its font. This argument is needed because the - * public API of {@link GlyphVector} works with {@link java.awt.Font}, - * not with font peers. - */ - - public abstract GlyphVector createGlyphVector (Font font, - FontRenderContext ctx, - int[] glyphCodes); - - - /** - * Implementation of {@link Font#layoutGlyphVector(FontRenderContext, - * char[], int, int, int)}. - * - * @param font the font object that the created GlyphVector will return - * when it gets asked for its font. This argument is needed because the - * public API of {@link GlyphVector} works with {@link java.awt.Font}, - * not with font peers. - */ - - public abstract GlyphVector layoutGlyphVector (Font font, - FontRenderContext frc, - char[] chars, int start, - int limit, int flags); - - - /** - * Implementation of {@link Font#getFontMetrics()} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public abstract FontMetrics getFontMetrics (Font font); - - - /** - * Implementation of {@link Font#hasUniformLineMetrics()} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public abstract boolean hasUniformLineMetrics (Font font); - - - /** - * Implementation of {@link Font#getLineMetrics(CharacterIterator, int, - * int, FontRenderContext)} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public abstract LineMetrics getLineMetrics (Font font, - CharacterIterator ci, - int begin, int limit, - FontRenderContext rc); - - /** - * Implementation of {@link Font#getMaxCharBounds(FontRenderContext)} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public abstract Rectangle2D getMaxCharBounds (Font font, - FontRenderContext rc); - - /** - * Implementation of {@link Font#getStringBounds(CharacterIterator, int, - * int, FontRenderContext)} - * - * @param font the font this peer is being called from. This may be - * useful if you are sharing peers between Font objects. Otherwise it may - * be ignored. - */ - - public abstract Rectangle2D getStringBounds (Font font, - CharacterIterator ci, - int begin, int limit, - FontRenderContext frc); - -} diff --git a/libjava/gnu/java/awt/peer/ClasspathTextLayoutPeer.java b/libjava/gnu/java/awt/peer/ClasspathTextLayoutPeer.java deleted file mode 100644 index 70df2ef74ef..00000000000 --- a/libjava/gnu/java/awt/peer/ClasspathTextLayoutPeer.java +++ /dev/null @@ -1,104 +0,0 @@ -/* ClasspathTextLayoutPeer.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., 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.java.awt.peer; - -import java.awt.Graphics2D; -import java.awt.Shape; -import java.awt.font.TextHitInfo; -import java.awt.font.TextLayout; -import java.awt.geom.AffineTransform; -import java.awt.geom.Rectangle2D; - -/** - * @author Graydon Hoare - */ - -public interface ClasspathTextLayoutPeer -{ - TextHitInfo getStrongCaret (TextHitInfo hit1, - TextHitInfo hit2); - - void draw (Graphics2D g2, float x, float y); - - byte getBaseline (); - - boolean isLeftToRight (); - boolean isVertical (); - - float getAdvance (); - float getAscent (); - float getDescent (); - float getLeading (); - - int getCharacterCount (); - byte getCharacterLevel (int index); - - float[] getBaselineOffsets (); - Shape getBlackBoxBounds (int firstEndpoint, int secondEndpoint); - Rectangle2D getBounds (); - - float[] getCaretInfo (TextHitInfo hit, Rectangle2D bounds); - Shape getCaretShape (TextHitInfo hit, Rectangle2D bounds); - Shape[] getCaretShapes (int offset, Rectangle2D bounds, - TextLayout.CaretPolicy policy); - - Shape getLogicalHighlightShape (int firstEndpoint, int secondEndpoint, - Rectangle2D bounds); - int[] getLogicalRangesForVisualSelection (TextHitInfo firstEndpoint, - TextHitInfo secondEndpoint); - - TextHitInfo getNextLeftHit (int offset, TextLayout.CaretPolicy policy); - TextHitInfo getNextRightHit (int offset, TextLayout.CaretPolicy policy); - TextHitInfo hitTestChar (float x, float y, Rectangle2D bounds); - TextHitInfo getVisualOtherHit (TextHitInfo hit); - - float getVisibleAdvance (); - Shape getOutline (AffineTransform tx); - Shape getVisualHighlightShape (TextHitInfo firstEndpoint, - TextHitInfo secondEndpoint, - Rectangle2D bounds); - - TextLayout getJustifiedLayout (float justificationWidth); - void handleJustify (float justificationWidth); - - Object clone (); - int hashCode (); - boolean equals (ClasspathTextLayoutPeer tl); - String toString (); -} diff --git a/libjava/gnu/java/awt/peer/EmbeddedWindowPeer.java b/libjava/gnu/java/awt/peer/EmbeddedWindowPeer.java deleted file mode 100644 index 4c64a1d2d18..00000000000 --- a/libjava/gnu/java/awt/peer/EmbeddedWindowPeer.java +++ /dev/null @@ -1,47 +0,0 @@ -/* EmbeddedWindowPeer.java -- Interface for window peers that may be - embedded into other applications - 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., 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.java.awt.peer; - -import java.awt.peer.FramePeer; - -public interface EmbeddedWindowPeer extends FramePeer -{ - void embed (long handle); -} diff --git a/libjava/gnu/java/awt/peer/GLightweightPeer.java b/libjava/gnu/java/awt/peer/GLightweightPeer.java deleted file mode 100644 index 3bcaebcea62..00000000000 --- a/libjava/gnu/java/awt/peer/GLightweightPeer.java +++ /dev/null @@ -1,298 +0,0 @@ -/* GLightweightPeer.java -- - Copyright (C) 2003, 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.java.awt.peer; - -import java.awt.AWTEvent; -import java.awt.AWTException; -import java.awt.BufferCapabilities; -import java.awt.Color; -import java.awt.Component; -import java.awt.Cursor; -import java.awt.Dimension; -import java.awt.Font; -import java.awt.FontMetrics; -import java.awt.Graphics; -import java.awt.GraphicsConfiguration; -import java.awt.Image; -import java.awt.Insets; -import java.awt.Point; -import java.awt.Toolkit; -import java.awt.event.PaintEvent; -import java.awt.image.ColorModel; -import java.awt.image.ImageObserver; -import java.awt.image.ImageProducer; -import java.awt.image.VolatileImage; -import java.awt.peer.ContainerPeer; -import java.awt.peer.LightweightPeer; - -/* - * Another possible implementation strategy for lightweight peers is - * to make GLightweightPeer a placeholder class that implements - * LightweightPeer. Then the Component and Container classes could - * identify a peer as lightweight and handle it specially. The - * current approach is probably more clear but less efficient. - */ - -/** - * A stub class that implements the ComponentPeer and ContainerPeer - * interfaces using callbacks into the Component and Container - * classes. GLightweightPeer allows the Component and Container - * classes to treat lightweight and heavyweight peers in the same way. - * - * Lightweight components are painted directly onto their parent - * containers through an Image object provided by the toolkit. - */ -public class GLightweightPeer - implements LightweightPeer, ContainerPeer -{ - private Component comp; - - private Insets containerInsets; - - public GLightweightPeer(Component comp) - { - this.comp = comp; - } - - // -------- java.awt.peer.ContainerPeer implementation: - - public Insets insets() - { - return getInsets (); - } - - public Insets getInsets() - { - if (containerInsets == null) - containerInsets = new Insets (0,0,0,0); - return containerInsets; - } - - public void beginValidate() - { - } - - public void endValidate() - { - } - - public void beginLayout() - { - } - - public void endLayout() - { - } - - public boolean isPaintPending() - { - return false; - } - - // -------- java.awt.peer.ComponentPeer implementation: - - public int checkImage(Image img, int width, int height, ImageObserver o) - { - return comp.getToolkit().checkImage(img, width, height, o); - } - - public Image createImage(ImageProducer prod) - { - return comp.getToolkit().createImage(prod); - } - - /* This method is not called. */ - public Image createImage(int width, int height) - { - return null; - } - - public void disable() {} - - public void dispose() {} - - public void enable() {} - - public GraphicsConfiguration getGraphicsConfiguration() - { - return null; - } - - public FontMetrics getFontMetrics(Font f) - { - return comp.getToolkit().getFontMetrics(f); - } - - /* Returning null here tells the Component object that called us to - * use its parent's Graphics. */ - public Graphics getGraphics() - { - return null; - } - - public Point getLocationOnScreen() - { - Point parentLocation = comp.getParent().getLocationOnScreen(); - return new Point (parentLocation.x + comp.getX(), - parentLocation.y + comp.getY()); - } - - public Dimension getMinimumSize() - { - return new Dimension(comp.getWidth(), comp.getHeight()); - } - - /* A lightweight component's preferred size is equivalent to its - * Component width and height values. */ - public Dimension getPreferredSize() - { - return new Dimension(comp.getWidth(), comp.getHeight()); - } - - /* Returning null here tells the Component object that called us to - * use its parent's Toolkit. */ - public Toolkit getToolkit() - { - return null; - } - - public void handleEvent(AWTEvent e) {} - - public void hide() {} - - public boolean isFocusable() - { - return false; - } - - public boolean isFocusTraversable() - { - return false; - } - - public Dimension minimumSize() - { - return getMinimumSize(); - } - - public Dimension preferredSize() - { - return getPreferredSize(); - } - - public void paint(Graphics graphics) {} - - public boolean prepareImage(Image img, int width, int height, - ImageObserver o) - { - return comp.getToolkit().prepareImage(img, width, height, o); - } - - public void print(Graphics graphics) {} - - public void repaint(long tm, int x, int y, int width, int height) {} - - public void requestFocus() {} - - public boolean requestFocus(Component source, boolean bool1, boolean bool2, long x) - { - return false; - } - - public void reshape(int x, int y, int width, int height) {} - - public void setBackground(Color color) {} - - public void setBounds(int x, int y, int width, int height) {} - - public void setCursor(Cursor cursor) {} - - public void setEnabled(boolean enabled) {} - - public void setEventMask(long eventMask) {} - - public void setFont(Font font) {} - - public void setForeground(Color color) {} - - public void setVisible(boolean visible) {} - - public void show() {} - - public ColorModel getColorModel () - { - return comp.getColorModel (); - } - - public boolean isObscured() - { - return false; - } - - public boolean canDetermineObscurity() - { - return false; - } - - public void coalescePaintEvent(PaintEvent e) { } - - public void updateCursorImmediately() { } - - public VolatileImage createVolatileImage(int width, int height) - { - return null; - } - - public boolean handlesWheelScrolling() - { - return false; - } - - public void createBuffers(int x, BufferCapabilities capabilities) - throws AWTException { } - - public Image getBackBuffer() - { - return null; - } - - public void flip(BufferCapabilities.FlipContents contents) { } - - public void destroyBuffers() { } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GThreadMutex.java b/libjava/gnu/java/awt/peer/gtk/GThreadMutex.java deleted file mode 100644 index e73df9e5509..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GThreadMutex.java +++ /dev/null @@ -1,109 +0,0 @@ -/* GThreadMutex.java -- Implements a mutex object for glib's gthread - abstraction, for use with GNU Classpath's --portable-native-sync option. - This is used in gthread-jni.c - - 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.java.awt.peer.gtk; - -/** Implements a mutex object for glib's gthread - abstraction, for use with GNU Classpath's --portable-native-sync option. - This is used in gthread-jni.c. - - We use this object to implement the POSIX semantics for Mutexes. They are - needed are needed for the function vector that is passed to glib's - g_thread subpackage's initialization function. - - The GThreadMutex object itself serves as the Real Lock; if code has - entered the monitor for this GThreadMutex object (in Java language, if - it's synchronized on this object) then it holds the lock that this object - represents. - - @author Steven Augart - May, 2004 - - -*/ - -class GThreadMutex -{ - /** Might "lock" be locked? Is anyone waiting - to get that lock? How long is the queue? - - If zero, nobody holds a lock on this GThreadMutex object, and nobody is - trying to get one. Before someone attempts to acquire a lock on this - object, they must increment potentialLockers. After they release their - lock on this object, they must decrement potentialLockers. - - Access to this field is guarded by synchronizing on the object - lockForPotentialLockers. - - After construction, we only access this field via JNI. - */ - volatile int potentialLockers; - - /** An object to synchronize to if you want to examine or modify the - potentialLockers field. Only hold this lock for brief - moments, just long enough to check or set the value of - lockForPotentialLockers. - - We use this representation so that g_thread_mutex_trylock() will work - with the POSIX semantics. This is the only case in which you ever hold a - lock on lockForPotentialLockers while trying to get another - lock -- if you are the mutex_trylock() implementation, and you have just - checked that potentialLockers has the value zero. In that - case, mutex_trylock() holds the lock on lockForPotentialLockers so that - another thread calling mutex_trylock() or mutex_lock() won't increment - potentialLockers after we've checked it and before we've gained the lock - on the POSIX mutex. Of course, in that case the operation of gaining - the POSIX lock itself will succeed immediately, and once it has - succeeded, trylock releases lockForPotentialLockers right away, - incremented to 1 (one). - - After construction, we only access this field via JNI. - */ - Object lockForPotentialLockers; - - GThreadMutex() - { - potentialLockers = 0; - lockForPotentialLockers = new Object(); - } -} -// Local Variables: -// c-file-style: "gnu" -// End: diff --git a/libjava/gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java b/libjava/gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java deleted file mode 100644 index 9a1b8e3a30a..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GThreadNativeMethodRunner.java +++ /dev/null @@ -1,303 +0,0 @@ -/* GThreadNativeMethodRunner.java -- Implements pthread_create(), under - glib's gthread abstraction, for use with GNU Classpath's - --portable-native-sync option. - This is used by gthread-jni.c - - Copyright (C) 2004, 2005 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.java.awt.peer.gtk; - -import java.lang.ref.WeakReference; -import java.util.Collections; -import java.util.HashSet; -import java.util.Set; - -/** Implements pthread_create(), under glib's gthread abstraction, for use - with GNU Classpath's --portable-native-sync option. This is used in - gthread-jni.c - - Also implements a registry for threads, mapping Thread objects to small - integers. The registry uses weak references for threads that aren't - joinable, so that they will be garbage collected. - - There are a number of possible alternative implementations. - - - The rest of this comment consists of an answer to a question that was - raised on the commit-classpath mailing list: - - Mark Wielaard wrote: - - > Can't we assume that jobject and gpointer are both (void *) so we don't - > need the int <-> Thread (global jobject ref) mapping? - > Maybe there are platforms where jobject and gpointer aren't the same, - > but I guess that is pretty unlikely. - - - I agree with you on the pointer size issues. A gpointer is a void *, so - it's certainly guaranteed to be at least as large as any other - pointer. And a jobject is implicitly an opaque pointer (in Jikes RVM, we - use small integers, but we coerce them into the representation of a - pointer). - - The int <==> Thread mapping addresses a different issue. I realize that I - did not document this properly (two and a half lines in thread_create), - and the point is subtle (at least to me; took me a while to figure out). - - The int => Thread mapping always returns jobjects that are local - references, not global ones. This is because Thread objects need to be - able to go away and be garbage collected after the thread they refer to - has died. - - If we keep a global object reference to a thread, then when do we delete - that global object reference? We have an answer in the case of GThread - objects that were explicitly created with the joinable attribute. It is - safe for us to maintain a global reference to any joinable thread, since - the joinable thread must linger (even if only in a zombie state) - until it's explicitly joined via a g_thread_join() call. The global ref - could be cleaned up at that point too. - - However, in the case of GThreads that were created non-joinable by - g_thread_create(), and in the case of Java threads that were created - within pure Java code (not via g_thread_create()), we don't want them to - linger forever, and there is no way to tell when the last reference - to such threads needs to expire. In the case of this application -- AWT - with GTK peers -- it would probably be safe anyway, since there are not - very many threads we create, but I was going for correctness even in the - case of long-running programs that might set up and tear down AWT - interfaces many times. - - So, I duplicated the POSIX thread-ID semantics. The thread ID of a - non-joinable thread remains valid as long as that thread is still alive. - Once that thread dies, the old thread ID may be reused at any moment. And - that's why the array indexed by thread ID numbers is an array of weak - references. - - That's also why the int => Thread jobject mapping function always returns - local references, since global references would lock the Thread in memory - forever. - - I would dearly love there to be a cleaner solution. I dislike the - repeated dips from C code into Java that are necessary to look up thread - ID numbers. If anyone can think of one, I'm all ears. -*/ - -class GThreadNativeMethodRunner - extends Thread -{ - /** The C function pointer that was passed to g_thread_create(). - Specifically, this the numeric address of an object of - C type "void *(*funcPtr)(void *funcArg)". - */ - private final long funcPtr; - - /** The argument for the function "funcPtr(funcArg)". */ - private final long funcArg; - - GThreadNativeMethodRunner(long funcPtr, long funcArg, boolean joinable) - { - this.funcPtr = funcPtr; - this.funcArg = funcArg; - - if (joinable) - registerSelfJoinable(); - } - - public void run() - { - nativeRun(funcPtr, funcArg); - } - - private native void nativeRun(long funcPtr, long funcArg); - - /** THREADS is an array of threads, indexed by thread ID codes. Not sure - whether this is the "best" approach but it does make it O(1) to look up a - thread by its ID. - - Zero is a valid thread ID code. Any negative number is invalid. - - Possible future fixes (TODO?) - - - The THREADS array will only grow. probably not a problem. - But we could keep count when nulling entries and shrink when we have - lots of nulls at the end. Probably not worth it. --mjw - - - Could make this a set of Object; see the comment on "joinable" below. - - The initial size of 17 is just a starting point. Any number will do, - including zero. - */ - private static WeakReference[] threads = new WeakReference[17]; - - /** Used by threadToThreadID, below. Returns the registration number of - the newly-registered thread. - */ - private static synchronized int registerThread(Thread t) - { - int i; - - for (i = 0; i < threads.length; ++i) - { - WeakReference ref = threads[i]; - if (ref == null) - break; // found an empty spot. - } - - if (i == threads.length) - { - /* expand the array */ - WeakReference[] bigger = new WeakReference[threads.length * 2]; - System.arraycopy(threads, 0, bigger, 0, threads.length); - threads = bigger; - } - - threads[i] = new WeakReference(t); - - return i; - } - - /** Look up the Thread ID # for a Thread. Assign a Thread ID # if none - exists. This is a general routine for handling all threads, including - the VM's main thread, if appropriate. - - - Runs in O(n/2) time. - - We can't just issue a threadID upon thread creation. If we were to do - that, not all threads would have a threadID, because not all threads - are launched by GThreadNativeMethodRunner. - */ - static synchronized int threadToThreadID(Thread t) - { - for (int i = 0; i < threads.length; ++i ) - { - if (threads[i] == null) - continue; - Thread referent = (Thread) threads[i].get(); - if (referent == null) - { - threads[i] = null; // Purge the dead WeakReference. - continue; - } - if (referent.equals(t)) - return i; - } // for() - - /* No match found. */ - return registerThread(t); - } - - /** @param threadID Must be a non-negative integer. - - Used to return null if the thread number was out of range or if - the thread was unregistered. Now we throw an exception. - - Possible Alternative Interface: We could go back to returning null in - some sort of check-free mode, so code that calls this function must - be prepared to get null. - */ - static Thread threadIDToThread(int threadID) - throws IllegalArgumentException - { - if (threadID < 0) - throw new IllegalArgumentException("Received a negative threadID, " - + threadID); - if (threadID >= threads.length) - throw new IllegalArgumentException("Received a threadID (" + threadID - + ") higher than was" - + " ever issued"); - - /* Note: if the user is using a stale reference, things will just - break. We might end up getting a different thread than the one - expected. - - TODO: Add an error-checking mode where the user's problems with threads - are announced. For instance, if the user asks for the thread - associated with a threadID that was never issued, we could print a - warning or even abort. - - TODO: Consider optionally disabling all of the error-checking we - already have; it probably slows down the implementation. We could - just return NULL. This is just the reverse of the above TODO item. - */ - - WeakReference threadRef = threads[threadID]; - - if (threadRef == null) - throw new IllegalArgumentException("Asked to look up a stale or unissued" - + "threadID (" + threadID + ")" ); - - - Thread referent = (Thread) threadRef.get(); - if (referent == null) - throw new IllegalArgumentException ("Asked to look up a stale threadID (" - + threadID + ")"); - return referent; - } - - /** Joinable threads need a hard reference, so that they won't go away when - they die. That is because their thread IDs need to stay valid until the - thread is joined via thread_join(threadID). Joinable threads have to be - explicitly joined before they are allowed to go away completely. - - Possible Alternative Implementation: Eliminate the Joinable set. When - calling getThreadIDFromThread() you know whether or not the thread - is joinable. So just store the Thread itself in the threads array? - Make that array an Object array and check with instanceof. This - looks cleaner and more robust to me and it saves a native -> Java - call. But instanceof might be expensive. --mjw - */ - private static final Set joinable = - Collections.synchronizedSet(new HashSet()); - - /** Only called from the constructor. */ - private void registerSelfJoinable() - { - joinable.add(this); - } - - /** This method is only called from JNI, and only after we have succeeded in - a thread_join() operation. */ - static void deRegisterJoinable(Thread thread) - { - joinable.remove(thread); - } -} - -// Local Variables: -// c-file-style: "gnu" -// End: diff --git a/libjava/gnu/java/awt/peer/gtk/GdkFontMetrics.java b/libjava/gnu/java/awt/peer/gtk/GdkFontMetrics.java deleted file mode 100644 index 7a439e83a9d..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GdkFontMetrics.java +++ /dev/null @@ -1,134 +0,0 @@ -/* GdkFontMetrics.java - Copyright (C) 1999, 2002, 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.java.awt.peer.gtk; - -import gnu.java.awt.ClasspathToolkit; - -import java.awt.Font; -import java.awt.FontMetrics; -import java.awt.Toolkit; - -public class GdkFontMetrics extends FontMetrics -{ - - private int[] font_metrics; - GdkFontPeer peer; - - static final int FONT_METRICS_ASCENT = 0; - static final int FONT_METRICS_MAX_ASCENT = 1; - static final int FONT_METRICS_DESCENT = 2; - static final int FONT_METRICS_MAX_DESCENT = 3; - static final int FONT_METRICS_MAX_ADVANCE = 4; - - static final int TEXT_METRICS_X_BEARING = 0; - static final int TEXT_METRICS_Y_BEARING = 1; - static final int TEXT_METRICS_WIDTH = 2; - static final int TEXT_METRICS_HEIGHT = 3; - static final int TEXT_METRICS_X_ADVANCE = 4; - static final int TEXT_METRICS_Y_ADVANCE = 5; - - - public GdkFontMetrics (Font font) - { - super (font.getPeer() instanceof GdkFontPeer - ? font - : ((ClasspathToolkit)(Toolkit.getDefaultToolkit ())) - .getFont (font.getName(), font.getAttributes ())); - - peer = (GdkFontPeer) this.font.getPeer(); - - font_metrics = new int[5]; - double [] hires = new double[5]; - peer.getFontMetrics (hires); - for (int i = 0; i < 5; ++i) - font_metrics[i] = (int) hires[i]; - } - - public int stringWidth (String str) - { - double [] hires = new double[6]; - peer.getTextMetrics(str, hires); - return (int) hires [TEXT_METRICS_WIDTH]; - } - - public int charWidth (char ch) - { - return stringWidth (new String (new char[] { ch })); - } - - public int charsWidth (char data[], int off, int len) - { - return stringWidth (new String (data, off, len)); - } - - /* - Sun's Motif implementation always returns 0 or 1 here (???), but - going by the X11 man pages, it seems as though we should return - font.ascent + font.descent. - */ - public int getLeading () - { - return 1; - } - - public int getAscent () - { - return font_metrics[FONT_METRICS_ASCENT]; - } - - public int getMaxAscent () - { - return font_metrics[FONT_METRICS_MAX_ASCENT]; - } - - public int getDescent () - { - return font_metrics[FONT_METRICS_DESCENT]; - } - - public int getMaxDescent () - { - return font_metrics[FONT_METRICS_MAX_DESCENT]; - } - - public int getMaxAdvance () - { - return font_metrics[FONT_METRICS_MAX_ADVANCE]; - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GdkFontPeer.java b/libjava/gnu/java/awt/peer/gtk/GdkFontPeer.java deleted file mode 100644 index c6d42b37276..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GdkFontPeer.java +++ /dev/null @@ -1,307 +0,0 @@ -/* GdkFontPeer.java -- Implements FontPeer with GTK+ - Copyright (C) 1999, 2004, 2005 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.java.awt.peer.gtk; - -import gnu.classpath.Configuration; -import gnu.java.awt.peer.ClasspathFontPeer; - -import java.awt.Font; -import java.awt.FontMetrics; -import java.awt.font.FontRenderContext; -import java.awt.font.GlyphVector; -import java.awt.font.LineMetrics; -import java.awt.geom.Rectangle2D; -import java.text.CharacterIterator; -import java.text.StringCharacterIterator; -import java.util.Locale; -import java.util.Map; -import java.util.ResourceBundle; - -public class GdkFontPeer extends ClasspathFontPeer -{ - static native void initStaticState(); - private final int native_state = GtkGenericPeer.getUniqueInteger (); - private static ResourceBundle bundle; - - static - { - if (Configuration.INIT_LOAD_LIBRARY) - { - System.loadLibrary("gtkpeer"); - } - - initStaticState (); - - try - { - bundle = ResourceBundle.getBundle ("gnu.java.awt.peer.gtk.font"); - } - catch (Throwable ignored) - { - bundle = null; - } - } - - private native void initState (); - private native void dispose (); - private native void setFont (String family, int style, int size, boolean useGraphics2D); - - native void getFontMetrics(double [] metrics); - native void getTextMetrics(String str, double [] metrics); - - protected void finalize () - { - if (GtkToolkit.useGraphics2D ()) - GdkGraphics2D.releasePeerGraphicsResource(this); - dispose (); - } - - /* - * Helpers for the 3-way overloading that this class seems to suffer - * from. Remove them if you feel like they're a performance bottleneck, - * for the time being I prefer my code not be written and debugged in - * triplicate. - */ - - private String buildString(CharacterIterator iter) - { - StringBuffer sb = new StringBuffer(); - for(char c = iter.first(); c != CharacterIterator.DONE; c = iter.next()) - sb.append(c); - return sb.toString(); - } - - private String buildString(CharacterIterator iter, int begin, int limit) - { - StringBuffer sb = new StringBuffer(); - int i = 0; - for(char c = iter.first(); c != CharacterIterator.DONE; c = iter.next(), i++) - { - if (begin <= i) - sb.append(c); - if (limit <= i) - break; - } - return sb.toString(); - } - - private String buildString(char[] chars, int begin, int limit) - { - return new String(chars, begin, limit - begin); - } - - /* Public API */ - - public GdkFontPeer (String name, int style) - { - // All fonts get a default size of 12 if size is not specified. - this(name, style, 12); - } - - public GdkFontPeer (String name, int style, int size) - { - super(name, style, size); - initState (); - setFont (this.familyName, this.style, (int)this.size, - GtkToolkit.useGraphics2D()); - } - - public GdkFontPeer (String name, Map attributes) - { - super(name, attributes); - initState (); - setFont (this.familyName, this.style, (int)this.size, - GtkToolkit.useGraphics2D()); - } - - public String getSubFamilyName(Font font, Locale locale) - { - return null; - } - - public String getPostScriptName(Font font) - { - return null; - } - - public boolean canDisplay (Font font, char c) - { - // FIXME: inquire with pango - return true; - } - - public int canDisplayUpTo (Font font, CharacterIterator i, int start, int limit) - { - // FIXME: inquire with pango - return -1; - } - - private native GdkGlyphVector getGlyphVector(String txt, - Font f, - FontRenderContext ctx); - - public GlyphVector createGlyphVector (Font font, - FontRenderContext ctx, - CharacterIterator i) - { - return getGlyphVector(buildString (i), font, ctx); - } - - public GlyphVector createGlyphVector (Font font, - FontRenderContext ctx, - int[] glyphCodes) - { - return null; - // return new GdkGlyphVector (font, this, ctx, glyphCodes); - } - - public byte getBaselineFor (Font font, char c) - { - throw new UnsupportedOperationException (); - } - - protected class GdkFontLineMetrics extends LineMetrics - { - FontMetrics fm; - int nchars; - - public GdkFontLineMetrics (FontMetrics m, int n) - { - fm = m; - nchars = n; - } - - public float getAscent() - { - return (float) fm.getAscent (); - } - - public int getBaselineIndex() - { - return Font.ROMAN_BASELINE; - } - - public float[] getBaselineOffsets() - { - return new float[3]; - } - - public float getDescent() - { - return (float) fm.getDescent (); - } - - public float getHeight() - { - return (float) fm.getHeight (); - } - - public float getLeading() { return 0.f; } - public int getNumChars() { return nchars; } - public float getStrikethroughOffset() { return 0.f; } - public float getStrikethroughThickness() { return 0.f; } - public float getUnderlineOffset() { return 0.f; } - public float getUnderlineThickness() { return 0.f; } - - } - - public LineMetrics getLineMetrics (Font font, CharacterIterator ci, - int begin, int limit, FontRenderContext rc) - { - return new GdkFontLineMetrics (getFontMetrics (font), limit - begin); - } - - public Rectangle2D getMaxCharBounds (Font font, FontRenderContext rc) - { - throw new UnsupportedOperationException (); - } - - public int getMissingGlyphCode (Font font) - { - throw new UnsupportedOperationException (); - } - - public String getGlyphName (Font font, int glyphIndex) - { - throw new UnsupportedOperationException (); - } - - public int getNumGlyphs (Font font) - { - throw new UnsupportedOperationException (); - } - - public Rectangle2D getStringBounds (Font font, CharacterIterator ci, - int begin, int limit, FontRenderContext frc) - { - GdkGlyphVector gv = getGlyphVector(buildString (ci, begin, limit), font, frc); - return gv.getVisualBounds(); - } - - public boolean hasUniformLineMetrics (Font font) - { - return true; - } - - public GlyphVector layoutGlyphVector (Font font, FontRenderContext frc, - char[] chars, int start, int limit, - int flags) - { - int nchars = (limit - start) + 1; - char[] nc = new char[nchars]; - - for (int i = 0; i < nchars; ++i) - nc[i] = chars[start + i]; - - return createGlyphVector (font, frc, - new StringCharacterIterator (new String (nc))); - } - - public LineMetrics getLineMetrics (Font font, String str, - FontRenderContext frc) - { - return new GdkFontLineMetrics (getFontMetrics (font), str.length ()); - } - - public FontMetrics getFontMetrics (Font font) - { - return new GdkFontMetrics (font); - } - -} diff --git a/libjava/gnu/java/awt/peer/gtk/GdkGlyphVector.java b/libjava/gnu/java/awt/peer/gtk/GdkGlyphVector.java deleted file mode 100644 index f0ddea43a12..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GdkGlyphVector.java +++ /dev/null @@ -1,359 +0,0 @@ -/* GdkGlyphVector.java -- Glyph vector object - Copyright (C) 2003, 2004, 2005 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.java.awt.peer.gtk; - -import java.awt.Font; -import java.awt.Rectangle; -import java.awt.Shape; -import java.awt.font.FontRenderContext; -import java.awt.font.GlyphJustificationInfo; -import java.awt.font.GlyphMetrics; -import java.awt.font.GlyphVector; -import java.awt.geom.AffineTransform; -import java.awt.geom.Point2D; -import java.awt.geom.Rectangle2D; - -public class GdkGlyphVector extends GlyphVector -{ - - /* We use a simple representation for glyph vectors here. Glyph i - * consumes 8 doubles: - * - * logical x: extents[ 10*i ] - * logical y: extents[ 10*i + 1 ] - * logical width: extents[ 10*i + 2 ] - * logical height: extents[ 10*i + 3 ] - * - * visual x: extents[ 10*i + 4 ] - * visual y: extents[ 10*i + 5 ] - * visual width: extents[ 10*i + 6 ] - * visual height: extents[ 10*i + 7 ] - * - * origin pos x: extents[ 10*i + 8 ] - * origin pos y: extents[ 10*i + 9 ] - * - * as well as one int, code[i], representing the glyph code in the font. - */ - - double [] extents; - int [] codes; - - Font font; - FontRenderContext fontRenderContext; - - Rectangle2D allLogical; - Rectangle2D allVisual; - - public GdkGlyphVector(double[] extents, int[] codes, Font font, FontRenderContext frc) - { - this.extents = extents; - this.codes = codes; - this.font = font; - this.fontRenderContext = frc; - - allLogical = new Rectangle2D.Double(); - allVisual = new Rectangle2D.Double(); - - for (int i = 0; i < codes.length; ++i) - { - allLogical.add (new Rectangle2D.Double(extents[10*i ] + extents[10*i + 8], - extents[10*i + 1] + extents[10*i + 9], - extents[10*i + 2], - extents[10*i + 3])); - - allVisual.add (new Rectangle2D.Double(extents[10*i + 4] + extents[10*i + 8], - extents[10*i + 5] + extents[10*i + 9], - extents[10*i + 6], - extents[10*i + 7])); - } - } - - /* - geometric notes: - - the FRC contains a mapping from points -> pixels. - - typographics points are typically 1/72 of an inch. - - pixel displays are often around 72 dpi. - - so the FRC can get away with using an identity transform on a screen, - often. behavior is documented by sun to fall back to an identity - transform if the internal transformation is null. - - coordinates coming up from pango are expressed as floats -- in device - space, so basically pixels-with-fractional-bits -- derived from their - storage format in pango (1024ths of pixels). - - it is not clear from the javadocs whether the results of methods like - getGlyphPositions ought to return coordinates in device space, or - "point" space, or what. for now I'm returning them in device space. - - */ - - public double[] getExtents() - { - return extents; - } - - public int[] getCodes() - { - return codes; - } - - public Font getFont () - { - return font; - } - - public FontRenderContext getFontRenderContext () - { - return fontRenderContext; - } - - public int getGlyphCharIndex (int glyphIndex) - { - // FIXME: currently pango does not provide glyph-by-glyph - // reverse mapping information, so we assume a broken 1:1 - // glyph model here. This is plainly wrong. - return glyphIndex; - } - - public int[] getGlyphCharIndices (int beginGlyphIndex, - int numEntries, - int[] codeReturn) - { - int ix[] = codeReturn; - if (ix == null) - ix = new int[numEntries]; - - for (int i = 0; i < numEntries; i++) - ix[i] = getGlyphCharIndex (beginGlyphIndex + i); - return ix; - } - - public int getGlyphCode (int glyphIndex) - { - return codes[glyphIndex]; - } - - public int[] getGlyphCodes (int beginGlyphIndex, int numEntries, - int[] codeReturn) - { - if (codeReturn == null) - codeReturn = new int[numEntries]; - - System.arraycopy(codes, beginGlyphIndex, codeReturn, 0, numEntries); - return codeReturn; - } - - public Shape getGlyphLogicalBounds (int i) - { - return new Rectangle2D.Double (extents[8*i], extents[8*i + 1], - extents[8*i + 2], extents[8*i + 3]); - } - - public GlyphMetrics getGlyphMetrics (int i) - { - // FIXME: pango does not yield vertical layout information at the - // moment. - - boolean is_horizontal = true; - double advanceX = extents[8*i + 2]; // "logical width" == advanceX - double advanceY = 0; - - return new GlyphMetrics (is_horizontal, - (float) advanceX, (float) advanceY, - (Rectangle2D) getGlyphVisualBounds(i), - GlyphMetrics.STANDARD); - } - - public Shape getGlyphOutline (int glyphIndex) - { - throw new UnsupportedOperationException (); - } - - public Shape getGlyphOutline (int glyphIndex, float x, float y) - { - throw new UnsupportedOperationException (); - } - - public Rectangle getGlyphPixelBounds (int i, - FontRenderContext renderFRC, - float x, float y) - { - return new Rectangle((int) x, (int) y, - (int) extents[8*i + 6], (int) extents[8*i + 7]); - } - - public Point2D getGlyphPosition (int i) - { - return new Point2D.Double (extents[10*i + 8], - extents[10*i + 9]); - } - - public float[] getGlyphPositions (int beginGlyphIndex, - int numEntries, - float[] positionReturn) - { - float fx[] = positionReturn; - if (fx == null) - fx = new float[numEntries * 2]; - - for (int i = 0; i < numEntries; ++i) - { - fx[2*i ] = (float) extents[10*i + 8]; - fx[2*i + 1] = (float) extents[10*i + 9]; - } - return fx; - } - - public AffineTransform getGlyphTransform (int glyphIndex) - { - // Glyphs don't have independent transforms in these simple glyph - // vectors; docs specify null is an ok return here. - return null; - } - - public Shape getGlyphVisualBounds (int i) - { - return new Rectangle2D.Double(extents[8*i + 4], extents[8*i + 5], - extents[8*i + 6], extents[8*i + 7]); - } - - public int getLayoutFlags () - { - return 0; - } - - public Rectangle2D getLogicalBounds () - { - return allLogical; - } - - public int getNumGlyphs () - { - return codes.length; - } - - public Shape getOutline () - { - throw new UnsupportedOperationException (); - } - - public Rectangle getPixelBounds (FontRenderContext renderFRC, - float x, float y) - { - return new Rectangle((int)x, - (int)y, - (int) allVisual.getWidth(), - (int) allVisual.getHeight()); - } - - public Rectangle2D getVisualBounds () - { - return allVisual; - } - - public void performDefaultLayout () - { - } - - public void setGlyphPosition (int i, Point2D newPos) - { - extents[8*i ] = newPos.getX(); - extents[8*i + 1] = newPos.getY(); - - extents[8*i + 4] = newPos.getX(); - extents[8*i + 5] = newPos.getY(); - } - - public void setGlyphTransform (int glyphIndex, - AffineTransform newTX) - { - // not yet.. maybe not ever? - throw new UnsupportedOperationException (); - } - - public boolean equals(GlyphVector gv) - { - if (gv == null) - return false; - - if (! (gv instanceof GdkGlyphVector)) - return false; - - GdkGlyphVector ggv = (GdkGlyphVector) gv; - - if ((ggv.codes.length != this.codes.length) - || (ggv.extents.length != this.extents.length)) - return false; - - if ((ggv.font == null && this.font != null) - || (ggv.font != null && this.font == null) - || (!ggv.font.equals(this.font))) - return false; - - if ((ggv.fontRenderContext == null && this.fontRenderContext != null) - || (ggv.fontRenderContext != null && this.fontRenderContext == null) - || (!ggv.fontRenderContext.equals(this.fontRenderContext))) - return false; - - for (int i = 0; i < ggv.codes.length; ++i) - if (ggv.codes[i] != this.codes[i]) - return false; - - for (int i = 0; i < ggv.extents.length; ++i) - if (ggv.extents[i] != this.extents[i]) - return false; - - return true; - } - - public GlyphJustificationInfo getGlyphJustificationInfo(int idx) - { - throw new UnsupportedOperationException (); - } - - public Shape getOutline(float x, float y) - { - throw new UnsupportedOperationException (); - } - -} diff --git a/libjava/gnu/java/awt/peer/gtk/GdkGraphics.java b/libjava/gnu/java/awt/peer/gtk/GdkGraphics.java deleted file mode 100644 index cc3a1009d86..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GdkGraphics.java +++ /dev/null @@ -1,487 +0,0 @@ -/* GdkGraphics.java - Copyright (C) 1998, 1999, 2002, 2005 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.java.awt.peer.gtk; - -import java.awt.Color; -import java.awt.Dimension; -import java.awt.Font; -import java.awt.FontMetrics; -import java.awt.Graphics; -import java.awt.Image; -import java.awt.Rectangle; -import java.awt.Shape; -import java.awt.SystemColor; -import java.awt.image.ImageObserver; -import java.text.AttributedCharacterIterator; - -public class GdkGraphics extends Graphics -{ - private final int native_state = GtkGenericPeer.getUniqueInteger(); - - Color color, xorColor; - GtkComponentPeer component; - Font font; - Rectangle clip; - - int xOffset = 0; - int yOffset = 0; - - static final int GDK_COPY = 0, GDK_XOR = 2; - - native void initState (GtkComponentPeer component); - native void initState (int width, int height); - native void copyState (GdkGraphics g); - - GdkGraphics (GdkGraphics g) - { - color = g.color; - xorColor = g.xorColor; - font = g.font; - clip = new Rectangle (g.clip); - component = g.component; - - copyState (g); - } - - GdkGraphics (int width, int height) - { - initState (width, height); - color = Color.black; - clip = new Rectangle (0, 0, width, height); - font = new Font ("Dialog", Font.PLAIN, 12); - } - - GdkGraphics (GtkComponentPeer component) - { - this.component = component; - font = component.awtComponent.getFont (); - - if (component.isRealized ()) - initComponentGraphics (); - else - connectSignals (component); - } - - void initComponentGraphics () - { - initState (component); - color = component.awtComponent.getForeground (); - Dimension d = component.awtComponent.getSize (); - clip = new Rectangle (0, 0, d.width, d.height); - } - - native void connectSignals (GtkComponentPeer component); - - public native void clearRect(int x, int y, int width, int height); - - public void clipRect (int x, int y, int width, int height) - { - if (component != null && ! component.isRealized ()) - return; - - clip = clip.intersection (new Rectangle (x, y, width, height)); - setClipRectangle (clip.x, clip.y, clip.width, clip.height); - } - - public native void copyArea(int x, int y, int width, int height, - int dx, int dy); - - public Graphics create () - { - return new GdkGraphics (this); - } - - public native void dispose(); - - native void copyPixmap (Graphics g, int x, int y, int width, int height); - native void copyAndScalePixmap (Graphics g, boolean flip_x, boolean flip_y, - int src_x, int src_y, - int src_width, int src_height, - int dest_x, int dest_y, - int dest_width, int dest_height); - public boolean drawImage (Image img, int x, int y, - Color bgcolor, ImageObserver observer) - { - if (component != null && ! component.isRealized ()) - return false; - - if (img instanceof GtkOffScreenImage) - { - int width = img.getWidth (null); - int height = img.getHeight (null); - copyPixmap (img.getGraphics (), - x, y, width, height); - return true; - } - - GtkImage image = (GtkImage) img; - new GtkImagePainter (image, this, x, y, -1, -1, bgcolor, observer); - return image.isLoaded (); - } - - public boolean drawImage (Image img, int x, int y, ImageObserver observer) - { - if (component != null && ! component.isRealized ()) - return false; - - if (img instanceof GtkOffScreenImage) - { - int width = img.getWidth (null); - int height = img.getHeight (null); - copyPixmap (img.getGraphics (), - x, y, width, height); - return true; - } - - if (component != null) - return drawImage (img, x, y, component.getBackground (), observer); - else - return drawImage (img, x, y, SystemColor.window, observer); - } - - public boolean drawImage (Image img, int x, int y, int width, int height, - Color bgcolor, ImageObserver observer) - { - if (component != null && ! component.isRealized ()) - return false; - - if (img instanceof GtkOffScreenImage) - { - copyAndScalePixmap (img.getGraphics (), false, false, - 0, 0, img.getWidth (null), img.getHeight (null), - x, y, width, height); - return true; - } - - GtkImage image = (GtkImage) img; - new GtkImagePainter (image, this, x, y, width, height, bgcolor, observer); - return image.isLoaded (); - } - - public boolean drawImage (Image img, int x, int y, int width, int height, - ImageObserver observer) - { - if (component != null && ! component.isRealized ()) - return false; - - if (component != null) - return drawImage (img, x, y, width, height, component.getBackground (), - observer); - else - return drawImage (img, x, y, width, height, SystemColor.window, - observer); - } - - public boolean drawImage (Image img, int dx1, int dy1, int dx2, int dy2, - int sx1, int sy1, int sx2, int sy2, - Color bgcolor, ImageObserver observer) - { - if (component != null && ! component.isRealized ()) - return false; - - if (img instanceof GtkOffScreenImage) - { - int dx_start, dy_start, d_width, d_height; - int sx_start, sy_start, s_width, s_height; - boolean x_flip = false; - boolean y_flip = false; - - if (dx1 < dx2) - { - dx_start = dx1; - d_width = dx2 - dx1; - } - else - { - dx_start = dx2; - d_width = dx1 - dx2; - x_flip ^= true; - } - if (dy1 < dy2) - { - dy_start = dy1; - d_height = dy2 - dy1; - } - else - { - dy_start = dy2; - d_height = dy1 - dy2; - y_flip ^= true; - } - if (sx1 < sx2) - { - sx_start = sx1; - s_width = sx2 - sx1; - } - else - { - sx_start = sx2; - s_width = sx1 - sx2; - x_flip ^= true; - } - if (sy1 < sy2) - { - sy_start = sy1; - s_height = sy2 - sy1; - } - else - { - sy_start = sy2; - s_height = sy1 - sy2; - y_flip ^= true; - } - - copyAndScalePixmap (img.getGraphics (), x_flip, y_flip, - sx_start, sy_start, s_width, s_height, - dx_start, dy_start, d_width, d_height); - return true; - } - - GtkImage image = (GtkImage) img; - new GtkImagePainter (image, this, dx1, dy1, dx2, dy2, - sx1, sy1, sx2, sy2, bgcolor, observer); - return image.isLoaded (); - } - - public boolean drawImage (Image img, int dx1, int dy1, int dx2, int dy2, - int sx1, int sy1, int sx2, int sy2, - ImageObserver observer) - { - if (component != null && ! component.isRealized ()) - return false; - - if (component != null) - return drawImage (img, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2, - component.getBackground (), observer); - else - return drawImage (img, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2, - SystemColor.window, observer); - } - - public native void drawLine(int x1, int y1, int x2, int y2); - - public native void drawArc(int x, int y, int width, int height, - int startAngle, int arcAngle); - public native void fillArc(int x, int y, int width, int height, - int startAngle, int arcAngle); - public native void drawOval(int x, int y, int width, int height); - public native void fillOval(int x, int y, int width, int height); - - public native void drawPolygon(int[] xPoints, int[] yPoints, int nPoints); - public native void fillPolygon(int[] xPoints, int[] yPoints, int nPoints); - - public native void drawPolyline(int[] xPoints, int[] yPoints, int nPoints); - - public native void drawRect(int x, int y, int width, int height); - public native void fillRect(int x, int y, int width, int height); - - GdkFontPeer getFontPeer() - { - return (GdkFontPeer) getFont().getPeer(); - } - - native void drawString (GdkFontPeer f, String str, int x, int y); - public void drawString (String str, int x, int y) - { - drawString(getFontPeer(), str, x, y); - } - - - public void drawString (AttributedCharacterIterator ci, int x, int y) - { - throw new Error ("not implemented"); - } - - public void drawRoundRect(int x, int y, int width, int height, - int arcWidth, int arcHeight) - { - if (arcWidth > width) - arcWidth = width; - if (arcHeight > height) - arcHeight = height; - - int xx = x + width - arcWidth; - int yy = y + height - arcHeight; - - drawArc (x, y, arcWidth, arcHeight, 90, 90); - drawArc (xx, y, arcWidth, arcHeight, 0, 90); - drawArc (xx, yy, arcWidth, arcHeight, 270, 90); - drawArc (x, yy, arcWidth, arcHeight, 180, 90); - - int y1 = y + arcHeight / 2; - int y2 = y + height - arcHeight / 2; - drawLine (x, y1, x, y2); - drawLine (x + width, y1, x + width, y2); - - int x1 = x + arcWidth / 2; - int x2 = x + width - arcWidth / 2; - drawLine (x1, y, x2, y); - drawLine (x1, y + height, x2, y + height); - } - - public void fillRoundRect (int x, int y, int width, int height, - int arcWidth, int arcHeight) - { - if (arcWidth > width) - arcWidth = width; - if (arcHeight > height) - arcHeight = height; - - int xx = x + width - arcWidth; - int yy = y + height - arcHeight; - - fillArc (x, y, arcWidth, arcHeight, 90, 90); - fillArc (xx, y, arcWidth, arcHeight, 0, 90); - fillArc (xx, yy, arcWidth, arcHeight, 270, 90); - fillArc (x, yy, arcWidth, arcHeight, 180, 90); - - fillRect (x, y + arcHeight / 2, width, height - arcHeight + 1); - fillRect (x + arcWidth / 2, y, width - arcWidth + 1, height); - } - - public Shape getClip () - { - return getClipBounds (); - } - - public Rectangle getClipBounds () - { - if (clip == null) - return null; - else - return clip.getBounds(); - } - - public Color getColor () - { - return color; - } - - public Font getFont () - { - return font; - } - - public FontMetrics getFontMetrics (Font font) - { - return new GdkFontMetrics (font); - } - - native void setClipRectangle (int x, int y, int width, int height); - - public void setClip (int x, int y, int width, int height) - { - if ((component != null && ! component.isRealized ()) - || clip == null) - return; - - clip.x = x; - clip.y = y; - clip.width = width; - clip.height = height; - - setClipRectangle (x, y, width, height); - } - - public void setClip (Rectangle clip) - { - setClip (clip.x, clip.y, clip.width, clip.height); - } - - public void setClip (Shape clip) - { - if (clip != null) - setClip(clip.getBounds()); - } - - private native void setFGColor(int red, int green, int blue); - - public void setColor (Color c) - { - if (c == null) - color = Color.BLACK; - else - color = c; - - if (xorColor == null) /* paint mode */ - setFGColor (color.getRed (), color.getGreen (), color.getBlue ()); - else /* xor mode */ - setFGColor (color.getRed () ^ xorColor.getRed (), - color.getGreen () ^ xorColor.getGreen (), - color.getBlue () ^ xorColor.getBlue ()); - } - - public void setFont (Font font) - { - this.font = font; - } - - native void setFunction (int gdk_func); - - public void setPaintMode () - { - xorColor = null; - - setFunction (GDK_COPY); - setFGColor (color.getRed (), color.getGreen (), color.getBlue ()); - } - - public void setXORMode (Color c) - { - xorColor = c; - - setFunction (GDK_XOR); - setFGColor (color.getRed () ^ xorColor.getRed (), - color.getGreen () ^ xorColor.getGreen (), - color.getBlue () ^ xorColor.getBlue ()); - } - - public native void translateNative(int x, int y); - - public void translate (int x, int y) - { - if (component != null && ! component.isRealized ()) - return; - - clip.x -= x; - clip.y -= y; - - translateNative (x, y); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GdkGraphics2D.java b/libjava/gnu/java/awt/peer/gtk/GdkGraphics2D.java deleted file mode 100644 index 65c4ca2a224..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GdkGraphics2D.java +++ /dev/null @@ -1,1449 +0,0 @@ -/* GdkGraphics2D.java -- - Copyright (C) 2003, 2004, 2005 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.java.awt.peer.gtk; - -import gnu.classpath.Configuration; -import gnu.java.awt.ClasspathToolkit; - -import java.awt.AlphaComposite; -import java.awt.BasicStroke; -import java.awt.Color; -import java.awt.Composite; -import java.awt.Font; -import java.awt.FontMetrics; -import java.awt.GradientPaint; -import java.awt.Graphics; -import java.awt.Graphics2D; -import java.awt.GraphicsConfiguration; -import java.awt.Image; -import java.awt.Paint; -import java.awt.Rectangle; -import java.awt.RenderingHints; -import java.awt.Shape; -import java.awt.Stroke; -import java.awt.TexturePaint; -import java.awt.Toolkit; -import java.awt.font.FontRenderContext; -import java.awt.font.GlyphVector; -import java.awt.geom.AffineTransform; -import java.awt.geom.Arc2D; -import java.awt.geom.GeneralPath; -import java.awt.geom.NoninvertibleTransformException; -import java.awt.geom.PathIterator; -import java.awt.geom.Point2D; -import java.awt.geom.Rectangle2D; -import java.awt.image.AffineTransformOp; -import java.awt.image.BufferedImage; -import java.awt.image.BufferedImageOp; -import java.awt.image.ColorModel; -import java.awt.image.CropImageFilter; -import java.awt.image.DataBuffer; -import java.awt.image.DataBufferInt; -import java.awt.image.DirectColorModel; -import java.awt.image.FilteredImageSource; -import java.awt.image.ImageObserver; -import java.awt.image.ImagingOpException; -import java.awt.image.MultiPixelPackedSampleModel; -import java.awt.image.Raster; -import java.awt.image.RenderedImage; -import java.awt.image.SampleModel; -import java.awt.image.WritableRaster; -import java.awt.image.renderable.RenderContext; -import java.awt.image.renderable.RenderableImage; -import java.text.AttributedCharacterIterator; -import java.util.HashMap; -import java.util.Map; -import java.util.Stack; - -public class GdkGraphics2D extends Graphics2D -{ - ////////////////////////////////////// - ////// State Management Methods ////// - ////////////////////////////////////// - - static - { - if (Configuration.INIT_LOAD_LIBRARY) - System.loadLibrary("gtkpeer"); - - if (GtkToolkit.useGraphics2D()) - initStaticState(); - } - - static native void initStaticState(); - - private final int native_state = GtkGenericPeer.getUniqueInteger(); - - // These are package-private to avoid accessor methods. - Paint paint; - Stroke stroke; - Color fg; - Color bg; - Shape clip; - AffineTransform transform; - private GtkComponentPeer component; - // This is package-private to avoid an accessor method. - Font font; - private RenderingHints hints; - private BufferedImage bimage; - private boolean pixelConversionRequired; - private int[] pixelBuffer; - // This is package-private to avoid an accessor method. - Composite comp; - private Stack stateStack; - - private native void initState(GtkComponentPeer component); - private native void initState(int width, int height); - private native void initState(int[] pixes, int width, int height); - private native void copyState(GdkGraphics2D g); - public native void dispose(); - private native void cairoSurfaceSetFilter(int filter); - native void connectSignals(GtkComponentPeer component); - - public void finalize() - { - dispose(); - } - - public Graphics create() - { - return new GdkGraphics2D(this); - } - - public Graphics create(int x, int y, int width, int height) - { - return new GdkGraphics2D(width, height); - } - - GdkGraphics2D(GdkGraphics2D g) - { - paint = g.paint; - stroke = g.stroke; - setRenderingHints(g.hints); - - if (g.fg.getAlpha() != -1) - fg = new Color(g.fg.getRed(), g.fg.getGreen(), g.fg.getBlue(), - g.fg.getAlpha()); - else - fg = new Color(g.fg.getRGB()); - - if (g.bg.getAlpha() != -1) - bg = new Color(g.bg.getRed(), g.bg.getGreen(), g.bg.getBlue(), - g.bg.getAlpha()); - else - bg = new Color(g.bg.getRGB()); - - if (g.clip == null) - clip = null; - else - clip = new Rectangle(g.getClipBounds()); - - if (g.transform == null) - transform = new AffineTransform(); - else - transform = new AffineTransform(g.transform); - - font = g.font; - component = g.component; - copyState(g); - - setColor(fg); - setBackground(bg); - setPaint(paint); - setStroke(stroke); - setTransform(transform); - setClip(clip); - stateStack = new Stack(); - } - - GdkGraphics2D(int width, int height) - { - initState(width, height); - - setColor(Color.black); - setBackground(Color.black); - setPaint(getColor()); - setFont(new Font("SansSerif", Font.PLAIN, 12)); - setTransform(new AffineTransform()); - setStroke(new BasicStroke()); - setRenderingHints(getDefaultHints()); - - stateStack = new Stack(); - } - - GdkGraphics2D(GtkComponentPeer component) - { - this.component = component; - - if (component.isRealized()) - initComponentGraphics2D(); - else - connectSignals(component); - } - - void initComponentGraphics2D() - { - initState(component); - - setColor(component.awtComponent.getForeground()); - setBackground(component.awtComponent.getBackground()); - setPaint(getColor()); - setTransform(new AffineTransform()); - setStroke(new BasicStroke()); - setRenderingHints(getDefaultHints()); - setFont(new Font("SansSerif", Font.PLAIN, 12)); - - stateStack = new Stack(); - } - - GdkGraphics2D(BufferedImage bimage) - { - this.bimage = bimage; - this.pixelBuffer = findSimpleIntegerArray(bimage.getColorModel(), - bimage.getRaster()); - if (this.pixelBuffer == null) - { - this.pixelBuffer = new int[bimage.getRaster().getWidth() * bimage.getRaster() - .getHeight()]; - this.pixelConversionRequired = true; - } - else - { - this.pixelConversionRequired = false; - } - - initState(this.pixelBuffer, bimage.getWidth(), bimage.getHeight()); - - setColor(Color.black); - setBackground(Color.black); - setPaint(getColor()); - setFont(new Font("SansSerif", Font.PLAIN, 12)); - setTransform(new AffineTransform()); - setStroke(new BasicStroke()); - setRenderingHints(getDefaultHints()); - - stateStack = new Stack(); - - // draw current buffered image to the pixmap associated - // with it, if the image is not equal to our paint buffer. - if (pixelConversionRequired) - drawImage(bimage, new AffineTransform(1, 0, 0, 1, 0, 0), bg, null); - } - - //////////////////////////////////// - ////// Native Drawing Methods ////// - //////////////////////////////////// - - // GDK drawing methods - private native void gdkDrawDrawable(GdkGraphics2D other, int x, int y); - - // drawing utility methods - private native void drawPixels(int[] pixels, int w, int h, int stride, - double[] i2u); - private native void setTexturePixels(int[] pixels, int w, int h, int stride); - private native void setGradient(double x1, double y1, double x2, double y2, - int r1, int g1, int b1, int a1, int r2, - int g2, int b2, int a2, boolean cyclic); - - // simple passthroughs to cairo - private native void cairoSave(); - private native void cairoRestore(); - private native void cairoSetMatrix(double[] m); - private native void cairoSetOperator(int cairoOperator); - private native void cairoSetRGBColor(double red, double green, double blue); - private native void cairoSetAlpha(double alpha); - private native void cairoSetFillRule(int cairoFillRule); - private native void cairoSetLineWidth(double width); - private native void cairoSetLineCap(int cairoLineCap); - private native void cairoSetLineJoin(int cairoLineJoin); - private native void cairoSetDash(double[] dashes, int ndash, double offset); - - private native void cairoSetMiterLimit(double limit); - private native void cairoNewPath(); - private native void cairoMoveTo(double x, double y); - private native void cairoLineTo(double x, double y); - private native void cairoCurveTo(double x1, double y1, double x2, double y2, - double x3, double y3); - private native void cairoRelMoveTo(double dx, double dy); - private native void cairoRelLineTo(double dx, double dy); - private native void cairoRelCurveTo(double dx1, double dy1, double dx2, - double dy2, double dx3, double dy3); - private native void cairoRectangle(double x, double y, double width, - double height); - private native void cairoClosePath(); - private native void cairoStroke(); - private native void cairoFill(); - private native void cairoClip(); - - ///////////////////////////////////////////// - ////// General Drawing Support Methods ////// - ///////////////////////////////////////////// - - private class DrawState - { - private Paint paint; - private Stroke stroke; - private Color fg; - private Color bg; - private Shape clip; - private AffineTransform transform; - private Font font; - private Composite comp; - - DrawState(GdkGraphics2D g) - { - this.paint = g.paint; - this.stroke = g.stroke; - this.fg = g.fg; - this.bg = g.bg; - this.clip = g.clip; - if (g.transform != null) - this.transform = (AffineTransform) g.transform.clone(); - this.font = g.font; - this.comp = g.comp; - } - - public void restore(GdkGraphics2D g) - { - g.paint = this.paint; - g.stroke = this.stroke; - g.fg = this.fg; - g.bg = this.bg; - g.clip = this.clip; - g.transform = this.transform; - g.font = this.font; - g.comp = this.comp; - } - } - - private void stateSave() - { - stateStack.push(new DrawState(this)); - cairoSave(); - } - - private void stateRestore() - { - ((DrawState) (stateStack.pop())).restore(this); - cairoRestore(); - } - - // Some operations (drawing rather than filling) require that their - // coords be shifted to land on 0.5-pixel boundaries, in order to land on - // "middle of pixel" coordinates and light up complete pixels. - private boolean shiftDrawCalls = false; - - private double shifted(double coord, boolean doShift) - { - if (doShift) - return Math.floor(coord) + 0.5; - else - return coord; - } - - private void walkPath(PathIterator p, boolean doShift) - { - double x = 0; - double y = 0; - double[] coords = new double[6]; - - cairoSetFillRule(p.getWindingRule()); - for (; ! p.isDone(); p.next()) - { - int seg = p.currentSegment(coords); - switch (seg) - { - case PathIterator.SEG_MOVETO: - x = shifted(coords[0], doShift); - y = shifted(coords[1], doShift); - cairoMoveTo(x, y); - break; - case PathIterator.SEG_LINETO: - x = shifted(coords[0], doShift); - y = shifted(coords[1], doShift); - cairoLineTo(x, y); - break; - case PathIterator.SEG_QUADTO: - // splitting a quadratic bezier into a cubic: - // see: http://pfaedit.sourceforge.net/bezier.html - double x1 = x + (2.0 / 3.0) * (shifted(coords[0], doShift) - x); - double y1 = y + (2.0 / 3.0) * (shifted(coords[1], doShift) - y); - - double x2 = x1 + (1.0 / 3.0) * (shifted(coords[2], doShift) - x); - double y2 = y1 + (1.0 / 3.0) * (shifted(coords[3], doShift) - y); - - x = shifted(coords[2], doShift); - y = shifted(coords[3], doShift); - cairoCurveTo(x1, y1, x2, y2, x, y); - break; - case PathIterator.SEG_CUBICTO: - x = shifted(coords[4], doShift); - y = shifted(coords[5], doShift); - cairoCurveTo(shifted(coords[0], doShift), - shifted(coords[1], doShift), - shifted(coords[2], doShift), - shifted(coords[3], doShift), x, y); - break; - case PathIterator.SEG_CLOSE: - cairoClosePath(); - break; - } - } - } - - private Map getDefaultHints() - { - HashMap defaultHints = new HashMap(); - - defaultHints.put(RenderingHints.KEY_TEXT_ANTIALIASING, - RenderingHints.VALUE_TEXT_ANTIALIAS_DEFAULT); - - defaultHints.put(RenderingHints.KEY_STROKE_CONTROL, - RenderingHints.VALUE_STROKE_DEFAULT); - - defaultHints.put(RenderingHints.KEY_FRACTIONALMETRICS, - RenderingHints.VALUE_FRACTIONALMETRICS_OFF); - - defaultHints.put(RenderingHints.KEY_ANTIALIASING, - RenderingHints.VALUE_ANTIALIAS_OFF); - - defaultHints.put(RenderingHints.KEY_RENDERING, - RenderingHints.VALUE_RENDER_DEFAULT); - - return defaultHints; - } - - public static int[] findSimpleIntegerArray (ColorModel cm, Raster raster) - { - if (cm == null || raster == null) - return null; - - if (! cm.getColorSpace().isCS_sRGB()) - return null; - - if (! (cm instanceof DirectColorModel)) - return null; - - DirectColorModel dcm = (DirectColorModel) cm; - - if (dcm.getRedMask() != 0x00FF0000 || dcm.getGreenMask() != 0x0000FF00 - || dcm.getBlueMask() != 0x000000FF) - return null; - - if (! (raster instanceof WritableRaster)) - return null; - - if (raster.getSampleModel().getDataType() != DataBuffer.TYPE_INT) - return null; - - if (! (raster.getDataBuffer() instanceof DataBufferInt)) - return null; - - DataBufferInt db = (DataBufferInt) raster.getDataBuffer(); - - if (db.getNumBanks() != 1) - return null; - - // Finally, we have determined that this is a single bank, [A]RGB-int - // buffer in sRGB space. It's worth checking all this, because it means - // that cairo can paint directly into the data buffer, which is very - // fast compared to all the normal copying and converting. - - return db.getData(); - } - - private void updateBufferedImage() - { - if (bimage != null && pixelConversionRequired) - { - int height = bimage.getHeight(); - int width = bimage.getWidth(); - for (int y = 0; y < height; ++y) - for (int x = 0; x < width; ++x) - bimage.setRGB(x, y, pixelBuffer[y*width+height]); - } - } - - private boolean drawImage(Image img, AffineTransform xform, - Color bgcolor, ImageObserver obs) - { - if (img == null) - return false; - - if (img instanceof GtkOffScreenImage - && img.getGraphics() instanceof GdkGraphics2D - && (xform == null || xform.getType() == AffineTransform.TYPE_IDENTITY - || xform.getType() == AffineTransform.TYPE_TRANSLATION)) - { - // we are being asked to flush a double buffer from Gdk - GdkGraphics2D g2 = (GdkGraphics2D) img.getGraphics(); - gdkDrawDrawable(g2, (int) xform.getTranslateX(), - (int) xform.getTranslateY()); - - updateBufferedImage(); - - return true; - } - else - { - // In this case, xform is an AffineTransform that transforms bounding - // box of the specified image from image space to user space. However - // when we pass this transform to cairo, cairo will use this transform - // to map "user coordinates" to "pixel" coordinates, which is the - // other way around. Therefore to get the "user -> pixel" transform - // that cairo wants from "image -> user" transform that we currently - // have, we will need to invert the transformation matrix. - AffineTransform invertedXform = new AffineTransform(); - - try - { - invertedXform = xform.createInverse(); - if (img instanceof BufferedImage) - { - // draw an image which has actually been loaded - // into memory fully - BufferedImage b = (BufferedImage) img; - return drawRaster(b.getColorModel(), b.getData(), - invertedXform, bgcolor); - } - else - return this.drawImage(GdkPixbufDecoder.createBufferedImage(img - .getSource()), - xform, bgcolor, obs); - } - catch (NoninvertibleTransformException e) - { - throw new ImagingOpException("Unable to invert transform " - + xform.toString()); - } - } - } - - ////////////////////////////////////////////////// - ////// Implementation of Graphics2D Methods ////// - ////////////////////////////////////////////////// - - public void draw(Shape s) - { - if (stroke != null && ! (stroke instanceof BasicStroke)) - { - fill(stroke.createStrokedShape(s)); - return; - } - - cairoNewPath(); - - if (s instanceof Rectangle2D) - { - Rectangle2D r = (Rectangle2D) s; - cairoRectangle(shifted(r.getX(), shiftDrawCalls), - shifted(r.getY(), shiftDrawCalls), r.getWidth(), - r.getHeight()); - } - else - walkPath(s.getPathIterator(null), shiftDrawCalls); - cairoStroke(); - - updateBufferedImage(); - } - - public void fill(Shape s) - { - cairoNewPath(); - if (s instanceof Rectangle2D) - { - Rectangle2D r = (Rectangle2D) s; - cairoRectangle(r.getX(), r.getY(), r.getWidth(), r.getHeight()); - } - else - walkPath(s.getPathIterator(null), false); - - cairoFill(); - - updateBufferedImage(); - } - - public void clip(Shape s) - { - // update it - if (clip == null || s == null) - clip = s; - else if (s instanceof Rectangle2D && clip instanceof Rectangle2D) - { - Rectangle2D r = (Rectangle2D) s; - Rectangle2D curr = (Rectangle2D) clip; - clip = curr.createIntersection(r); - } - else - throw new UnsupportedOperationException(); - - // draw it - if (clip != null) - { - cairoNewPath(); - if (clip instanceof Rectangle2D) - { - Rectangle2D r = (Rectangle2D) clip; - cairoRectangle(r.getX(), r.getY(), r.getWidth(), r.getHeight()); - } - else - walkPath(clip.getPathIterator(null), false); - - // cairoClosePath (); - cairoClip(); - } - } - - public Paint getPaint() - { - return paint; - } - - public AffineTransform getTransform() - { - return (AffineTransform) transform.clone(); - } - - public void setPaint(Paint p) - { - if (paint == null) - return; - - paint = p; - if (paint instanceof Color) - { - setColor((Color) paint); - } - else if (paint instanceof TexturePaint) - { - TexturePaint tp = (TexturePaint) paint; - BufferedImage img = tp.getImage(); - - // map the image to the anchor rectangle - int width = (int) tp.getAnchorRect().getWidth(); - int height = (int) tp.getAnchorRect().getHeight(); - - double scaleX = width / (double) img.getWidth(); - double scaleY = width / (double) img.getHeight(); - - AffineTransform at = new AffineTransform(scaleX, 0, 0, scaleY, 0, 0); - AffineTransformOp op = new AffineTransformOp(at, getRenderingHints()); - BufferedImage texture = op.filter(img, null); - int[] pixels = texture.getRGB(0, 0, width, height, null, 0, width); - setTexturePixels(pixels, width, height, width); - } - else if (paint instanceof GradientPaint) - { - GradientPaint gp = (GradientPaint) paint; - Point2D p1 = gp.getPoint1(); - Point2D p2 = gp.getPoint2(); - Color c1 = gp.getColor1(); - Color c2 = gp.getColor2(); - setGradient(p1.getX(), p1.getY(), p2.getX(), p2.getY(), c1.getRed(), - c1.getGreen(), c1.getBlue(), c1.getAlpha(), c2.getRed(), - c2.getGreen(), c2.getBlue(), c2.getAlpha(), gp.isCyclic()); - } - else - throw new java.lang.UnsupportedOperationException(); - } - - public void setTransform(AffineTransform tx) - { - transform = tx; - if (transform != null) - { - double[] m = new double[6]; - transform.getMatrix(m); - cairoSetMatrix(m); - } - } - - public void transform(AffineTransform tx) - { - if (transform == null) - transform = new AffineTransform(tx); - else - transform.concatenate(tx); - setTransform(transform); - if (clip != null) - { - // FIXME: this should actuall try to transform the shape - // rather than degrade to bounds. - Rectangle2D r = clip.getBounds2D(); - double[] coords = new double[] - { - r.getX(), r.getY(), r.getX() + r.getWidth(), - r.getY() + r.getHeight() - }; - try - { - tx.createInverse().transform(coords, 0, coords, 0, 2); - r.setRect(coords[0], coords[1], coords[2] - coords[0], - coords[3] - coords[1]); - clip = r; - } - catch (java.awt.geom.NoninvertibleTransformException e) - { - } - } - } - - public void rotate(double theta) - { - transform(AffineTransform.getRotateInstance(theta)); - } - - public void rotate(double theta, double x, double y) - { - transform(AffineTransform.getRotateInstance(theta, x, y)); - } - - public void scale(double sx, double sy) - { - transform(AffineTransform.getScaleInstance(sx, sy)); - } - - public void translate(double tx, double ty) - { - transform(AffineTransform.getTranslateInstance(tx, ty)); - } - - public void translate(int x, int y) - { - translate((double) x, (double) y); - } - - public void shear(double shearX, double shearY) - { - transform(AffineTransform.getShearInstance(shearX, shearY)); - } - - public Stroke getStroke() - { - return stroke; - } - - public void setStroke(Stroke st) - { - stroke = st; - if (stroke instanceof BasicStroke) - { - BasicStroke bs = (BasicStroke) stroke; - cairoSetLineCap(bs.getEndCap()); - cairoSetLineWidth(bs.getLineWidth()); - cairoSetLineJoin(bs.getLineJoin()); - cairoSetMiterLimit(bs.getMiterLimit()); - float[] dashes = bs.getDashArray(); - if (dashes != null) - { - double[] double_dashes = new double[dashes.length]; - for (int i = 0; i < dashes.length; i++) - double_dashes[i] = dashes[i]; - cairoSetDash(double_dashes, double_dashes.length, - (double) bs.getDashPhase()); - } - } - } - - //////////////////////////////////////////////// - ////// Implementation of Graphics Methods ////// - //////////////////////////////////////////////// - - public void setPaintMode() - { - setComposite(java.awt.AlphaComposite.SrcOver); - } - - public void setXORMode(Color c) - { - setComposite(new gnu.java.awt.BitwiseXORComposite(c)); - } - - public void setColor(Color c) - { - if (c == null) - c = Color.BLACK; - - fg = c; - paint = c; - cairoSetRGBColor(fg.getRed() / 255.0, fg.getGreen() / 255.0, - fg.getBlue() / 255.0); - cairoSetAlpha((fg.getAlpha() & 255) / 255.0); - } - - public Color getColor() - { - return fg; - } - - public void clipRect(int x, int y, int width, int height) - { - clip(new Rectangle(x, y, width, height)); - } - - public Shape getClip() - { - return clip.getBounds2D(); //getClipInDevSpace(); - } - - public Rectangle getClipBounds() - { - if (clip == null) - return null; - else - return clip.getBounds(); - } - - protected Rectangle2D getClipInDevSpace() - { - Rectangle2D uclip = clip.getBounds2D(); - if (transform == null) - return uclip; - else - { - Point2D pos = transform.transform(new Point2D.Double(uclip.getX(), - uclip.getY()), - (Point2D) null); - Point2D extent = transform.deltaTransform(new Point2D.Double(uclip - .getWidth(), - uclip - .getHeight()), - (Point2D) null); - return new Rectangle2D.Double(pos.getX(), pos.getY(), extent.getX(), - extent.getY()); - } - } - - public void setClip(int x, int y, int width, int height) - { - setClip(new Rectangle2D.Double((double) x, (double) y, (double) width, - (double) height)); - } - - public void setClip(Shape s) - { - clip = s; - if (s != null) - { - cairoNewPath(); - if (s instanceof Rectangle2D) - { - Rectangle2D r = (Rectangle2D) s; - cairoRectangle(r.getX(), r.getY(), r.getWidth(), r.getHeight()); - } - else - walkPath(s.getPathIterator(null), false); - - // cairoClosePath (); - cairoClip(); - } - } - - private static BasicStroke draw3DRectStroke = new BasicStroke(); - - public void draw3DRect(int x, int y, int width, int height, boolean raised) - { - Stroke tmp = stroke; - setStroke(draw3DRectStroke); - super.draw3DRect(x, y, width, height, raised); - setStroke(tmp); - updateBufferedImage(); - } - - public void fill3DRect(int x, int y, int width, int height, boolean raised) - { - Stroke tmp = stroke; - setStroke(draw3DRectStroke); - super.fill3DRect(x, y, width, height, raised); - setStroke(tmp); - updateBufferedImage(); - } - - public void drawRect(int x, int y, int width, int height) - { - draw(new Rectangle(x, y, width, height)); - } - - public void fillRect(int x, int y, int width, int height) - { - cairoNewPath(); - cairoRectangle(x, y, width, height); - cairoFill(); - } - - public void clearRect(int x, int y, int width, int height) - { - cairoSetRGBColor(bg.getRed() / 255.0, bg.getGreen() / 255.0, - bg.getBlue() / 255.0); - cairoSetAlpha(1.0); - cairoNewPath(); - cairoRectangle(x, y, width, height); - cairoFill(); - setColor(fg); - - updateBufferedImage(); - } - - public void setBackground(Color c) - { - bg = c; - } - - public Color getBackground() - { - return bg; - } - - private void doPolygon(int[] xPoints, int[] yPoints, int nPoints, - boolean close, boolean fill) - { - if (nPoints < 1) - return; - GeneralPath gp = new GeneralPath(PathIterator.WIND_EVEN_ODD); - gp.moveTo((float) xPoints[0], (float) yPoints[0]); - for (int i = 1; i < nPoints; i++) - gp.lineTo((float) xPoints[i], (float) yPoints[i]); - - if (close) - gp.closePath(); - - Shape sh = gp; - if (fill == false && stroke != null && ! (stroke instanceof BasicStroke)) - { - sh = stroke.createStrokedShape(gp); - fill = true; - } - - if (fill) - fill(sh); - else - draw(sh); - } - - public void drawLine(int x1, int y1, int x2, int y2) - { - int[] xp = new int[2]; - int[] yp = new int[2]; - - xp[0] = x1; - xp[1] = x2; - yp[0] = y1; - yp[1] = y2; - - doPolygon(xp, yp, 2, false, false); - } - - public void fillPolygon(int[] xPoints, int[] yPoints, int nPoints) - { - doPolygon(xPoints, yPoints, nPoints, true, true); - } - - public void drawPolygon(int[] xPoints, int[] yPoints, int nPoints) - { - doPolygon(xPoints, yPoints, nPoints, true, false); - } - - public void drawPolyline(int[] xPoints, int[] yPoints, int nPoints) - { - doPolygon(xPoints, yPoints, nPoints, false, false); - } - - private boolean drawRaster(ColorModel cm, Raster r, - AffineTransform imageToUser, Color bgcolor) - { - if (r == null) - return false; - - SampleModel sm = r.getSampleModel(); - DataBuffer db = r.getDataBuffer(); - - if (db == null || sm == null) - return false; - - if (cm == null) - cm = ColorModel.getRGBdefault(); - - double[] i2u = new double[6]; - if (imageToUser != null) - imageToUser.getMatrix(i2u); - else - { - i2u[0] = 1; - i2u[1] = 0; - i2u[2] = 0; - i2u[3] = 1; - i2u[4] = 0; - i2u[5] = 0; - } - - int[] pixels = findSimpleIntegerArray(cm, r); - - if (pixels == null) - { - // FIXME: I don't think this code will work correctly with a non-RGB - // MultiPixelPackedSampleModel. Although this entire method should - // probably be rewritten to better utilize Cairo's different supported - // data formats. - if (sm instanceof MultiPixelPackedSampleModel) - { - pixels = r.getPixels(0, 0, r.getWidth(), r.getHeight(), pixels); - for (int i = 0; i < pixels.length; i++) - pixels[i] = cm.getRGB(pixels[i]); - } - else - { - pixels = new int[r.getWidth() * r.getHeight()]; - for (int i = 0; i < pixels.length; i++) - pixels[i] = cm.getRGB(db.getElem(i)); - } - } - - // Change all transparent pixels in the image to the specified bgcolor, - // or (if there's no alpha) fill in an alpha channel so that it paints - // correctly. - if (cm.hasAlpha()) - { - if (bgcolor != null && cm.hasAlpha()) - for (int i = 0; i < pixels.length; i++) - { - if (cm.getAlpha(pixels[i]) == 0) - pixels[i] = bgcolor.getRGB(); - } - } - else - for (int i = 0; i < pixels.length; i++) - pixels[i] |= 0xFF000000; - - drawPixels(pixels, r.getWidth(), r.getHeight(), r.getWidth(), i2u); - - updateBufferedImage(); - - return true; - } - - public void drawRenderedImage(RenderedImage image, AffineTransform xform) - { - drawRaster(image.getColorModel(), image.getData(), xform, bg); - } - - public void drawRenderableImage(RenderableImage image, AffineTransform xform) - { - drawRenderedImage(image.createRendering(new RenderContext(xform)), xform); - } - - public boolean drawImage(Image img, AffineTransform xform, ImageObserver obs) - { - return drawImage(img, xform, bg, obs); - } - - public void drawImage(BufferedImage image, BufferedImageOp op, int x, int y) - { - Image filtered = op.filter(image, null); - drawImage(filtered, new AffineTransform(1f, 0f, 0f, 1f, x, y), bg, null); - } - - public boolean drawImage(Image img, int x, int y, ImageObserver observer) - { - return drawImage(img, new AffineTransform(1f, 0f, 0f, 1f, x, y), bg, - observer); - } - - /////////////////////////////////////////////// - ////// Unimplemented Stubs and Overloads ////// - /////////////////////////////////////////////// - - public boolean hit(Rectangle rect, Shape text, boolean onStroke) - { - throw new java.lang.UnsupportedOperationException(); - } - - public GraphicsConfiguration getDeviceConfiguration() - { - throw new java.lang.UnsupportedOperationException(); - } - - public void setComposite(Composite comp) - { - this.comp = comp; - - if (comp instanceof AlphaComposite) - { - AlphaComposite a = (AlphaComposite) comp; - cairoSetOperator(a.getRule()); - Color c = getColor(); - setColor(new Color(c.getRed(), c.getGreen(), c.getBlue(), - (int) (a.getAlpha() * ((float) c.getAlpha())))); - } - else - throw new java.lang.UnsupportedOperationException(); - } - - public void setRenderingHint(RenderingHints.Key hintKey, Object hintValue) - { - hints.put(hintKey, hintValue); - - if (hintKey.equals(RenderingHints.KEY_INTERPOLATION) - || hintKey.equals(RenderingHints.KEY_ALPHA_INTERPOLATION)) - { - if (hintValue.equals(RenderingHints.VALUE_INTERPOLATION_NEAREST_NEIGHBOR)) - cairoSurfaceSetFilter(0); - - else if (hintValue.equals(RenderingHints.VALUE_INTERPOLATION_BILINEAR)) - cairoSurfaceSetFilter(1); - - else if (hintValue.equals(RenderingHints.VALUE_ALPHA_INTERPOLATION_SPEED)) - cairoSurfaceSetFilter(2); - - else if (hintValue.equals(RenderingHints.VALUE_ALPHA_INTERPOLATION_QUALITY)) - cairoSurfaceSetFilter(3); - - else if (hintValue.equals(RenderingHints.VALUE_ALPHA_INTERPOLATION_DEFAULT)) - cairoSurfaceSetFilter(4); - } - - shiftDrawCalls = hints.containsValue(RenderingHints.VALUE_STROKE_NORMALIZE) - || hints.containsValue(RenderingHints.VALUE_STROKE_DEFAULT); - } - - public Object getRenderingHint(RenderingHints.Key hintKey) - { - return hints.get(hintKey); - } - - public void setRenderingHints(Map hints) - { - this.hints = new RenderingHints(getDefaultHints()); - this.hints.add(new RenderingHints(hints)); - - if (hints.containsKey(RenderingHints.KEY_INTERPOLATION)) - { - if (hints.containsValue(RenderingHints.VALUE_INTERPOLATION_NEAREST_NEIGHBOR)) - cairoSurfaceSetFilter(0); - - else if (hints.containsValue(RenderingHints.VALUE_INTERPOLATION_BILINEAR)) - cairoSurfaceSetFilter(1); - } - - if (hints.containsKey(RenderingHints.KEY_ALPHA_INTERPOLATION)) - { - if (hints.containsValue(RenderingHints.VALUE_ALPHA_INTERPOLATION_SPEED)) - cairoSurfaceSetFilter(2); - - else if (hints.containsValue(RenderingHints.VALUE_ALPHA_INTERPOLATION_QUALITY)) - cairoSurfaceSetFilter(3); - - else if (hints.containsValue(RenderingHints.VALUE_ALPHA_INTERPOLATION_DEFAULT)) - cairoSurfaceSetFilter(4); - } - - shiftDrawCalls = hints.containsValue(RenderingHints.VALUE_STROKE_NORMALIZE) - || hints.containsValue(RenderingHints.VALUE_STROKE_DEFAULT); - } - - public void addRenderingHints(Map hints) - { - this.hints.add(new RenderingHints(hints)); - } - - public RenderingHints getRenderingHints() - { - return hints; - } - - public Composite getComposite() - { - if (comp == null) - return AlphaComposite.SrcOver; - else - return comp; - } - - public FontRenderContext getFontRenderContext() - { - return new FontRenderContext(transform, true, true); - } - - public void copyArea(int x, int y, int width, int height, int dx, int dy) - { - throw new java.lang.UnsupportedOperationException(); - } - - public void drawArc(int x, int y, int width, int height, int startAngle, - int arcAngle) - { - draw(new Arc2D.Double((double) x, (double) y, (double) width, - (double) height, (double) startAngle, - (double) arcAngle, Arc2D.OPEN)); - } - - public boolean drawImage(Image img, int x, int y, Color bgcolor, - ImageObserver observer) - { - return drawImage(img, x, y, img.getWidth(observer), - img.getHeight(observer), bgcolor, observer); - } - - public boolean drawImage(Image img, int x, int y, int width, int height, - Color bgcolor, ImageObserver observer) - { - double scaleX = width / (double) img.getWidth(observer); - double scaleY = height / (double) img.getHeight(observer); - - return drawImage(img, new AffineTransform(scaleX, 0f, 0f, scaleY, x, y), - bgcolor, observer); - } - - public boolean drawImage(Image img, int x, int y, int width, int height, - ImageObserver observer) - { - return drawImage(img, x, y, width, height, bg, observer); - } - - public boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, - int sx1, int sy1, int sx2, int sy2, Color bgcolor, - ImageObserver observer) - { - if (img == null) - return false; - - Image subImage; - - int sourceWidth = sx2 - sx1; - int sourceHeight = sy2 - sy1; - - int destWidth = dx2 - dx1; - int destHeight = dy2 - dy1; - - double scaleX = destWidth / (double) sourceWidth; - double scaleY = destHeight / (double) sourceHeight; - - // Get the subimage of the source enclosed in the - // rectangle specified by sx1, sy1, sx2, sy2 - - if (img instanceof BufferedImage) - { - BufferedImage b = (BufferedImage) img; - subImage = b.getSubimage(sx1, sy1, sx2, sy2); - } - else - { - // FIXME: This code currently doesn't work. Null Pointer - // exception is thrown in this case. This happens - // because img.getSource() always returns null, since source gets - // never initialized when it is created with the help of - // createImage(int width, int height). - CropImageFilter filter = new CropImageFilter(sx1, sx2, sx2, sy2); - FilteredImageSource src = new FilteredImageSource(img.getSource(), - filter); - - subImage = Toolkit.getDefaultToolkit().createImage(src); - } - - return drawImage(subImage, - new AffineTransform(scaleX, 0, 0, scaleY, dx1, dy1), - bgcolor, observer); - } - - public boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, - int sx1, int sy1, int sx2, int sy2, - ImageObserver observer) - { - return drawImage(img, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2, bg, observer); - } - - public void drawOval(int x, int y, int width, int height) - { - drawArc(x, y, width, height, 0, 360); - } - - public void drawRoundRect(int x, int y, int width, int height, int arcWidth, - int arcHeight) - { - if (arcWidth > width) - arcWidth = width; - if (arcHeight > height) - arcHeight = height; - - int xx = x + width - arcWidth; - int yy = y + height - arcHeight; - - drawArc(x, y, arcWidth, arcHeight, 90, 90); - drawArc(xx, y, arcWidth, arcHeight, 0, 90); - drawArc(xx, yy, arcWidth, arcHeight, 270, 90); - drawArc(x, yy, arcWidth, arcHeight, 180, 90); - - int y1 = y + arcHeight / 2; - int y2 = y + height - arcHeight / 2; - drawLine(x, y1, x, y2); - drawLine(x + width, y1, x + width, y2); - - int x1 = x + arcWidth / 2; - int x2 = x + width - arcWidth / 2; - drawLine(x1, y, x2, y); - drawLine(x1, y + height, x2, y + height); - } - - // these are the most accelerated painting paths - native void cairoDrawGlyphVector(GdkFontPeer font, - float x, float y, int n, - int[] codes, float[] positions); - - native void cairoDrawGdkTextLayout(GdkTextLayout gl, - float x, float y); - - GdkFontPeer getFontPeer() - { - return (GdkFontPeer) getFont().getPeer(); - } - - public void drawGdkTextLayout(GdkTextLayout gl, float x, float y) - { - cairoDrawGdkTextLayout (gl, x, y); - updateBufferedImage (); - } - - public void drawString(String str, float x, float y) - { - drawGlyphVector(getFont().createGlyphVector(null, str), x, y); - updateBufferedImage (); - } - - public void drawString(String str, int x, int y) - { - drawString (str, (float) x, (float) y); - } - - public void drawString(AttributedCharacterIterator ci, int x, int y) - { - drawString (ci, (float) x, (float) y); - } - - public void drawGlyphVector(GlyphVector gv, float x, float y) - { - int n = gv.getNumGlyphs (); - int[] codes = gv.getGlyphCodes (0, n, null); - float[] positions = gv.getGlyphPositions (0, n, null); - - setFont (gv.getFont ()); - cairoDrawGlyphVector (getFontPeer(), x, y, n, codes, positions); - updateBufferedImage (); - } - - public void drawString(AttributedCharacterIterator ci, float x, float y) - { - GlyphVector gv = getFont().createGlyphVector(getFontRenderContext(), ci); - drawGlyphVector(gv, x, y); - } - - public void fillArc(int x, int y, int width, int height, int startAngle, - int arcAngle) - { - fill(new Arc2D.Double((double) x, (double) y, (double) width, - (double) height, (double) startAngle, - (double) arcAngle, Arc2D.OPEN)); - } - - public void fillOval(int x, int y, int width, int height) - { - fillArc(x, y, width, height, 0, 360); - } - - public void fillRoundRect(int x, int y, int width, int height, int arcWidth, - int arcHeight) - { - if (arcWidth > width) - arcWidth = width; - if (arcHeight > height) - arcHeight = height; - - int xx = x + width - arcWidth; - int yy = y + height - arcHeight; - - fillArc(x, y, arcWidth, arcHeight, 90, 90); - fillArc(xx, y, arcWidth, arcHeight, 0, 90); - fillArc(xx, yy, arcWidth, arcHeight, 270, 90); - fillArc(x, yy, arcWidth, arcHeight, 180, 90); - - fillRect(x, y + arcHeight / 2, width, height - arcHeight + 1); - fillRect(x + arcWidth / 2, y, width - arcWidth + 1, height); - } - - public Font getFont() - { - if (font == null) - return new Font("SansSerif", Font.PLAIN, 12); - return font; - } - - // Until such time as pango is happy to talk directly to cairo, we - // actually need to redirect some calls from the GtkFontPeer and - // GtkFontMetrics into the drawing kit and ask cairo ourselves. - - static native void releasePeerGraphicsResource(GdkFontPeer f); - - public FontMetrics getFontMetrics() - { - return getFontMetrics(getFont()); - } - - public FontMetrics getFontMetrics(Font f) - { - // the reason we go via the toolkit here is to try to get - // a cached object. the toolkit keeps such a cache. - return Toolkit.getDefaultToolkit().getFontMetrics(f); - } - - public void setFont(Font f) - { - if (f.getPeer() instanceof GdkFontPeer) - font = f; - else - font = - ((ClasspathToolkit)(Toolkit.getDefaultToolkit())) - .getFont(f.getName(), f.getAttributes()); - } - - public String toString() - { - return (getClass().getName() - + "[font=" + getFont().toString() - + ",color=" + fg.toString() - + "]"); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GdkGraphicsConfiguration.java b/libjava/gnu/java/awt/peer/gtk/GdkGraphicsConfiguration.java deleted file mode 100644 index bfad87acac0..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GdkGraphicsConfiguration.java +++ /dev/null @@ -1,138 +0,0 @@ -/* GdkGraphicsConfiguration.java -- describes characteristics of graphics - Copyright (C) 2000, 2001, 2002, 2003, 2004 Free Software Foundation - -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.java.awt.peer.gtk; - -import java.awt.BufferCapabilities; -import java.awt.GraphicsConfiguration; -import java.awt.GraphicsDevice; -import java.awt.ImageCapabilities; -import java.awt.Rectangle; - -import java.awt.geom.AffineTransform; - -import java.awt.image.BufferedImage; -import java.awt.image.ColorModel; -import java.awt.image.VolatileImage; - -public class GdkGraphicsConfiguration - extends GraphicsConfiguration -{ - GdkScreenGraphicsDevice gdkScreenGraphicsDevice; - ColorModel cm; - Rectangle bounds; - - public GtkToolkit getToolkit() - { - return gdkScreenGraphicsDevice.getToolkit(); - } - - public GdkGraphicsConfiguration(GdkScreenGraphicsDevice dev) - { - this.gdkScreenGraphicsDevice = dev; - cm = new BufferedImage(1, 1, BufferedImage.TYPE_INT_ARGB).getColorModel(); - bounds = getToolkit().getBounds(); - } - - public GraphicsDevice getDevice() - { - return gdkScreenGraphicsDevice; - } - - public BufferedImage createCompatibleImage(int w, int h) - { - return new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB); - } - - public BufferedImage createCompatibleImage(int w, int h, - int transparency) - { - return createCompatibleImage(w, h); - } - - public VolatileImage createCompatibleVolatileImage(int w, int h) - { - return new GtkVolatileImage(w, h); - } - - public VolatileImage createCompatibleVolatileImage(int w, int h, - ImageCapabilities caps) - throws java.awt.AWTException - { - return new GtkVolatileImage(w, h, caps); - } - - public ColorModel getColorModel() - { - return cm; - } - - public ColorModel getColorModel(int transparency) - { - return getColorModel(); - } - - public AffineTransform getDefaultTransform() - { - // FIXME: extract the GDK DPI information here. - return new AffineTransform(); - } - - public AffineTransform getNormalizingTransform() - { - // FIXME: extract the GDK DPI information here. - return new AffineTransform(); - } - - public Rectangle getBounds() - { - return bounds; - } - - public BufferCapabilities getBufferCapabilities() - { - return new BufferCapabilities(getImageCapabilities(), - getImageCapabilities(), - BufferCapabilities.FlipContents.UNDEFINED); - } - - public ImageCapabilities getImageCapabilities() - { - return new ImageCapabilities(false); - } - -} diff --git a/libjava/gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java b/libjava/gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java deleted file mode 100644 index 4f9d1c27af6..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GdkGraphicsEnvironment.java +++ /dev/null @@ -1,107 +0,0 @@ -/* GdkGraphicsEnvironment.java -- information about the graphics environment - Copyright (C) 2004, 2005 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.java.awt.peer.gtk; - -import java.awt.Font; -import java.awt.Graphics2D; -import java.awt.GraphicsDevice; -import java.awt.GraphicsEnvironment; -import java.awt.HeadlessException; -import java.awt.image.BufferedImage; -import java.util.Locale; - -public class GdkGraphicsEnvironment extends GraphicsEnvironment -{ - GtkToolkit gtkToolkit; - - public GtkToolkit getToolkit() - { - return gtkToolkit; - } - - public GdkGraphicsEnvironment (GtkToolkit tk) - { - super(); - gtkToolkit = tk; - } - - public GraphicsDevice[] getScreenDevices () - { - // FIXME: Support multiple screens, since GDK can. - return new GraphicsDevice[] { new GdkScreenGraphicsDevice (this) }; - } - - public GraphicsDevice getDefaultScreenDevice () - { - if (GraphicsEnvironment.isHeadless ()) - throw new HeadlessException (); - - return new GdkScreenGraphicsDevice (this); - } - - public Graphics2D createGraphics (BufferedImage image) - { - return new GdkGraphics2D (image); - } - - private native int nativeGetNumFontFamilies(); - private native void nativeGetFontFamilies(String[] family_names); - - public Font[] getAllFonts () - { - throw new java.lang.UnsupportedOperationException (); - } - - public String[] getAvailableFontFamilyNames () - { - String[] family_names; - int array_size; - - array_size = nativeGetNumFontFamilies(); - family_names = new String[array_size]; - - nativeGetFontFamilies(family_names); - return family_names; - } - - public String[] getAvailableFontFamilyNames (Locale l) - { - throw new java.lang.UnsupportedOperationException (); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GdkPixbufDecoder.java b/libjava/gnu/java/awt/peer/gtk/GdkPixbufDecoder.java deleted file mode 100644 index a3d82f62f87..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GdkPixbufDecoder.java +++ /dev/null @@ -1,675 +0,0 @@ -/* GdkPixbufDecoder.java -- Image data decoding object - Copyright (C) 2003, 2004, 2005 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.java.awt.peer.gtk; - -import gnu.classpath.Configuration; - -import java.awt.image.BufferedImage; -import java.awt.image.ColorModel; -import java.awt.image.DirectColorModel; -import java.awt.image.ImageConsumer; -import java.awt.image.ImageProducer; -import java.awt.image.Raster; -import java.awt.image.RenderedImage; -import java.io.DataOutput; -import java.io.IOException; -import java.io.InputStream; -import java.net.URL; -import java.util.ArrayList; -import java.util.Hashtable; -import java.util.Iterator; -import java.util.Locale; -import java.util.Vector; - -import javax.imageio.IIOImage; -import javax.imageio.ImageReadParam; -import javax.imageio.ImageReader; -import javax.imageio.ImageTypeSpecifier; -import javax.imageio.ImageWriteParam; -import javax.imageio.ImageWriter; -import javax.imageio.metadata.IIOMetadata; -import javax.imageio.spi.IIORegistry; -import javax.imageio.spi.ImageReaderSpi; -import javax.imageio.spi.ImageWriterSpi; -import javax.imageio.stream.ImageInputStream; -import javax.imageio.stream.ImageOutputStream; - -public class GdkPixbufDecoder extends gnu.java.awt.image.ImageDecoder -{ - static - { - if (Configuration.INIT_LOAD_LIBRARY) - { - System.loadLibrary("gtkpeer"); - } - initStaticState (); - } - - static native void initStaticState(); - private final int native_state = GtkGenericPeer.getUniqueInteger (); - private boolean initialized = false; - - // the current set of ImageConsumers for this decoder - Vector curr; - - // interface to GdkPixbuf - native void initState (); - native void pumpBytes (byte[] bytes, int len); - native void finish (); - static native void streamImage(int[] bytes, String format, int width, int height, boolean hasAlpha, DataOutput sink); - - // gdk-pixbuf provids data in RGBA format - static final ColorModel cm = new DirectColorModel (32, 0xff000000, - 0x00ff0000, - 0x0000ff00, - 0x000000ff); - public GdkPixbufDecoder (InputStream in) - { - super (in); - } - - public GdkPixbufDecoder (String filename) - { - super (filename); - } - - public GdkPixbufDecoder (URL url) - { - super (url); - } - - public GdkPixbufDecoder (byte[] imagedata, int imageoffset, int imagelength) - { - super (imagedata, imageoffset, imagelength); - } - - // called back by native side - void areaPrepared (int width, int height) - { - - if (curr == null) - return; - - for (int i = 0; i < curr.size (); i++) - { - ImageConsumer ic = (ImageConsumer) curr.elementAt (i); - ic.setDimensions (width, height); - ic.setColorModel (cm); - ic.setHints (ImageConsumer.RANDOMPIXELORDER); - } - } - - // called back by native side - void areaUpdated (int x, int y, int width, int height, - int pixels[], int scansize) - { - if (curr == null) - return; - - for (int i = 0; i < curr.size (); i++) - { - ImageConsumer ic = (ImageConsumer) curr.elementAt (i); - ic.setPixels (x, y, width, height, cm, pixels, 0, scansize); - } - } - - // called from an async image loader of one sort or another, this method - // repeatedly reads bytes from the input stream and passes them through a - // GdkPixbufLoader using the native method pumpBytes. pumpBytes in turn - // decodes the image data and calls back areaPrepared and areaUpdated on - // this object, feeding back decoded pixel blocks, which we pass to each - // of the ImageConsumers in the provided Vector. - - public void produce (Vector v, InputStream is) throws IOException - { - curr = v; - - byte bytes[] = new byte[4096]; - int len = 0; - initState(); - while ((len = is.read (bytes)) != -1) - pumpBytes (bytes, len); - - for (int i = 0; i < curr.size (); i++) - { - ImageConsumer ic = (ImageConsumer) curr.elementAt (i); - ic.imageComplete (ImageConsumer.STATICIMAGEDONE); - } - - curr = null; - } - - public void finalize() - { - finish(); - } - - - public static class ImageFormatSpec - { - public String name; - public boolean writable = false; - public ArrayList mimeTypes = new ArrayList(); - public ArrayList extensions = new ArrayList(); - - public ImageFormatSpec(String name, boolean writable) - { - this.name = name; - this.writable = writable; - } - - public synchronized void addMimeType(String m) - { - mimeTypes.add(m); - } - - public synchronized void addExtension(String e) - { - extensions.add(e); - } - } - - static ArrayList imageFormatSpecs; - - public static ImageFormatSpec registerFormat(String name, boolean writable) - { - ImageFormatSpec ifs = new ImageFormatSpec(name, writable); - synchronized(GdkPixbufDecoder.class) - { - if (imageFormatSpecs == null) - imageFormatSpecs = new ArrayList(); - imageFormatSpecs.add(ifs); - } - return ifs; - } - - static String[] getFormatNames(boolean writable) - { - ArrayList names = new ArrayList(); - synchronized (imageFormatSpecs) - { - Iterator i = imageFormatSpecs.iterator(); - while (i.hasNext()) - { - ImageFormatSpec ifs = (ImageFormatSpec) i.next(); - if (writable && !ifs.writable) - continue; - names.add(ifs.name); - - /* - * In order to make the filtering code work, we need to register - * this type under every "format name" likely to be used as a synonym. - * This generally means "all the extensions people might use". - */ - - Iterator j = ifs.extensions.iterator(); - while (j.hasNext()) - names.add((String) j.next()); - } - } - Object[] objs = names.toArray(); - String[] strings = new String[objs.length]; - for (int i = 0; i < objs.length; ++i) - strings[i] = (String) objs[i]; - return strings; - } - - static String[] getFormatExtensions(boolean writable) - { - ArrayList extensions = new ArrayList(); - synchronized (imageFormatSpecs) - { - Iterator i = imageFormatSpecs.iterator(); - while (i.hasNext()) - { - ImageFormatSpec ifs = (ImageFormatSpec) i.next(); - if (writable && !ifs.writable) - continue; - Iterator j = ifs.extensions.iterator(); - while (j.hasNext()) - extensions.add((String) j.next()); - } - } - Object[] objs = extensions.toArray(); - String[] strings = new String[objs.length]; - for (int i = 0; i < objs.length; ++i) - strings[i] = (String) objs[i]; - return strings; - } - - static String[] getFormatMimeTypes(boolean writable) - { - ArrayList mimeTypes = new ArrayList(); - synchronized (imageFormatSpecs) - { - Iterator i = imageFormatSpecs.iterator(); - while (i.hasNext()) - { - ImageFormatSpec ifs = (ImageFormatSpec) i.next(); - if (writable && !ifs.writable) - continue; - Iterator j = ifs.mimeTypes.iterator(); - while (j.hasNext()) - mimeTypes.add((String) j.next()); - } - } - Object[] objs = mimeTypes.toArray(); - String[] strings = new String[objs.length]; - for (int i = 0; i < objs.length; ++i) - strings[i] = (String) objs[i]; - return strings; - } - - - static String findFormatName(Object ext, boolean needWritable) - { - if (ext == null) - throw new IllegalArgumentException("extension is null"); - - if (!(ext instanceof String)) - throw new IllegalArgumentException("extension is not a string"); - - String str = (String) ext; - - Iterator i = imageFormatSpecs.iterator(); - while (i.hasNext()) - { - ImageFormatSpec ifs = (ImageFormatSpec) i.next(); - - if (needWritable && !ifs.writable) - continue; - - if (ifs.name.equals(str)) - return str; - - Iterator j = ifs.extensions.iterator(); - while (j.hasNext()) - { - String extension = (String)j.next(); - if (extension.equals(str)) - return ifs.name; - } - - j = ifs.mimeTypes.iterator(); - while (j.hasNext()) - { - String mimeType = (String)j.next(); - if (mimeType.equals(str)) - return ifs.name; - } - } - throw new IllegalArgumentException("unknown extension '" + str + "'"); - } - - private static GdkPixbufReaderSpi readerSpi; - private static GdkPixbufWriterSpi writerSpi; - - public static synchronized GdkPixbufReaderSpi getReaderSpi() - { - if (readerSpi == null) - readerSpi = new GdkPixbufReaderSpi(); - return readerSpi; - } - - public static synchronized GdkPixbufWriterSpi getWriterSpi() - { - if (writerSpi == null) - writerSpi = new GdkPixbufWriterSpi(); - return writerSpi; - } - - public static void registerSpis(IIORegistry reg) - { - reg.registerServiceProvider(getReaderSpi(), ImageReaderSpi.class); - reg.registerServiceProvider(getWriterSpi(), ImageWriterSpi.class); - } - - public static class GdkPixbufWriterSpi extends ImageWriterSpi - { - public GdkPixbufWriterSpi() - { - super("GdkPixbuf", "2.x", - GdkPixbufDecoder.getFormatNames(true), - GdkPixbufDecoder.getFormatExtensions(true), - GdkPixbufDecoder.getFormatMimeTypes(true), - "gnu.java.awt.peer.gtk.GdkPixbufDecoder$GdkPixbufWriter", - new Class[] { ImageOutputStream.class }, - new String[] { "gnu.java.awt.peer.gtk.GdkPixbufDecoder$GdkPixbufReaderSpi" }, - false, null, null, null, null, - false, null, null, null, null); - } - - public boolean canEncodeImage(ImageTypeSpecifier ts) - { - return true; - } - - public ImageWriter createWriterInstance(Object ext) - { - return new GdkPixbufWriter(this, ext); - } - - public String getDescription(java.util.Locale loc) - { - return "GdkPixbuf Writer SPI"; - } - - } - - public static class GdkPixbufReaderSpi extends ImageReaderSpi - { - public GdkPixbufReaderSpi() - { - super("GdkPixbuf", "2.x", - GdkPixbufDecoder.getFormatNames(false), - GdkPixbufDecoder.getFormatExtensions(false), - GdkPixbufDecoder.getFormatMimeTypes(false), - "gnu.java.awt.peer.gtk.GdkPixbufDecoder$GdkPixbufReader", - new Class[] { ImageInputStream.class }, - new String[] { "gnu.java.awt.peer.gtk.GdkPixbufDecoder$GdkPixbufWriterSpi" }, - false, null, null, null, null, - false, null, null, null, null); - } - - public boolean canDecodeInput(Object obj) - { - return true; - } - - public ImageReader createReaderInstance(Object ext) - { - return new GdkPixbufReader(this, ext); - } - - public String getDescription(Locale loc) - { - return "GdkPixbuf Reader SPI"; - } - } - - private static class GdkPixbufWriter - extends ImageWriter - { - String ext; - public GdkPixbufWriter(GdkPixbufWriterSpi ownerSpi, Object ext) - { - super(ownerSpi); - this.ext = findFormatName(ext, true); - } - - public IIOMetadata convertImageMetadata (IIOMetadata inData, - ImageTypeSpecifier imageType, - ImageWriteParam param) - { - return null; - } - - public IIOMetadata convertStreamMetadata (IIOMetadata inData, - ImageWriteParam param) - { - return null; - } - - public IIOMetadata getDefaultImageMetadata (ImageTypeSpecifier imageType, - ImageWriteParam param) - { - return null; - } - - public IIOMetadata getDefaultStreamMetadata (ImageWriteParam param) - { - return null; - } - - public void write (IIOMetadata streamMetadata, IIOImage i, ImageWriteParam param) - throws IOException - { - RenderedImage image = i.getRenderedImage(); - Raster ras = image.getData(); - int width = ras.getWidth(); - int height = ras.getHeight(); - ColorModel model = image.getColorModel(); - int[] pixels = GdkGraphics2D.findSimpleIntegerArray (image.getColorModel(), ras); - - if (pixels == null) - { - BufferedImage img = new BufferedImage(width, height, - (model != null && model.hasAlpha() ? - BufferedImage.TYPE_INT_ARGB - : BufferedImage.TYPE_INT_RGB)); - int[] pix = new int[4]; - for (int y = 0; y < height; ++y) - for (int x = 0; x < width; ++x) - img.setRGB(x, y, model.getRGB(ras.getPixel(x, y, pix))); - pixels = GdkGraphics2D.findSimpleIntegerArray (img.getColorModel(), - img.getRaster()); - model = img.getColorModel(); - } - - processImageStarted(1); - streamImage(pixels, this.ext, width, height, model.hasAlpha(), - (DataOutput) this.getOutput()); - processImageComplete(); - } - } - - private static class GdkPixbufReader - extends ImageReader - implements ImageConsumer - { - // ImageConsumer parts - GdkPixbufDecoder dec; - BufferedImage bufferedImage; - ColorModel defaultModel; - int width; - int height; - String ext; - - public GdkPixbufReader(GdkPixbufReaderSpi ownerSpi, Object ext) - { - super(ownerSpi); - this.ext = findFormatName(ext, false); - } - - public GdkPixbufReader(GdkPixbufReaderSpi ownerSpi, Object ext, GdkPixbufDecoder d) - { - this(ownerSpi, ext); - dec = d; - } - - public void setDimensions(int w, int h) - { - processImageStarted(1); - width = w; - height = h; - } - - public void setProperties(Hashtable props) {} - - public void setColorModel(ColorModel model) - { - defaultModel = model; - } - - public void setHints(int flags) {} - - public void setPixels(int x, int y, int w, int h, - ColorModel model, byte[] pixels, - int offset, int scansize) - { - } - - public void setPixels(int x, int y, int w, int h, - ColorModel model, int[] pixels, - int offset, int scansize) - { - if (model == null) - model = defaultModel; - - if (bufferedImage == null) - { - bufferedImage = new BufferedImage (width, height, (model != null && model.hasAlpha() ? - BufferedImage.TYPE_INT_ARGB - : BufferedImage.TYPE_INT_RGB)); - } - - int pixels2[]; - if (model != null) - { - pixels2 = new int[pixels.length]; - for (int yy = 0; yy < h; yy++) - for (int xx = 0; xx < w; xx++) - { - int i = yy * scansize + xx; - pixels2[i] = model.getRGB (pixels[i]); - } - } - else - pixels2 = pixels; - - bufferedImage.setRGB (x, y, w, h, pixels2, offset, scansize); - processImageProgress(y / (height == 0 ? 1 : height)); - } - - public void imageComplete(int status) - { - processImageComplete(); - } - - public BufferedImage getBufferedImage() - { - if (bufferedImage == null && dec != null) - dec.startProduction (this); - return bufferedImage; - } - - // ImageReader parts - - public int getNumImages(boolean allowSearch) - throws IOException - { - return 1; - } - - public IIOMetadata getImageMetadata(int i) - { - return null; - } - - public IIOMetadata getStreamMetadata() - throws IOException - { - return null; - } - - public Iterator getImageTypes(int imageIndex) - throws IOException - { - BufferedImage img = getBufferedImage(); - Vector vec = new Vector(); - vec.add(new ImageTypeSpecifier(img)); - return vec.iterator(); - } - - public int getHeight(int imageIndex) - throws IOException - { - return getBufferedImage().getHeight(); - } - - public int getWidth(int imageIndex) - throws IOException - { - return getBufferedImage().getWidth(); - } - - public void setInput(Object input, - boolean seekForwardOnly, - boolean ignoreMetadata) - { - super.setInput(input, seekForwardOnly, ignoreMetadata); - dec = new GdkPixbufDecoder((InputStream) getInput()); - } - - public BufferedImage read(int imageIndex, ImageReadParam param) - throws IOException - { - return getBufferedImage (); - } - } - - // remaining helper class and static method is a convenience for the Gtk - // peers, for loading a BufferedImage in off a disk file without going - // through the whole imageio system. - - public static BufferedImage createBufferedImage (String filename) - { - GdkPixbufReader r = new GdkPixbufReader (getReaderSpi(), - "png", // reader auto-detects, doesn't matter - new GdkPixbufDecoder (filename)); - return r.getBufferedImage (); - } - - public static BufferedImage createBufferedImage (URL u) - { - GdkPixbufReader r = new GdkPixbufReader (getReaderSpi(), - "png", // reader auto-detects, doesn't matter - new GdkPixbufDecoder (u)); - return r.getBufferedImage (); - } - - public static BufferedImage createBufferedImage (byte[] imagedata, int imageoffset, - int imagelength) - { - GdkPixbufReader r = new GdkPixbufReader (getReaderSpi(), - "png", // reader auto-detects, doesn't matter - new GdkPixbufDecoder (imagedata, - imageoffset, - imagelength)); - return r.getBufferedImage (); - } - - public static BufferedImage createBufferedImage (ImageProducer producer) - { - GdkPixbufReader r = new GdkPixbufReader (getReaderSpi(), "png" /* ignored */, null); - producer.startProduction(r); - return r.getBufferedImage (); - } - -} diff --git a/libjava/gnu/java/awt/peer/gtk/GdkRobotPeer.java b/libjava/gnu/java/awt/peer/gtk/GdkRobotPeer.java deleted file mode 100644 index 6d0218d057a..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GdkRobotPeer.java +++ /dev/null @@ -1,94 +0,0 @@ -/* GdkRobot.java -- an XTest implementation of RobotPeer - Copyright (C) 2004, 2005 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.java.awt.peer.gtk; - -import java.awt.AWTException; -import java.awt.GraphicsDevice; -import java.awt.Rectangle; -import java.awt.image.ColorModel; -import java.awt.image.DirectColorModel; -import java.awt.peer.RobotPeer; - -/** - * Implements the RobotPeer interface using the XTest extension. - * - * @author Thomas Fitzsimmons - */ -public class GdkRobotPeer implements RobotPeer -{ - // gdk-pixbuf provides data in RGBA format - static final ColorModel cm = new DirectColorModel (32, 0xff000000, - 0x00ff0000, - 0x0000ff00, - 0x000000ff); - - public GdkRobotPeer (GraphicsDevice screen) throws AWTException - { - // FIXME: make use of screen parameter when GraphicsDevice is - // implemented. - if (!initXTest ()) - throw new AWTException ("XTest extension not supported"); - } - - native boolean initXTest (); - - // RobotPeer methods - public native void mouseMove (int x, int y); - public native void mousePress (int buttons); - public native void mouseRelease (int buttons); - public native void mouseWheel (int wheelAmt); - public native void keyPress (int keycode); - public native void keyRelease (int keycode); - native int[] nativeGetRGBPixels (int x, int y, int width, int height); - - public int getRGBPixel (int x, int y) - { - return cm.getRGB (nativeGetRGBPixels (x, y, 1, 1)[0]); - } - - public int[] getRGBPixels (Rectangle r) - { - int[] gdk_pixels = nativeGetRGBPixels (r.x, r.y, r.width, r.height); - int[] pixels = new int[r.width * r.height]; - - for (int i = 0; i < r.width * r.height; i++) - pixels[i] = cm.getRGB (gdk_pixels[i]); - - return pixels; - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GdkScreenGraphicsDevice.java b/libjava/gnu/java/awt/peer/gtk/GdkScreenGraphicsDevice.java deleted file mode 100644 index 2bf9d23db94..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GdkScreenGraphicsDevice.java +++ /dev/null @@ -1,115 +0,0 @@ -/* GdkScreenGraphicsDevice.java -- information about a screen device - Copyright (C) 2004, 2005 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.java.awt.peer.gtk; - -import java.awt.Dimension; -import java.awt.DisplayMode; -import java.awt.GraphicsConfiguration; -import java.awt.GraphicsDevice; - -public class GdkScreenGraphicsDevice extends GraphicsDevice -{ - GdkGraphicsEnvironment env; - - public GtkToolkit getToolkit() - { - return env.getToolkit(); - } - - public GdkScreenGraphicsDevice (GdkGraphicsEnvironment e) - { - super (); - env = e; - } - - public int getType () - { - return GraphicsDevice.TYPE_RASTER_SCREEN; - } - - public String getIDstring () - { - // FIXME: query X for this string - return "default GDK device ID string"; - } - - public GraphicsConfiguration[] getConfigurations () - { - // FIXME: query X for the list of possible configurations - return new GraphicsConfiguration [] { new GdkGraphicsConfiguration(this) }; - } - - public GraphicsConfiguration getDefaultConfiguration () - { - - // FIXME: query X for default configuration - return new GdkGraphicsConfiguration(this); - } - - - /** - * Returns the current display mode of this device, or null if unknown. - * - * @return the current display mode - * @see #setDisplayMode(DisplayMode) - * @see #getDisplayModes() - * @since 1.4 - */ - public DisplayMode getDisplayMode() - { - // determine display mode - Dimension dim = getToolkit().getScreenSize(); - DisplayMode mode = new DisplayMode(dim.width, dim.height, 0, - DisplayMode.REFRESH_RATE_UNKNOWN); - return mode; - } - - /** - * This device does not yet support fullscreen exclusive mode, so this - * returns false. - * - * @return false - * @since 1.4 - */ - public boolean isFullScreenSupported() - { - return false; - } - -} diff --git a/libjava/gnu/java/awt/peer/gtk/GdkTextLayout.java b/libjava/gnu/java/awt/peer/gtk/GdkTextLayout.java deleted file mode 100644 index ff51745f26c..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GdkTextLayout.java +++ /dev/null @@ -1,434 +0,0 @@ -/* GdkTextLayout.java - Copyright (C) 2003, 2005 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.java.awt.peer.gtk; - -import gnu.classpath.Configuration; -import gnu.java.awt.peer.ClasspathTextLayoutPeer; - -import java.awt.Font; -import java.awt.Graphics2D; -import java.awt.Shape; -import java.awt.font.FontRenderContext; -import java.awt.font.GlyphMetrics; -import java.awt.font.GlyphVector; -import java.awt.font.TextAttribute; -import java.awt.font.TextHitInfo; -import java.awt.font.TextLayout; -import java.awt.geom.AffineTransform; -import java.awt.geom.GeneralPath; -import java.awt.geom.Rectangle2D; -import java.text.AttributedCharacterIterator; -import java.text.AttributedString; -import java.text.CharacterIterator; - -/** - * This is an implementation of the text layout peer interface which - * delegates all the hard work to pango. - * - * @author Graydon Hoare - */ - -public class GdkTextLayout - implements ClasspathTextLayoutPeer -{ - // native side, plumbing, etc. - static - { - if (Configuration.INIT_LOAD_LIBRARY) - { - System.loadLibrary("gtkpeer"); - } - initStaticState (); - } - private native void setText(String str); - private native void getExtents(double[] inkExtents, - double[] logExtents); - private native void indexToPos(int idx, double[] pos); - private native void initState (); - private native void dispose (); - static native void initStaticState(); - private final int native_state = GtkGenericPeer.getUniqueInteger (); - protected void finalize () - { - dispose (); - } - - // we hold on to these to make sure we can render when presented - // with non-GdkGraphics2D paint targets - private AttributedString attributedString; - private FontRenderContext fontRenderContext; - - public GdkTextLayout(AttributedString str, FontRenderContext frc) - { - initState(); - attributedString = str; - fontRenderContext = frc; - } - - protected class CharacterIteratorProxy - implements CharacterIterator - { - public CharacterIterator target; - public int begin; - public int limit; - public int index; - - public CharacterIteratorProxy (CharacterIterator ci) - { - target = ci; - } - - public int getBeginIndex () - { - return begin; - } - - public int getEndIndex () - { - return limit; - } - - public int getIndex () - { - return index; - } - - public char setIndex (int idx) - throws IllegalArgumentException - { - if (idx < begin || idx >= limit) - throw new IllegalArgumentException (); - char ch = target.setIndex (idx); - index = idx; - return ch; - } - - public char first () - { - int save = target.getIndex (); - char ch = target.setIndex (begin); - target.setIndex (save); - return ch; - } - - public char last () - { - if (begin == limit) - return this.first (); - - int save = target.getIndex (); - char ch = target.setIndex (limit - 1); - target.setIndex (save); - return ch; - } - - public char current () - { - return target.current(); - } - - public char next () - { - if (index >= limit - 1) - return CharacterIterator.DONE; - else - { - index++; - return target.next(); - } - } - - public char previous () - { - if (index <= begin) - return CharacterIterator.DONE; - else - { - index--; - return target.previous (); - } - } - - public Object clone () - { - CharacterIteratorProxy cip = new CharacterIteratorProxy (this.target); - cip.begin = this.begin; - cip.limit = this.limit; - cip.index = this.index; - return cip; - } - - } - - - // public side - - public void draw (Graphics2D g2, float x, float y) - { - if (g2 instanceof GdkGraphics2D) - { - // we share pango structures directly with GdkGraphics2D - // when legal - GdkGraphics2D gg2 = (GdkGraphics2D) g2; - gg2.drawGdkTextLayout(this, x, y); - } - else - { - // falling back to a rather tedious layout algorithm when - // not legal - AttributedCharacterIterator ci = attributedString.getIterator (); - CharacterIteratorProxy proxy = new CharacterIteratorProxy (ci); - Font defFont = g2.getFont (); - - /* Note: this implementation currently only interprets FONT text - * attributes. There is a reasonable argument to be made for some - * attributes being interpreted out here, where we have control of the - * Graphics2D and can construct or derive new fonts, and some - * attributes being interpreted by the GlyphVector itself. So far, for - * all attributes except FONT we do neither. - */ - - for (char c = ci.first (); - c != CharacterIterator.DONE; - c = ci.next ()) - { - proxy.begin = ci.getIndex (); - proxy.limit = ci.getRunLimit(TextAttribute.FONT); - if (proxy.limit <= proxy.begin) - continue; - - proxy.index = proxy.begin; - - Object fnt = ci.getAttribute(TextAttribute.FONT); - GlyphVector gv; - if (fnt instanceof Font) - gv = ((Font)fnt).createGlyphVector (fontRenderContext, proxy); - else - gv = defFont.createGlyphVector (fontRenderContext, proxy); - - g2.drawGlyphVector (gv, x, y); - - int n = gv.getNumGlyphs (); - for (int i = 0; i < n; ++i) - { - GlyphMetrics gm = gv.getGlyphMetrics (i); - if (gm.getAdvanceX() == gm.getAdvance ()) - x += gm.getAdvanceX (); - else - y += gm.getAdvanceY (); - } - } - } - } - - public TextHitInfo getStrongCaret (TextHitInfo hit1, - TextHitInfo hit2) - { - throw new Error("not implemented"); - } - - public byte getBaseline () - { - throw new Error("not implemented"); - } - - public boolean isLeftToRight () - { - throw new Error("not implemented"); - } - - public boolean isVertical () - { - throw new Error("not implemented"); - } - - public float getAdvance () - { - throw new Error("not implemented"); - } - - public float getAscent () - { - throw new Error("not implemented"); - } - - public float getDescent () - { - throw new Error("not implemented"); - } - - public float getLeading () - { - throw new Error("not implemented"); - } - - public int getCharacterCount () - { - throw new Error("not implemented"); - } - - public byte getCharacterLevel (int index) - { - throw new Error("not implemented"); - } - - public float[] getBaselineOffsets () - { - throw new Error("not implemented"); - } - - public Shape getBlackBoxBounds (int firstEndpoint, int secondEndpoint) - { - throw new Error("not implemented"); - } - - public Rectangle2D getBounds () - { - double[] inkExtents = new double[4]; - double[] logExtents = new double[4]; - getExtents(inkExtents, logExtents); - return new Rectangle2D.Double(logExtents[0], logExtents[1], - logExtents[2], logExtents[3]); - } - - public float[] getCaretInfo (TextHitInfo hit, Rectangle2D bounds) - { - throw new Error("not implemented"); - } - - public Shape getCaretShape (TextHitInfo hit, Rectangle2D bounds) - { - throw new Error("not implemented"); - } - - public Shape[] getCaretShapes (int offset, Rectangle2D bounds, - TextLayout.CaretPolicy policy) - { - throw new Error("not implemented"); - } - - public Shape getLogicalHighlightShape (int firstEndpoint, int secondEndpoint, - Rectangle2D bounds) - { - AffineTransform at = new AffineTransform(); - GeneralPath gp = new GeneralPath(); - double [] rect = new double[4]; - Rectangle2D tmp = new Rectangle2D.Double(); - for (int i = firstEndpoint; i <= secondEndpoint; ++i) - { - indexToPos(i, rect); - tmp.setRect(rect[0], rect[1], rect[2], rect[3]); - Rectangle2D.intersect(tmp, bounds, tmp); - gp.append(tmp.getPathIterator(at), false); - } - return gp; - } - - public int[] getLogicalRangesForVisualSelection (TextHitInfo firstEndpoint, - TextHitInfo secondEndpoint) - { - throw new Error("not implemented"); - } - - public TextHitInfo getNextLeftHit (int offset, TextLayout.CaretPolicy policy) - { - throw new Error("not implemented"); - } - public TextHitInfo getNextRightHit (int offset, TextLayout.CaretPolicy policy) - { - throw new Error("not implemented"); - } - public TextHitInfo hitTestChar (float x, float y, Rectangle2D bounds) - { - throw new Error("not implemented"); - } - public TextHitInfo getVisualOtherHit (TextHitInfo hit) - { - throw new Error("not implemented"); - } - - public float getVisibleAdvance () - { - throw new Error("not implemented"); - } - - public Shape getOutline (AffineTransform tx) - { - throw new Error("not implemented"); - } - - public Shape getVisualHighlightShape (TextHitInfo firstEndpoint, - TextHitInfo secondEndpoint, - Rectangle2D bounds) - { - throw new Error("not implemented"); - } - - - public TextLayout getJustifiedLayout (float justificationWidth) - { - throw new Error("not implemented"); - } - - public void handleJustify (float justificationWidth) - { - throw new Error("not implemented"); - } - - public Object clone () - { - throw new Error("not implemented"); - } - - public int hashCode () - { - throw new Error("not implemented"); - } - - public boolean equals (ClasspathTextLayoutPeer tl) - { - throw new Error("not implemented"); - } - - public String toString () - { - throw new Error("not implemented"); - } - -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkButtonPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkButtonPeer.java deleted file mode 100644 index ab5df9f463f..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkButtonPeer.java +++ /dev/null @@ -1,107 +0,0 @@ -/* GtkButtonPeer.java -- Implements ButtonPeer with GTK - Copyright (C) 1998, 1999, 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.java.awt.peer.gtk; - -import java.awt.AWTEvent; -import java.awt.Button; -import java.awt.Component; -import java.awt.Point; -import java.awt.event.KeyEvent; -import java.awt.event.MouseEvent; -import java.awt.peer.ButtonPeer; - -public class GtkButtonPeer extends GtkComponentPeer - implements ButtonPeer -{ - native void create (String label); - - public native void connectSignals (); - - native void gtkWidgetModifyFont (String name, int style, int size); - native void gtkSetLabel (String label); - native void gtkWidgetSetForeground (int red, int green, int blue); - native void gtkWidgetSetBackground (int red, int green, int blue); - native void gtkActivate (); - native void gtkWidgetRequestFocus (); - native void setNativeBounds (int x, int y, int width, int height); - - public GtkButtonPeer (Button b) - { - super (b); - } - - void create () - { - create (((Button) awtComponent).getLabel ()); - } - - public void setLabel (String label) - { - gtkSetLabel(label); - } - - public void handleEvent (AWTEvent e) - { - if (e.getID () == MouseEvent.MOUSE_RELEASED && isEnabled ()) - { - MouseEvent me = (MouseEvent) e; - Point p = me.getPoint(); - p.translate(((Component) me.getSource()).getX(), - ((Component) me.getSource()).getY()); - if (!me.isConsumed () - && (me.getModifiersEx () & MouseEvent.BUTTON1_DOWN_MASK) != 0 - && awtComponent.getBounds().contains(p)) - postActionEvent (((Button) awtComponent).getActionCommand (), - me.getModifiersEx ()); - } - - if (e.getID () == KeyEvent.KEY_PRESSED) - { - KeyEvent ke = (KeyEvent) e; - if (!ke.isConsumed () && ke.getKeyCode () == KeyEvent.VK_SPACE) - { - postActionEvent (((Button) awtComponent).getActionCommand (), - ke.getModifiersEx ()); - gtkActivate (); - } - } - - super.handleEvent (e); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkCanvasPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkCanvasPeer.java deleted file mode 100644 index dc21761209e..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkCanvasPeer.java +++ /dev/null @@ -1,100 +0,0 @@ -/* GtkCanvasPeer.java - Copyright (C) 1998, 1999 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.java.awt.peer.gtk; - -import java.awt.AWTEvent; -import java.awt.Canvas; -import java.awt.Dimension; -import java.awt.Graphics; -import java.awt.event.PaintEvent; -import java.awt.peer.CanvasPeer; - -public class GtkCanvasPeer extends GtkComponentPeer implements CanvasPeer -{ - native void create (); - - public GtkCanvasPeer (Canvas c) - { - super (c); - } - - public Graphics getGraphics () - { - if (GtkToolkit.useGraphics2D ()) - return new GdkGraphics2D (this); - else - return new GdkGraphics (this); - } - - public void handleEvent (AWTEvent event) - { - int id = event.getID(); - - switch (id) - { - case PaintEvent.PAINT: - case PaintEvent.UPDATE: - { - try - { - Graphics g = getGraphics (); - g.setClip (((PaintEvent)event).getUpdateRect()); - - if (id == PaintEvent.PAINT) - awtComponent.paint (g); - else - awtComponent.update (g); - - g.dispose (); - } - catch (InternalError e) - { - System.err.println (e); - } - } - break; - } - } - - /* Preferred size for a drawing widget is always what the user requested */ - public Dimension getPreferredSize () - { - return awtComponent.getSize (); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java deleted file mode 100644 index 46b0733d363..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java +++ /dev/null @@ -1,86 +0,0 @@ -/* GtkCheckboxGroupPeer.java - Wrap a CheckboxGroup - Copyright (C) 2002 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.java.awt.peer.gtk; - -import java.awt.CheckboxGroup; -import java.util.WeakHashMap; - -// Note that there is no peer interface for a CheckboxGroup. We -// introduce our own in order to make it easier to keep a piece of -// native state for each one. -public class GtkCheckboxGroupPeer extends GtkGenericPeer -{ - // This maps from a CheckboxGroup to the native peer. - private static WeakHashMap map = new WeakHashMap (); - - // Find the native peer corresponding to a CheckboxGroup. - public static synchronized GtkCheckboxGroupPeer - getCheckboxGroupPeer (CheckboxGroup group) - { - if (group == null) - return null; - GtkCheckboxGroupPeer nat = (GtkCheckboxGroupPeer) map.get (group); - if (nat == null) - { - nat = new GtkCheckboxGroupPeer (); - map.put (group, nat); - } - return nat; - } - - private GtkCheckboxGroupPeer () - { - // We don't need any special state here. Note that we can't store - // a reference to the java-side CheckboxGroup. That would mean - // they could never be collected. - super (null); - } - - // Dispose of our native resources. - public native void dispose (); - - // Remove a given checkbox from this group. - public native void remove (GtkCheckboxPeer box); - - // When collected, clean up the native state. - protected void finalize () - { - dispose (); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java deleted file mode 100644 index 01a6e3102d9..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java +++ /dev/null @@ -1,69 +0,0 @@ -/* GtkCheckboxMenuItemPeer.java -- Implements CheckboxMenuItemPeer with GTK+ - Copyright (C) 1999, 2005 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.java.awt.peer.gtk; - -import java.awt.CheckboxMenuItem; -import java.awt.ItemSelectable; -import java.awt.event.ItemEvent; -import java.awt.peer.CheckboxMenuItemPeer; - -public class GtkCheckboxMenuItemPeer extends GtkMenuItemPeer - implements CheckboxMenuItemPeer -{ - native void create (String label); - - public GtkCheckboxMenuItemPeer (CheckboxMenuItem menu) - { - super (menu); - setState (menu.getState ()); - } - - public native void setState(boolean t); - - protected void postMenuActionEvent () - { - CheckboxMenuItem item = (CheckboxMenuItem)awtWidget; - q().postEvent (new ItemEvent ((ItemSelectable)awtWidget, - ItemEvent.ITEM_STATE_CHANGED, - item.getActionCommand(), - item.getState() ? ItemEvent.DESELECTED : ItemEvent.SELECTED)); - - super.postMenuActionEvent(); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkCheckboxPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkCheckboxPeer.java deleted file mode 100644 index 851757245aa..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkCheckboxPeer.java +++ /dev/null @@ -1,128 +0,0 @@ -/* GtkCheckboxPeer.java -- Implements CheckboxPeer with GTK - Copyright (C) 1998, 1999, 2002, 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., 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.java.awt.peer.gtk; - -import java.awt.Checkbox; -import java.awt.CheckboxGroup; -import java.awt.peer.CheckboxPeer; - -public class GtkCheckboxPeer extends GtkComponentPeer - implements CheckboxPeer -{ - // Group from last time it was set. - public GtkCheckboxGroupPeer old_group; - // The current state of the GTK checkbox. - private boolean currentState; - - public native void create (GtkCheckboxGroupPeer group); - public native void nativeSetCheckboxGroup (GtkCheckboxGroupPeer group); - public native void connectSignals (); - native void gtkWidgetModifyFont (String name, int style, int size); - native void gtkButtonSetLabel (String label); - native void gtkToggleButtonSetActive (boolean is_active); - - public GtkCheckboxPeer (Checkbox c) - { - super (c); - } - - // FIXME: we must be able to switch between a checkbutton and a - // radiobutton dynamically. - public void create () - { - Checkbox checkbox = (Checkbox) awtComponent; - CheckboxGroup g = checkbox.getCheckboxGroup (); - old_group = GtkCheckboxGroupPeer.getCheckboxGroupPeer (g); - create (old_group); - gtkToggleButtonSetActive (checkbox.getState ()); - gtkButtonSetLabel (checkbox.getLabel ()); - } - - public void setState (boolean state) - { - if (currentState != state) - gtkToggleButtonSetActive (state); - } - - public void setLabel (String label) - { - gtkButtonSetLabel (label); - } - - public void setCheckboxGroup (CheckboxGroup group) - { - GtkCheckboxGroupPeer gp - = GtkCheckboxGroupPeer.getCheckboxGroupPeer (group); - if (gp != old_group) - { - if (old_group != null) - old_group.remove (this); - nativeSetCheckboxGroup (gp); - old_group = gp; - } - } - - // Override the superclass postItemEvent so that the peer doesn't - // need information that we have. - public void postItemEvent (Object item, int stateChange) - { - Checkbox currentCheckBox = ((Checkbox)awtComponent); - // A firing of the event is only desired if the state has changed due to a - // button press. The currentCheckBox's state must be different from the - // one that the stateChange is changing to. - // stateChange = 1 if it goes from false -> true - // stateChange = 2 if it goes from true -> false - if (( !currentCheckBox.getState() && stateChange == 1) - || (currentCheckBox.getState() && stateChange == 2)) - { - super.postItemEvent (awtComponent, stateChange); - currentState = !currentCheckBox.getState(); - currentCheckBox.setState(currentState); - } - } - - public void dispose () - { - // Notify the group so that the native state can be cleaned up - // appropriately. - if (old_group != null) - old_group.remove (this); - super.dispose (); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkChoicePeer.java b/libjava/gnu/java/awt/peer/gtk/GtkChoicePeer.java deleted file mode 100644 index 6260b58e0e6..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkChoicePeer.java +++ /dev/null @@ -1,128 +0,0 @@ -/* GtkChoicePeer.java -- Implements ChoicePeer with GTK - Copyright (C) 1998, 1999, 2005 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.java.awt.peer.gtk; - -import java.awt.Choice; -import java.awt.event.ItemEvent; -import java.awt.peer.ChoicePeer; - -public class GtkChoicePeer extends GtkComponentPeer - implements ChoicePeer -{ - public GtkChoicePeer (Choice c) - { - super (c); - - int count = c.getItemCount (); - if (count > 0) - { - String items[] = new String[count]; - for (int i = 0; i < count; i++) - items[i] = c.getItem (i); - - append (items); - } - - int selected = c.getSelectedIndex(); - if (selected >= 0) - select(selected); - } - - native void create (); - - native void append (String items[]); - native int nativeGetSelected (); - native void nativeAdd (String item, int index); - native void nativeRemove (int index); - native void nativeRemoveAll (); - - public native void select (int position); - - public void add (String item, int index) - { - int before = nativeGetSelected(); - - nativeAdd (item, index); - - /* Generate an ItemEvent if we added the first one or - if we inserted at or before the currently selected item. */ - if ((before < 0) || (before >= index)) - { - // Must set our state before notifying listeners - ((Choice) awtComponent).select (((Choice) awtComponent).getItem (0)); - postItemEvent (((Choice) awtComponent).getItem (0), ItemEvent.SELECTED); - } - } - - public void remove (int index) - { - int before = nativeGetSelected(); - int after; - - nativeRemove (index); - after = nativeGetSelected(); - - /* Generate an ItemEvent if we are removing the currently selected item - and there are at least one item left. */ - if ((before == index) && (after >= 0)) - { - // Must set our state before notifying listeners - ((Choice) awtComponent).select (((Choice) awtComponent).getItem (0)); - postItemEvent (((Choice) awtComponent).getItem (0), ItemEvent.SELECTED); - } - } - - public void removeAll () - { - nativeRemoveAll(); - } - - public void addItem (String item, int position) - { - add (item, position); - } - - protected void choicePostItemEvent (String label, int stateChange) - { - // Must set our state before notifying listeners - if (stateChange == ItemEvent.SELECTED) - ((Choice) awtComponent).select (label); - postItemEvent (label, stateChange); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkClipboard.java b/libjava/gnu/java/awt/peer/gtk/GtkClipboard.java deleted file mode 100644 index c719cddb575..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkClipboard.java +++ /dev/null @@ -1,170 +0,0 @@ -/* GtkClipboard.java - Copyright (C) 1999, 2005 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.java.awt.peer.gtk; - -import java.awt.datatransfer.Clipboard; -import java.awt.datatransfer.ClipboardOwner; -import java.awt.datatransfer.DataFlavor; -import java.awt.datatransfer.StringSelection; -import java.awt.datatransfer.Transferable; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; - -public class GtkClipboard extends Clipboard -{ - /* the number of milliseconds that we'll wait around for the - owner of the GDK_SELECTION_PRIMARY selection to convert - the requested data */ - static final int SELECTION_RECEIVED_TIMEOUT = 5000; - - /* We currently only support transferring of text between applications */ - static String selection; - static Object selectionLock = new Object (); - - static boolean hasSelection = false; - - protected GtkClipboard() - { - super("System Clipboard"); - initNativeState(); - } - - public Transferable getContents(Object requestor) - { - synchronized (this) - { - if (hasSelection) - return contents; - } - - /* Java doesn't own the selection, so we need to ask X11 */ - // XXX: Does this hold with Swing too ? - synchronized (selectionLock) - { - requestStringConversion(); - - try - { - selectionLock.wait(SELECTION_RECEIVED_TIMEOUT); - } - catch (InterruptedException e) - { - return null; - } - - return selection == null ? null : new StringSelection(selection); - } - } - - void stringSelectionReceived(String newSelection) - { - synchronized (selectionLock) - { - selection = newSelection; - selectionLock.notify(); - } - } - - /* convert Java clipboard data into a String suitable for sending - to another application */ - synchronized String stringSelectionHandler() throws IOException - { - String selection = null; - - try - { - if (contents.isDataFlavorSupported(DataFlavor.stringFlavor)) - selection = (String)contents.getTransferData(DataFlavor.stringFlavor); - else if (contents.isDataFlavorSupported(DataFlavor.plainTextFlavor)) - { - StringBuffer sbuf = new StringBuffer(); - InputStreamReader reader; - char readBuf[] = new char[512]; - int numChars; - - reader = new InputStreamReader - ((InputStream) - contents.getTransferData(DataFlavor.plainTextFlavor), "UNICODE"); - - while (true) - { - numChars = reader.read(readBuf); - if (numChars == -1) - break; - sbuf.append(readBuf, 0, numChars); - } - - selection = new String(sbuf); - } - } - catch (Exception e) - { - } - - return selection; - } - - public synchronized void setContents(Transferable contents, - ClipboardOwner owner) - { - selectionGet(); - - this.contents = contents; - this.owner = owner; - - hasSelection = true; - } - - synchronized void selectionClear() - { - hasSelection = false; - - if (owner != null) - { - owner.lostOwnership(this, contents); - owner = null; - contents = null; - } - } - - native void initNativeState(); - static native void requestStringConversion(); - static native void selectionGet(); -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java deleted file mode 100644 index 61dbaadf054..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java +++ /dev/null @@ -1,662 +0,0 @@ -/* GtkComponentPeer.java -- Implements ComponentPeer with GTK - Copyright (C) 1998, 1999, 2002, 2004, 2005 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.java.awt.peer.gtk; - -import java.awt.AWTEvent; -import java.awt.AWTException; -import java.awt.BufferCapabilities; -import java.awt.Color; -import java.awt.Component; -import java.awt.Container; -import java.awt.Cursor; -import java.awt.Dimension; -import java.awt.Font; -import java.awt.FontMetrics; -import java.awt.Graphics; -import java.awt.Graphics2D; -import java.awt.GraphicsConfiguration; -import java.awt.Image; -import java.awt.Insets; -import java.awt.ItemSelectable; -import java.awt.Point; -import java.awt.Rectangle; -import java.awt.Toolkit; -import java.awt.Window; -import java.awt.event.FocusEvent; -import java.awt.event.ItemEvent; -import java.awt.event.KeyEvent; -import java.awt.event.MouseEvent; -import java.awt.event.PaintEvent; -import java.awt.image.ColorModel; -import java.awt.image.ImageObserver; -import java.awt.image.ImageProducer; -import java.awt.image.VolatileImage; -import java.awt.peer.ComponentPeer; - -public class GtkComponentPeer extends GtkGenericPeer - implements ComponentPeer -{ - VolatileImage backBuffer; - BufferCapabilities caps; - - Component awtComponent; - - Insets insets; - - boolean isInRepaint; - - /* this isEnabled differs from Component.isEnabled, in that it - knows if a parent is disabled. In that case Component.isEnabled - may return true, but our isEnabled will always return false */ - native boolean isEnabled (); - static native boolean modalHasGrab(); - - native int[] gtkWidgetGetForeground (); - native int[] gtkWidgetGetBackground (); - native void gtkWidgetGetDimensions (int[] dim); - native void gtkWidgetGetPreferredDimensions (int[] dim); - native void gtkWidgetGetLocationOnScreen (int[] point); - native void gtkWidgetSetCursor (int type); - native void gtkWidgetSetBackground (int red, int green, int blue); - native void gtkWidgetSetForeground (int red, int green, int blue); - native void gtkWidgetSetSensitive (boolean sensitive); - native void gtkWidgetSetParent (ComponentPeer parent); - native void gtkWidgetRequestFocus (); - native void gtkWidgetDispatchKeyEvent (int id, long when, int mods, - int keyCode, int keyLocation); - - native boolean isRealized (); - - void create () - { - throw new RuntimeException (); - } - - native void connectSignals (); - - protected GtkComponentPeer (Component awtComponent) - { - super (awtComponent); - this.awtComponent = awtComponent; - insets = new Insets (0, 0, 0, 0); - - create (); - - connectSignals (); - - if (awtComponent.getForeground () != null) - setForeground (awtComponent.getForeground ()); - if (awtComponent.getBackground () != null) - setBackground (awtComponent.getBackground ()); - if (awtComponent.getFont() != null) - setFont(awtComponent.getFont()); - - Component parent = awtComponent.getParent (); - - // Only set our parent on the GTK side if our parent on the AWT - // side is not showing. Otherwise the gtk peer will be shown - // before we've had a chance to position and size it properly. - if (awtComponent instanceof Window - || (parent != null && ! parent.isShowing ())) - setParentAndBounds (); - } - - void setParentAndBounds () - { - setParent (); - - setComponentBounds (); - - setVisibleAndEnabled (); - } - - void setParent () - { - ComponentPeer p; - Component component = awtComponent; - do - { - component = component.getParent (); - p = component.getPeer (); - } - while (p instanceof java.awt.peer.LightweightPeer); - - if (p != null) - gtkWidgetSetParent (p); - } - - void beginNativeRepaint () - { - isInRepaint = true; - } - - void endNativeRepaint () - { - isInRepaint = false; - } - - /* - * Set the bounds of this peer's AWT Component based on dimensions - * returned by the native windowing system. Most Components impose - * their dimensions on the peers which is what the default - * implementation does. However some peers, like GtkFileDialogPeer, - * need to pass their size back to the AWT Component. - */ - void setComponentBounds () - { - Rectangle bounds = awtComponent.getBounds (); - - if (bounds.x == 0 && bounds.y == 0 - && bounds.width == 0 && bounds.height == 0) - return; - - setBounds (bounds.x, bounds.y, bounds.width, bounds.height); - } - - void setVisibleAndEnabled () - { - setVisible (awtComponent.isVisible ()); - setEnabled (awtComponent.isEnabled ()); - } - - public int checkImage (Image image, int width, int height, - ImageObserver observer) - { - GtkImage i = (GtkImage) image; - return i.checkImage (); - } - - public Image createImage (ImageProducer producer) - { - GtkImage image = new GtkImage (producer, null); - producer.startProduction (image); - return image; - } - - public Image createImage (int width, int height) - { - Graphics g; - if (GtkToolkit.useGraphics2D ()) - { - Graphics2D g2 = new GdkGraphics2D (width, height); - g2.setBackground (getBackground ()); - g = g2; - } - else - g = new GdkGraphics (width, height); - - g.setColor(getBackground()); - g.fillRect(0, 0, width, height); - - return new GtkOffScreenImage (null, g, width, height); - } - - public void disable () - { - setEnabled (false); - } - - public void enable () - { - setEnabled (true); - } - - public ColorModel getColorModel () - { - return ColorModel.getRGBdefault (); - } - - public FontMetrics getFontMetrics (Font font) - { - return getToolkit().getFontMetrics(font); - } - - public Graphics getGraphics () - { - if (GtkToolkit.useGraphics2D ()) - return new GdkGraphics2D (this); - else - return new GdkGraphics (this); - } - - public Point getLocationOnScreen () - { - int point[] = new int[2]; - gtkWidgetGetLocationOnScreen (point); - return new Point (point[0], point[1]); - } - - public Dimension getMinimumSize () - { - return minimumSize (); - } - - public Dimension getPreferredSize () - { - return preferredSize (); - } - - public Toolkit getToolkit () - { - return Toolkit.getDefaultToolkit(); - } - - public void handleEvent (AWTEvent event) - { - int id = event.getID(); - KeyEvent ke = null; - - switch (id) - { - case PaintEvent.PAINT: - case PaintEvent.UPDATE: - { - try - { - Graphics g = getGraphics (); - - // Some peers like GtkFileDialogPeer are repainted by Gtk itself - if (g == null) - break; - - g.setClip (((PaintEvent) event).getUpdateRect()); - - if (id == PaintEvent.PAINT) - awtComponent.paint (g); - else - awtComponent.update (g); - - g.dispose (); - } - catch (InternalError e) - { - System.err.println (e); - } - } - break; - case KeyEvent.KEY_PRESSED: - ke = (KeyEvent) event; - gtkWidgetDispatchKeyEvent (ke.getID (), ke.getWhen (), ke.getModifiersEx (), - ke.getKeyCode (), ke.getKeyLocation ()); - break; - case KeyEvent.KEY_RELEASED: - ke = (KeyEvent) event; - gtkWidgetDispatchKeyEvent (ke.getID (), ke.getWhen (), ke.getModifiersEx (), - ke.getKeyCode (), ke.getKeyLocation ()); - break; - } - } - - public boolean isFocusTraversable () - { - return true; - } - - public Dimension minimumSize () - { - int dim[] = new int[2]; - - gtkWidgetGetPreferredDimensions (dim); - - return new Dimension (dim[0], dim[1]); - } - - public void paint (Graphics g) - { - } - - public Dimension preferredSize () - { - int dim[] = new int[2]; - - gtkWidgetGetPreferredDimensions (dim); - - return new Dimension (dim[0], dim[1]); - } - - public boolean prepareImage (Image image, int width, int height, - ImageObserver observer) - { - GtkImage i = (GtkImage) image; - - if (i.isLoaded ()) return true; - - class PrepareImage extends Thread - { - GtkImage image; - ImageObserver observer; - - PrepareImage (GtkImage image, ImageObserver observer) - { - this.image = image; - image.setObserver (observer); - } - - public void run () - { - image.source.startProduction (image); - } - } - - new PrepareImage (i, observer).start (); - return false; - } - - public void print (Graphics g) - { - throw new RuntimeException (); - } - - public void repaint (long tm, int x, int y, int width, int height) - { - if (x == 0 && y == 0 && width == 0 && height == 0) - return; - - q().postEvent (new PaintEvent (awtComponent, PaintEvent.UPDATE, - new Rectangle (x, y, width, height))); - } - - public void requestFocus () - { - gtkWidgetRequestFocus(); - postFocusEvent(FocusEvent.FOCUS_GAINED, false); - } - - public void reshape (int x, int y, int width, int height) - { - setBounds (x, y, width, height); - } - - public void setBackground (Color c) - { - gtkWidgetSetBackground (c.getRed(), c.getGreen(), c.getBlue()); - } - - native void setNativeBounds (int x, int y, int width, int height); - - public void setBounds (int x, int y, int width, int height) - { - Component parent = awtComponent.getParent (); - - // Heavyweight components that are children of one or more - // lightweight containers have to be handled specially. Because - // calls to GLightweightPeer.setBounds do nothing, GTK has no - // knowledge of the lightweight containers' positions. So we have - // to add the offsets manually when placing a heavyweight - // component within a lightweight container. The lightweight - // container may itself be in a lightweight container and so on, - // so we need to continue adding offsets until we reach a - // container whose position GTK knows -- that is, the first - // non-lightweight. - boolean lightweightChild = false; - Insets i; - while (parent.isLightweight ()) - { - lightweightChild = true; - - i = ((Container) parent).getInsets (); - - x += parent.getX () + i.left; - y += parent.getY () + i.top; - - parent = parent.getParent (); - } - - // We only need to convert from Java to GTK coordinates if we're - // placing a heavyweight component in a Window. - if (parent instanceof Window && !lightweightChild) - { - Insets insets = ((Window) parent).getInsets (); - GtkWindowPeer peer = (GtkWindowPeer) parent.getPeer (); - int menuBarHeight = 0; - if (peer instanceof GtkFramePeer) - menuBarHeight = ((GtkFramePeer) peer).getMenuBarHeight (); - - // Convert from Java coordinates to GTK coordinates. - setNativeBounds (x - insets.left, y - insets.top + menuBarHeight, - width, height); - } - else - setNativeBounds (x, y, width, height); - } - - void setCursor () - { - setCursor (awtComponent.getCursor ()); - } - - public void setCursor (Cursor cursor) - { - gtkWidgetSetCursor (cursor.getType ()); - } - - public void setEnabled (boolean b) - { - gtkWidgetSetSensitive (b); - } - - public void setFont (Font f) - { - // FIXME: This should really affect the widget tree below me. - // Currently this is only handled if the call is made directly on - // a text widget, which implements setFont() itself. - gtkWidgetModifyFont(f.getName(), f.getStyle(), f.getSize()); - } - - public void setForeground (Color c) - { - gtkWidgetSetForeground (c.getRed(), c.getGreen(), c.getBlue()); - } - - public Color getForeground () - { - int rgb[] = gtkWidgetGetForeground (); - return new Color (rgb[0], rgb[1], rgb[2]); - } - - public Color getBackground () - { - int rgb[] = gtkWidgetGetBackground (); - return new Color (rgb[0], rgb[1], rgb[2]); - } - - public void setVisible (boolean b) - { - if (b) - show (); - else - hide (); - } - - public native void hide (); - public native void show (); - - protected void postMouseEvent(int id, long when, int mods, int x, int y, - int clickCount, boolean popupTrigger) - { - q().postEvent(new MouseEvent(awtComponent, id, when, mods, x, y, - clickCount, popupTrigger)); - } - - protected void postExposeEvent (int x, int y, int width, int height) - { - if (!isInRepaint) - q().postEvent (new PaintEvent (awtComponent, PaintEvent.PAINT, - new Rectangle (x, y, width, height))); - } - - protected void postKeyEvent (int id, long when, int mods, - int keyCode, char keyChar, int keyLocation) - { - KeyEvent keyEvent = new KeyEvent (awtComponent, id, when, mods, - keyCode, keyChar, keyLocation); - - // Also post a KEY_TYPED event if keyEvent is a key press that - // doesn't represent an action or modifier key. - if (keyEvent.getID () == KeyEvent.KEY_PRESSED - && (!keyEvent.isActionKey () - && keyCode != KeyEvent.VK_SHIFT - && keyCode != KeyEvent.VK_CONTROL - && keyCode != KeyEvent.VK_ALT)) - { - synchronized (q) - { - q().postEvent (keyEvent); - q().postEvent (new KeyEvent (awtComponent, KeyEvent.KEY_TYPED, when, mods, - KeyEvent.VK_UNDEFINED, keyChar, keyLocation)); - } - } - else - q().postEvent (keyEvent); - } - - protected void postFocusEvent (int id, boolean temporary) - { - q().postEvent (new FocusEvent (awtComponent, id, temporary)); - } - - protected void postItemEvent (Object item, int stateChange) - { - q().postEvent (new ItemEvent ((ItemSelectable)awtComponent, - ItemEvent.ITEM_STATE_CHANGED, - item, stateChange)); - } - - public GraphicsConfiguration getGraphicsConfiguration () - { - // FIXME: just a stub for now. - return null; - } - - public void setEventMask (long mask) - { - // FIXME: just a stub for now. - } - - public boolean isFocusable () - { - return false; - } - - public boolean requestFocus (Component source, boolean b1, - boolean b2, long x) - { - return false; - } - - public boolean isObscured () - { - return false; - } - - public boolean canDetermineObscurity () - { - return false; - } - - public void coalescePaintEvent (PaintEvent e) - { - - } - - public void updateCursorImmediately () - { - - } - - public boolean handlesWheelScrolling () - { - return false; - } - - // Convenience method to create a new volatile image on the screen - // on which this component is displayed. - public VolatileImage createVolatileImage (int width, int height) - { - return new GtkVolatileImage (width, height); - } - - // Creates buffers used in a buffering strategy. - public void createBuffers (int numBuffers, BufferCapabilities caps) - throws AWTException - { - // numBuffers == 2 implies double-buffering, meaning one back - // buffer and one front buffer. - if (numBuffers == 2) - backBuffer = new GtkVolatileImage(awtComponent.getWidth(), - awtComponent.getHeight(), - caps.getBackBufferCapabilities()); - else - throw new AWTException("GtkComponentPeer.createBuffers:" - + " multi-buffering not supported"); - this.caps = caps; - } - - // Return the back buffer. - public Image getBackBuffer () - { - return backBuffer; - } - - // FIXME: flip should be implemented as a fast native operation - public void flip (BufferCapabilities.FlipContents contents) - { - getGraphics().drawImage(backBuffer, - awtComponent.getWidth(), - awtComponent.getHeight(), - null); - - // create new back buffer and clear it to the background color. - if (contents == BufferCapabilities.FlipContents.BACKGROUND) - { - backBuffer = createVolatileImage(awtComponent.getWidth(), - awtComponent.getHeight()); - backBuffer.getGraphics().clearRect(0, 0, - awtComponent.getWidth(), - awtComponent.getHeight()); - } - // FIXME: support BufferCapabilities.FlipContents.PRIOR - } - - // Release the resources allocated to back buffers. - public void destroyBuffers () - { - backBuffer.flush(); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkContainerPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkContainerPeer.java deleted file mode 100644 index e4d033fc2f6..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkContainerPeer.java +++ /dev/null @@ -1,151 +0,0 @@ -/* GtkContainerPeer.java -- Implements ContainerPeer with GTK - Copyright (C) 1998, 1999 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.java.awt.peer.gtk; - -import java.awt.Color; -import java.awt.Component; -import java.awt.Container; -import java.awt.Font; -import java.awt.Graphics; -import java.awt.Insets; -import java.awt.Window; -import java.awt.peer.ComponentPeer; -import java.awt.peer.ContainerPeer; - -public class GtkContainerPeer extends GtkComponentPeer - implements ContainerPeer -{ - Container c; - boolean isValidating; - - public GtkContainerPeer(Container c) - { - super (c); - this.c = c; - } - - public void beginValidate () - { - isValidating = true; - } - - public void endValidate () - { - Component parent = awtComponent.getParent (); - - // Only set our parent on the GTK side if our parent on the AWT - // side is not showing. Otherwise the gtk peer will be shown - // before we've had a chance to position and size it properly. - if (parent != null && parent.isShowing ()) - { - Component[] components = ((Container) awtComponent).getComponents (); - int ncomponents = components.length; - - for (int i = 0; i < ncomponents; i++) - { - ComponentPeer peer = components[i].getPeer (); - - // Skip lightweight peers. - if (peer instanceof GtkComponentPeer) - ((GtkComponentPeer) peer).setParentAndBounds (); - } - - // GTK windows don't have parents. - if (!(awtComponent instanceof Window)) - setParentAndBounds (); - } - - isValidating = false; - } - - public Insets getInsets() - { - return insets; - } - - public Insets insets() - { - return getInsets (); - } - - public void setBounds (int x, int y, int width, int height) - { - super.setBounds (x, y, width, height); - } - - public void setFont(Font f) - { - super.setFont(f); - Component[] components = ((Container) awtComponent).getComponents(); - for (int i = 0; i < components.length; i++) - { - GtkComponentPeer peer = (GtkComponentPeer) components[i].getPeer(); - if (peer != null && ! peer.awtComponent.isFontSet()) - peer.setFont(f); - } - } - - public Graphics getGraphics () - { - return super.getGraphics(); - } - - public void beginLayout () { } - public void endLayout () { } - public boolean isPaintPending () { return false; } - - public void setBackground (Color c) - { - super.setBackground(c); - - Object components[] = ((Container) awtComponent).getComponents(); - for (int i = 0; i < components.length; i++) - { - Component comp = (Component) components[i]; - - // If the child's background has not been explicitly set yet, - // it should inherit this container's background. This makes the - // child component appear as if it has a transparent background. - // Note that we do not alter the background property of the child, - // but only repaint the child with the parent's background color. - if (!comp.isBackgroundSet() && comp.getPeer() != null) - comp.getPeer().setBackground(c); - } - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkDialogPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkDialogPeer.java deleted file mode 100644 index c2cbc37dce9..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkDialogPeer.java +++ /dev/null @@ -1,94 +0,0 @@ -/* GtkDialogPeer.java -- Implements DialogPeer with GTK - Copyright (C) 1998, 1999, 2002 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.java.awt.peer.gtk; - -import java.awt.Dialog; -import java.awt.Graphics; -import java.awt.Rectangle; -import java.awt.event.PaintEvent; -import java.awt.peer.DialogPeer; - -public class GtkDialogPeer extends GtkWindowPeer - implements DialogPeer -{ - public GtkDialogPeer (Dialog dialog) - { - super (dialog); - } - - public Graphics getGraphics () - { - Graphics g; - if (GtkToolkit.useGraphics2D ()) - g = new GdkGraphics2D (this); - else - g = new GdkGraphics (this); - g.translate (-insets.left, -insets.top); - return g; - } - - protected void postMouseEvent(int id, long when, int mods, int x, int y, - int clickCount, boolean popupTrigger) - { - super.postMouseEvent (id, when, mods, - x + insets.left, y + insets.top, - clickCount, popupTrigger); - } - - protected void postExposeEvent (int x, int y, int width, int height) - { - if (!isInRepaint) - q().postEvent (new PaintEvent (awtComponent, PaintEvent.PAINT, - new Rectangle (x + insets.left, - y + insets.top, - width, height))); - } - - void create () - { - // Create a decorated dialog window. - create (GDK_WINDOW_TYPE_HINT_DIALOG, true); - - Dialog dialog = (Dialog) awtComponent; - - gtkWindowSetModal (dialog.isModal ()); - setTitle (dialog.getTitle ()); - setResizable (dialog.isResizable ()); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java deleted file mode 100644 index 0533d2759c2..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java +++ /dev/null @@ -1,73 +0,0 @@ -/* GtkEmbeddedWindowPeer.java -- Implements EmbeddedWindowPeer using a - GtkPlug - 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., 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.java.awt.peer.gtk; - -import gnu.java.awt.EmbeddedWindow; -import gnu.java.awt.peer.EmbeddedWindowPeer; - -public class GtkEmbeddedWindowPeer extends GtkFramePeer - implements EmbeddedWindowPeer -{ - native void create (long socket_id); - - void create () - { - create (((EmbeddedWindow) awtComponent).getHandle ()); - } - - native void construct (long socket_id); - - // FIXME: embed doesn't work right now, though I believe it should. - // This means that you can't call setVisible (true) on an - // EmbeddedWindow before calling setHandle with a valid handle. The - // problem is that somewhere after the call to - // GtkEmbeddedWindow.create and before the call to - // GtkEmbeddedWindow.construct, the GtkPlug peer is being realized. - // GtkSocket silently fails to embed an already-realized GtkPlug. - public void embed (long handle) - { - construct (handle); - } - - public GtkEmbeddedWindowPeer (EmbeddedWindow w) - { - super (w); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java deleted file mode 100644 index bd1f0775a92..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java +++ /dev/null @@ -1,219 +0,0 @@ -/* GtkFileDialogPeer.java -- Implements FileDialogPeer with GTK - Copyright (C) 1998, 1999, 2002, 2004, 2005 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.java.awt.peer.gtk; - -import java.awt.Dialog; -import java.awt.FileDialog; -import java.awt.Graphics; -import java.awt.Window; -import java.awt.peer.FileDialogPeer; -import java.io.File; -import java.io.FilenameFilter; - -public class GtkFileDialogPeer extends GtkDialogPeer implements FileDialogPeer -{ - static final String FS = System.getProperty("file.separator"); - - private String currentFile = null; - private String currentDirectory = null; - private FilenameFilter filter; - - native void create (GtkContainerPeer parent); - native void connectSignals (); - native void nativeSetFile (String file); - public native String nativeGetDirectory(); - public native void nativeSetDirectory(String directory); - native void nativeSetFilenameFilter (FilenameFilter filter); - - public void create() - { - create((GtkContainerPeer) awtComponent.getParent().getPeer()); - - FileDialog fd = (FileDialog) awtComponent; - - setDirectory(fd.getDirectory()); - setFile(fd.getFile()); - - FilenameFilter filter = fd.getFilenameFilter(); - if (filter != null) - setFilenameFilter(filter); - } - - public GtkFileDialogPeer (FileDialog fd) - { - super (fd); - } - - void setComponentBounds () - { - if (awtComponent.getHeight () == 0 - && awtComponent.getWidth () == 0) - { - int[] dims = new int[2]; - gtkWidgetGetPreferredDimensions (dims); - ((GtkFileDialogPeer) this).setBoundsCallback ((Window) awtComponent, - awtComponent.getX (), - awtComponent.getY (), - dims[0], dims[1]); - } - super.setComponentBounds (); - } - - public void setFile (String fileName) - { - /* If nothing changed do nothing. This usually happens because - the only way we have to set the file name in FileDialog is by - calling its SetFile which will call us back. */ - if ((fileName == null && currentFile == null) - || (fileName != null && fileName.equals (currentFile))) - return; - - if (fileName == null || fileName.equals ("")) - { - currentFile = ""; - nativeSetFile (""); - return; - } - - // GtkFileChooser requires absolute filenames. If the given filename - // is not absolute, let's construct it based on current directory. - currentFile = fileName; - if (fileName.indexOf(FS) == 0) - { - nativeSetFile (fileName); - } - else - { - nativeSetFile (nativeGetDirectory() + FS + fileName); - } - } - - public void setDirectory (String directory) - { - /* If nothing changed so nothing. This usually happens because - the only way we have to set the directory in FileDialog is by - calling its setDirectory which will call us back. */ - if ((directory == null && currentDirectory == null) - || (directory != null && directory.equals (currentDirectory))) - return; - - if (directory == null || directory.equals ("")) - { - currentDirectory = FS; - nativeSetFile (FS); - return; - } - - currentDirectory = directory; - nativeSetDirectory (directory); - } - - public void setFilenameFilter (FilenameFilter filter) - { - this.filter = filter; - nativeSetFilenameFilter(filter); - } - - /* This method interacts with the native callback function of the - same name. The native function will extract the filename from the - GtkFileFilterInfo object and send it to this method, which will - in turn call the filter's accept() method and give back the return - value. */ - boolean filenameFilterCallback (String fullname) { - String filename = fullname.substring(fullname.lastIndexOf(FS) + 1); - String dirname = fullname.substring(0, fullname.lastIndexOf(FS)); - File dir = new File(dirname); - return filter.accept(dir, filename); - } - - public Graphics getGraphics () - { - // GtkFileDialog will repaint by itself - return null; - } - - void gtkHideFileDialog () - { - ((Dialog) awtComponent).hide(); - } - - void gtkDisposeFileDialog () - { - ((Dialog) awtComponent).dispose(); - } - - /* Callback to set the file and directory values when the user is finished - * with the dialog. - */ - void gtkSetFilename (String fileName) - { - FileDialog fd = (FileDialog) awtWidget; - if (fileName == null) - { - currentFile = null; - fd.setFile(null); - return; - } - - int sepIndex = fileName.lastIndexOf (FS); - if (sepIndex < 0) - { - /* This should never happen on Unix (all paths start with '/') */ - currentFile = fileName; - } - else - { - if (fileName.length() > (sepIndex + 1)) - { - String fn = fileName.substring (sepIndex + 1); - currentFile = fn; - } - else - { - currentFile = null; - } - - String dn = fileName.substring (0, sepIndex + 1); - currentDirectory = dn; - fd.setDirectory(dn); - } - - fd.setFile (currentFile); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkFontPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkFontPeer.java deleted file mode 100644 index 80ad1580362..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkFontPeer.java +++ /dev/null @@ -1,225 +0,0 @@ -/* GtkFontPeer.java -- Implements FontPeer with GTK+ - Copyright (C) 1999, 2004, 2005 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.java.awt.peer.gtk; - -import gnu.java.awt.peer.ClasspathFontPeer; - -import java.awt.Font; -import java.awt.FontMetrics; -import java.awt.font.FontRenderContext; -import java.awt.font.GlyphVector; -import java.awt.font.LineMetrics; -import java.awt.geom.Rectangle2D; -import java.text.CharacterIterator; -import java.util.Locale; -import java.util.MissingResourceException; -import java.util.ResourceBundle; - -public class GtkFontPeer extends ClasspathFontPeer -{ - private static ResourceBundle bundle; - - static - { - try - { - bundle = ResourceBundle.getBundle ("gnu.java.awt.peer.gtk.font"); - } - catch (Throwable ignored) - { - bundle = null; - } - } - - private final String Xname; - - public GtkFontPeer (String name, int style) - { - // All fonts get a default size of 12 if size is not specified. - this(name, style, 12); - } - - public GtkFontPeer (String name, int style, int size) - { - super(name, style, size); - - String Xname = null; - if (bundle != null) - { - try - { - Xname = bundle.getString (name.toLowerCase () + "." + style); - } - catch (MissingResourceException mre) - { - // ignored - } - } - - if (Xname == null) - { - String weight; - String slant; - String spacing; - - if (style == Font.ITALIC || (style == (Font.BOLD+Font.ITALIC))) - slant = "i"; - else - slant = "r"; - if (style == Font.BOLD || (style == (Font.BOLD+Font.ITALIC))) - weight = "bold"; - else - weight = "medium"; - if (name.equals("Serif") || name.equals("SansSerif") - || name.equals("Helvetica") || name.equals("Times")) - spacing = "p"; - else - spacing = "c"; - - Xname = "-*-*-" + weight + "-" + slant + "-normal-*-*-" + size + "-*-*-" + spacing + "-*-*-*"; - } - - this.Xname = Xname; - } - - public String getXLFD () - { - return Xname; - } - - - /* remaining methods are for static compatibility with the newer - ClasspathFontPeer superclass; none of these methods ever existed or - worked on the older FontPeer interface, but we need to pretend to - support them anyways. */ - - public boolean canDisplay (Font font, char c) - { - throw new UnsupportedOperationException(); - } - - public int canDisplayUpTo (Font font, CharacterIterator i, int start, int limit) - { - throw new UnsupportedOperationException(); - } - - public String getSubFamilyName (Font font, Locale locale) - { - throw new UnsupportedOperationException(); - } - - public String getPostScriptName (Font font) - { - throw new UnsupportedOperationException(); - } - - public int getNumGlyphs (Font font) - { - throw new UnsupportedOperationException(); - } - - public int getMissingGlyphCode (Font font) - { - throw new UnsupportedOperationException(); - } - - public byte getBaselineFor (Font font, char c) - { - throw new UnsupportedOperationException(); - } - - public String getGlyphName (Font font, int glyphIndex) - { - throw new UnsupportedOperationException(); - } - - public GlyphVector createGlyphVector (Font font, - FontRenderContext frc, - CharacterIterator ci) - { - throw new UnsupportedOperationException(); - } - - public GlyphVector createGlyphVector (Font font, - FontRenderContext ctx, - int[] glyphCodes) - { - throw new UnsupportedOperationException(); - } - - public GlyphVector layoutGlyphVector (Font font, - FontRenderContext frc, - char[] chars, int start, - int limit, int flags) - { - throw new UnsupportedOperationException(); - } - - public FontMetrics getFontMetrics (Font font) - { - throw new UnsupportedOperationException(); - } - - public boolean hasUniformLineMetrics (Font font) - { - throw new UnsupportedOperationException(); - } - - public LineMetrics getLineMetrics (Font font, - CharacterIterator ci, - int begin, int limit, - FontRenderContext rc) - { - throw new UnsupportedOperationException(); - } - - public Rectangle2D getMaxCharBounds (Font font, - FontRenderContext rc) - { - throw new UnsupportedOperationException(); - } - - public Rectangle2D getStringBounds (Font font, - CharacterIterator ci, - int begin, int limit, - FontRenderContext frc) - { - throw new UnsupportedOperationException(); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkFramePeer.java b/libjava/gnu/java/awt/peer/gtk/GtkFramePeer.java deleted file mode 100644 index 77b7a81786a..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkFramePeer.java +++ /dev/null @@ -1,275 +0,0 @@ -/* GtkFramePeer.java -- Implements FramePeer with GTK - Copyright (C) 1999, 2002, 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.java.awt.peer.gtk; - -import java.awt.Frame; -import java.awt.Graphics; -import java.awt.Image; -import java.awt.MenuBar; -import java.awt.Rectangle; -import java.awt.Window; -import java.awt.event.PaintEvent; -import java.awt.image.ColorModel; -import java.awt.peer.FramePeer; -import java.awt.peer.MenuBarPeer; - -public class GtkFramePeer extends GtkWindowPeer - implements FramePeer -{ - private int menuBarHeight; - private MenuBarPeer menuBar; - native int getMenuBarHeight (MenuBarPeer bar); - native void setMenuBarWidth (MenuBarPeer bar, int width); - native void setMenuBarPeer (MenuBarPeer bar); - native void removeMenuBarPeer (); - native void gtkFixedSetVisible (boolean visible); - - int getMenuBarHeight () - { - return menuBar == null ? 0 : getMenuBarHeight (menuBar); - } - - public void setMenuBar (MenuBar bar) - { - if (bar == null && menuBar != null) - { - // We're removing the menubar. - gtkFixedSetVisible (false); - menuBar = null; - removeMenuBarPeer (); - insets.top -= menuBarHeight; - menuBarHeight = 0; - awtComponent.validate (); - gtkFixedSetVisible (true); - } - else if (bar != null && menuBar == null) - { - // We're adding a menubar where there was no menubar before. - gtkFixedSetVisible (false); - menuBar = (MenuBarPeer) ((MenuBar) bar).getPeer(); - setMenuBarPeer (menuBar); - int menuBarWidth = - awtComponent.getWidth () - insets.left - insets.right; - if (menuBarWidth > 0) - setMenuBarWidth (menuBar, menuBarWidth); - menuBarHeight = getMenuBarHeight (); - insets.top += menuBarHeight; - awtComponent.validate (); - gtkFixedSetVisible (true); - } - else if (bar != null && menuBar != null) - { - // We're swapping the menubar. - gtkFixedSetVisible (false); - removeMenuBarPeer(); - int oldHeight = menuBarHeight; - int menuBarWidth = - awtComponent.getWidth () - insets.left - insets.right; - menuBar = (MenuBarPeer) ((MenuBar) bar).getPeer (); - setMenuBarPeer (menuBar); - if (menuBarWidth > 0) - setMenuBarWidth (menuBar, menuBarWidth); - menuBarHeight = getMenuBarHeight (); - if (oldHeight != menuBarHeight) - { - insets.top += (menuBarHeight - oldHeight); - awtComponent.validate (); - } - gtkFixedSetVisible (true); - } - } - - public void setBounds (int x, int y, int width, int height) - { - int menuBarWidth = width - insets.left - insets.right; - if (menuBar != null && menuBarWidth > 0) - setMenuBarWidth (menuBar, menuBarWidth); - - nativeSetBounds (x, y, - width - insets.left - insets.right, - height - insets.top - insets.bottom - + menuBarHeight); - } - - public void setResizable (boolean resizable) - { - // Call setSize; otherwise when resizable is changed from true to - // false the frame will shrink to the dimensions it had before it - // was resizable. - setSize (awtComponent.getWidth() - insets.left - insets.right, - awtComponent.getHeight() - insets.top - insets.bottom - + menuBarHeight); - gtkWindowSetResizable (resizable); - } - - protected void postInsetsChangedEvent (int top, int left, - int bottom, int right) - { - insets.top = top + menuBarHeight; - insets.left = left; - insets.bottom = bottom; - insets.right = right; - } - - public GtkFramePeer (Frame frame) - { - super (frame); - } - - void create () - { - // Create a normal decorated window. - create (GDK_WINDOW_TYPE_HINT_NORMAL, true); - - Frame frame = (Frame) awtComponent; - - setMenuBar (frame.getMenuBar ()); - - setTitle (frame.getTitle ()); - gtkWindowSetResizable (frame.isResizable ()); - setIconImage(frame.getIconImage()); - } - - native void nativeSetIconImageFromDecoder (GdkPixbufDecoder decoder); - native void nativeSetIconImageFromData (int[] pixels, int width, int height); - public void setIconImage (Image image) - { - if (image != null && image instanceof GtkImage) - { - GtkImage img = (GtkImage) image; - // FIXME: Image should be loaded, but if not, do image loading here. - if (img.isLoaded()) - { - if (img.getSource() instanceof GdkPixbufDecoder) - { - nativeSetIconImageFromDecoder((GdkPixbufDecoder) img.getSource()); - } - else - { - int[] pixels = img.getPixelCache(); - ColorModel model = img.getColorModel(); - int[] data = new int[pixels.length * 4]; - for (int i = 0; i < pixels.length; i++) - { - data[i * 4] = model.getRed(pixels[i]); - data[i * 4 + 1] = model.getGreen(pixels[i]); - data[i * 4 + 2] = model.getBlue(pixels[i]); - data[i * 4 + 3] = model.getAlpha(pixels[i]); - } - nativeSetIconImageFromData(data, img.getWidth(null), img.getHeight(null)); - } - } - } - } - - public Graphics getGraphics () - { - Graphics g; - if (GtkToolkit.useGraphics2D ()) - g = new GdkGraphics2D (this); - else - g = new GdkGraphics (this); - g.translate (-insets.left, -insets.top); - return g; - } - - protected void postConfigureEvent (int x, int y, int width, int height) - { - int frame_x = x - insets.left; - // Since insets.top includes the MenuBar height, we need to add back - // the MenuBar height to the frame's y position. - // If no MenuBar exists in this frame, the MenuBar height will be 0. - int frame_y = y - insets.top + menuBarHeight; - int frame_width = width + insets.left + insets.right; - // Ditto as above. Since insets.top already includes the MenuBar's height, - // we need to subtract the MenuBar's height from the top inset. - int frame_height = height + insets.top + insets.bottom - menuBarHeight; - if (frame_x != awtComponent.getX() - || frame_y != awtComponent.getY() - || frame_width != awtComponent.getWidth() - || frame_height != awtComponent.getHeight()) - { - if (frame_width != awtComponent.getWidth() && menuBar != null - && width > 0) - setMenuBarWidth (menuBar, width); - - setBoundsCallback ((Window) awtComponent, - frame_x, - frame_y, - frame_width, - frame_height); - - awtComponent.validate(); - } - } - - protected void postMouseEvent(int id, long when, int mods, int x, int y, - int clickCount, boolean popupTrigger) - { - super.postMouseEvent (id, when, mods, - x + insets.left, y + insets.top, - clickCount, popupTrigger); - } - - protected void postExposeEvent (int x, int y, int width, int height) - { - if (!isInRepaint) - q().postEvent (new PaintEvent (awtComponent, PaintEvent.PAINT, - new Rectangle (x + insets.left, - y + insets.top, - width, height))); - } - - public int getState () - { - return 0; - } - - public void setState (int state) - { - - } - - public void setMaximizedBounds (Rectangle r) - { - - } -} - - diff --git a/libjava/gnu/java/awt/peer/gtk/GtkGenericPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkGenericPeer.java deleted file mode 100644 index 669268e92d8..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkGenericPeer.java +++ /dev/null @@ -1,93 +0,0 @@ -/* GtkGenericPeer.java - Has a hashcode. Yuck. - Copyright (C) 1998, 1999, 2002 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.java.awt.peer.gtk; - -import java.awt.EventQueue; -import java.awt.Toolkit; -import java.awt.event.ActionEvent; - -public class GtkGenericPeer -{ - final int native_state = getUniqueInteger (); - - // Next native state value we will assign. - private static int next_native_state = 0; - - // The widget or other java-side object we wrap. - protected Object awtWidget; - - // Global event queue. - protected static EventQueue q = null; - - // Dispose of our native state. - public native void dispose (); - - static EventQueue q () - { - return Toolkit.getDefaultToolkit ().getSystemEventQueue (); - } - - protected GtkGenericPeer (Object awtWidget) - { - this.awtWidget = awtWidget; - } - - public static void enableQueue (EventQueue sq) - { - if (q == null) - q = sq; - } - - protected void postActionEvent (String command, int mods) - { - q().postEvent (new ActionEvent (awtWidget, ActionEvent.ACTION_PERFORMED, - command, mods)); - } - - // Return a unique integer for use in the native state mapping - // code. We can't use a hash code since that is not guaranteed to - // be unique. - static synchronized int getUniqueInteger () - { - // Let's assume this will never wrap. - return next_native_state++; - } - - native void gtkWidgetModifyFont (String name, int style, int size); -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkImage.java b/libjava/gnu/java/awt/peer/gtk/GtkImage.java deleted file mode 100644 index a9f8e9075b6..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkImage.java +++ /dev/null @@ -1,344 +0,0 @@ -/* GtkImage.java - Copyright (C) 1999, 2002, 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., 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.java.awt.peer.gtk; - -import java.awt.Graphics; -import java.awt.Image; -import java.awt.image.ColorModel; -import java.awt.image.ImageConsumer; -import java.awt.image.ImageObserver; -import java.awt.image.ImageProducer; -import java.util.Hashtable; -import java.util.Vector; - -public class GtkImage extends Image implements ImageConsumer -{ - int width = -1, height = -1; - Hashtable props = null; - boolean isLoaded = false; - boolean isCacheable = true; - boolean loading = false; - - Vector widthObservers = new Vector (); - Vector heightObservers = new Vector (); - Vector propertyObservers = new Vector (); - - ImageProducer source; - ImageObserver observer; - Graphics g; - - /* Variables in which we stored cached data, if possible. - - An image is cached if the following properties are true: - 1. The ColorModel passed into setColorModel is the same ColorModel - passed to all invocations of setPixels. - 2. The image contains a single frame. - - */ - int[] pixelCache; - ColorModel model; - - public - GtkImage (ImageProducer producer, Graphics g) - { - source = producer; - this.g = g; - - if (source != null) - source.addConsumer (this); - } - - public void setObserver (ImageObserver observer) - { - this.observer = observer; - } - - public synchronized int[] - getPixelCache () - { - return pixelCache; - } - - public synchronized ColorModel - getColorModel () - { - return model; - } - - public synchronized int - getWidth (ImageObserver observer) - { - if (width == -1) - widthObservers.addElement (observer); - - return width; - } - - public synchronized int - getHeight (ImageObserver observer) - { - if (height == -1) - heightObservers.addElement (observer); - - return height; - } - - public ImageProducer - getSource () - { - return source; - } - - public Graphics - getGraphics () - { - return g; - } - - public synchronized Object - getProperty (String name, ImageObserver observer) - { - if (props == null) - { - propertyObservers.addElement (observer); - return null; - } - - Object value = props.get (name); - return (value == null) ? UndefinedProperty : value; - } - - public synchronized void - flush () - { - isLoaded = false; - isCacheable = true; - width = height = -1; - props = null; - pixelCache = null; - model = null; - - if (source != null) - { - source.removeConsumer (this); - source.addConsumer (this); - } - } - - public boolean - isLoaded () - { - return isLoaded; - } - - /* ImageConsumer methods */ - - public synchronized void - setDimensions (int width, int height) - { - pixelCache = new int[width*height]; - - this.width = width; - this.height = height; - - for (int i = 0; i < widthObservers.size (); i++) - { - ImageObserver io = (ImageObserver) widthObservers.elementAt (i); - if (io != null) - io.imageUpdate (this, ImageObserver.WIDTH, -1, -1, width, height); - } - - for (int i = 0; i < heightObservers.size (); i++) - { - ImageObserver io = (ImageObserver) heightObservers.elementAt (i); - if (io != null) - io.imageUpdate (this, ImageObserver.HEIGHT, -1, -1, width, height); - } - - if (observer != null) - observer.imageUpdate (this, - (ImageObserver.WIDTH - | ImageObserver.HEIGHT), - -1, -1, width, height); - } - - public synchronized void - setProperties (Hashtable props) - { - this.props = props; - - for (int i = 0; i < propertyObservers.size (); i++) - { - ImageObserver io = (ImageObserver) propertyObservers.elementAt (i); - if (io != null) - io.imageUpdate (this, ImageObserver.PROPERTIES, -1, -1, width, height); - } - } - - public synchronized void - setColorModel (ColorModel model) - { - if (this.model == null || this.model.equals(model)) - this.model = model; - else - isCacheable = false; - } - - public synchronized void - setHints (int flags) - { - } - - public synchronized void - setPixels (int x, int y, int width, int height, ColorModel cm, byte[] pixels, - int offset, int scansize) - { - setPixels (x, y, width, height, cm, convertPixels (pixels), offset, - scansize); - - if (observer != null) - observer.imageUpdate (this, - ImageObserver.SOMEBITS, - x, y, width, height); - } - - public synchronized void - setPixels (int x, int y, int width, int height, ColorModel cm, int[] pixels, - int offset, int scansize) - { - loading = true; - - if (!isCacheable) - return; - - if (!cm.equals(model) || pixelCache == null) - { - isCacheable = false; - return; - } - - if (scansize == width && height == 1) - { - // Copy contents of pixels array into pixel cache. - System.arraycopy (pixels, offset, - pixelCache, y * this.width + x, - pixels.length - offset); - } - else // skip over scansize-width for each row - { - for (int i = 0; i < height; i++) - System.arraycopy (pixels, offset + (i * scansize), - pixelCache, (y + i) * this.width + x, - width); - } - } - - public synchronized void - imageComplete (int status) - { - if (status == ImageConsumer.STATICIMAGEDONE && isCacheable) - isLoaded = true; - - if (status == ImageConsumer.SINGLEFRAME) - isCacheable = false; - - if (observer != null) - { - if (status == ImageConsumer.IMAGEERROR) - observer.imageUpdate (null, - ImageObserver.ERROR, - -1, -1, -1, -1); - else - observer.imageUpdate (null, - ImageObserver.ALLBITS, - -1, -1, -1, -1); - } - - if (source != null && status != ImageConsumer.SINGLEFRAME) - source.removeConsumer (this); - } - - public synchronized void - startProduction (GtkImagePainter painter) - { - if (isLoaded) - { - painter.setDimensions (width, height); - painter.setPixels (0, 0, width, height, model, pixelCache, 0, width); - } - else - { - if (source != null) - { - source.startProduction (painter); - source.removeConsumer (painter); - } - } - } - - private int[] - convertPixels (byte[] pixels) - { - int ret[] = new int[pixels.length]; - - for (int i = 0; i < pixels.length; i++) - ret[i] = pixels[i]; - - return ret; - } - - synchronized int - checkImage () - { - int bits = 0; - - if (width != -1) - bits |= ImageObserver.WIDTH; - if (height != -1) - bits |= ImageObserver.HEIGHT; - if (props != null) - bits |= ImageObserver.PROPERTIES; - if (loading) - bits |= ImageObserver.SOMEBITS; - if (isLoaded) - bits |= ImageObserver.ALLBITS; - - return bits; - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkImagePainter.java b/libjava/gnu/java/awt/peer/gtk/GtkImagePainter.java deleted file mode 100644 index 9efa0ae7137..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkImagePainter.java +++ /dev/null @@ -1,267 +0,0 @@ -/* GtkImagePainter.java - Copyright (C) 1999, 2000 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.java.awt.peer.gtk; - -import java.awt.Color; -import java.awt.Rectangle; -import java.awt.image.ColorModel; -import java.awt.image.ImageConsumer; -import java.awt.image.ImageObserver; -import java.util.Hashtable; - -public class GtkImagePainter implements Runnable, ImageConsumer -{ - GtkImage image; - GdkGraphics gc; - int startX, startY; - int redBG; - int greenBG; - int blueBG; - double affine[]; - int width, height; - boolean flipX, flipY; - Rectangle clip; - int s_width, s_height; - ImageObserver observer; - - public - GtkImagePainter (GtkImage image, GdkGraphics gc, int x, int y, - int width, int height, Color bgcolor, ImageObserver o) - { - this.image = image; - this.gc = (GdkGraphics) gc.create (); - startX = x; - startY = y; - redBG = bgcolor.getRed (); - greenBG = bgcolor.getGreen (); - blueBG = bgcolor.getBlue (); - this.width = width; - this.height = height; - flipX = flipY = false; - s_width = s_height = 0; - clip = null; - observer = o; - - run (); - } - - public - GtkImagePainter (GtkImage image, GdkGraphics gc, - int dx1, int dy1, int dx2, int dy2, - int sx1, int sy1, int sx2, int sy2, - Color bgcolor, ImageObserver o) - { - this.image = image; - this.gc = (GdkGraphics) gc.create (); - startX = (dx1 < dx2) ? dx1 : dx2; - startY = dy1; - redBG = bgcolor.getRed (); - greenBG = bgcolor.getGreen (); - blueBG = bgcolor.getBlue (); - observer = o; - - this.width = Math.abs (dx2 - dx1); - this.height = Math.abs (dy2 - dy1); - - flipX = ((dx1 > dx2 && sx2 > sx1) - || (dx1 < dx2 && sx2 < sx1)); - - flipY = ((dy1 > dy2 && sy2 > sy1) - || (dy1 < dy2 && sy2 < sy1)); - - s_width = Math.abs (sx2 - sx1); - s_height = Math.abs (sy2 - sy1); - clip = new Rectangle (sx1, sy1, s_width, s_height); - - run (); - } - - public void - run () - { - image.startProduction (this); - gc.dispose (); - } - - /* Convert pixel data into a format that gdkrgb can understand */ - static int[] - convertPixels (int[] pixels, ColorModel model) - { - if (pixels == null || model == null) - { - return null; - } - - if (model.equals (ColorModel.getRGBdefault ())) - return pixels; - - int ret[] = new int[pixels.length]; - - for (int i = 0; i < pixels.length; i++) - ret[i] = model.getRGB (pixels[i]); - - return ret; - } - - static int[] - convertPixels (byte[] pixels, ColorModel model) - { - if (pixels == null || model == null) - { - return null; - } - - int ret[] = new int[pixels.length]; - - for (int i = 0; i < pixels.length; i++) - ret[i] = model.getRGB (pixels[i]); - - return ret; - } - - native void - drawPixels (GdkGraphics gc, int bg_red, int bg_green, int bg_blue, - int x, int y, int width, int height, int[] pixels, int offset, - int scansize, double affine[]); - - - public void - setPixels (int x, int y, int width, int height, ColorModel model, - int[] pixels, int offset, int scansize) - { - if (clip != null) - { - Rectangle r; - r = clip.intersection (new Rectangle (x, y, width, height)); - if (r.width == 0 && r.height == 0) - return; - - offset += r.y * scansize + r.x; - - width = r.width; - height = r.height; - x = r.x; - y = r.y; - } - - drawPixels (gc, redBG, greenBG, blueBG, - startX + x, startY + y, - width, height, convertPixels (pixels, model), offset, - scansize, affine); - } - - public void - setPixels (int x, int y, int width, int height, ColorModel model, - byte[] pixels, int offset, int scansize) - { - setPixels (x, y, width, height, ColorModel.getRGBdefault(), - convertPixels (pixels, model), offset, scansize); - } - - public void - setDimensions (int width, int height) - { - if (!flipX && !flipY && - ((this.width == -1 && this.height == -1) - || (this.width == width && this.height == height))) - return; - - affine = new double[6]; - affine[1] = affine[2] = affine[4] = affine[5] = 0; - - if (clip != null) - { - affine[0] = this.width / (double) s_width; - affine[3] = this.height / (double) s_height; - } - else - { - affine[0] = this.width / (double) width; - affine[3] = this.height / (double) height; - } - - if (flipX) - { - affine[0] = -affine[0]; - affine[4] = this.width; - } - - if (flipY) - { - affine[3] = -affine[3]; - affine[5] = this.height; - } - - if (affine[0] == 1 && affine[3] == 1) - affine = null; - } - - public void - setProperties (Hashtable props) - { - } - - public void - setColorModel (ColorModel model) - { - } - - public void - setHints (int flags) - { - } - - public void - imageComplete (int status) - { - image.imageComplete(status); - - if (observer != null) - { - if (status == ImageConsumer.IMAGEERROR) - observer.imageUpdate (null, - ImageObserver.ERROR, - -1, -1, -1, -1); - else - observer.imageUpdate (null, - ImageObserver.ALLBITS, - -1, -1, -1, -1); - } - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkLabelPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkLabelPeer.java deleted file mode 100644 index fdd5fd15f63..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkLabelPeer.java +++ /dev/null @@ -1,84 +0,0 @@ -/* GtkLabelPeer.java -- Implements LabelPeer with GTK - Copyright (C) 1998, 1999, 2005 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.java.awt.peer.gtk; - -import java.awt.Label; -import java.awt.peer.LabelPeer; - -public class GtkLabelPeer extends GtkComponentPeer - implements LabelPeer -{ - native void create (String text, float alignment); - native void gtkWidgetModifyFont (String name, int style, int size); - native void nativeSetAlignment (float alignment); - - public native void setText(String text); - native void setNativeBounds (int x, int y, int width, int height); - - void create () - { - Label label = (Label) awtComponent; - create (label.getText (), getGtkAlignment (label.getAlignment ())); - } - - public GtkLabelPeer (Label l) - { - super (l); - } - - public void setAlignment (int alignment) - { - nativeSetAlignment (getGtkAlignment (alignment)); - } - - float getGtkAlignment (int alignment) - { - switch (alignment) - { - case Label.LEFT: - return 0.0f; - case Label.CENTER: - return 0.5f; - case Label.RIGHT: - return 1.0f; - } - - return 0.0f; - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkListPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkListPeer.java deleted file mode 100644 index ff12fe34bba..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkListPeer.java +++ /dev/null @@ -1,180 +0,0 @@ -/* GtkListPeer.java -- Implements ListPeer with GTK - Copyright (C) 1998, 1999 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.java.awt.peer.gtk; - -import java.awt.AWTEvent; -import java.awt.Dimension; -import java.awt.List; -import java.awt.event.KeyEvent; -import java.awt.event.MouseEvent; -import java.awt.peer.ListPeer; - -public class GtkListPeer extends GtkComponentPeer - implements ListPeer -{ - void create () - { - List list = (List) awtComponent; - - create (list.getRows ()); - - setMultipleMode (list.isMultipleMode ()); - } - - native void create (int rows); - native void connectSignals (); - native void gtkWidgetModifyFont (String name, int style, int size); - native void gtkWidgetRequestFocus (); - - native void getSize (int rows, int visibleRows, int dims[]); - - public GtkListPeer (List list) - { - super (list); - - setMultipleMode (list.isMultipleMode ()); - - if (list.getItemCount () > 0) - append (list.getItems ()); - } - - native void append (String items[]); - - public native void add (String item, int index); - - public void addItem (String item, int index) - { - add (item, index); - } - - public void clear () - { - removeAll (); - } - - public native void delItems (int start, int end); - public native void deselect (int index); - - public Dimension getMinimumSize (int rows) - { - return minimumSize (rows); - } - - public Dimension getPreferredSize (int rows) - { - return preferredSize (rows); - } - - public native int[] getSelectedIndexes (); - public native void makeVisible (int index); - - public Dimension minimumSize (int rows) - { - int dims[] = new int[2]; - - int visibleRows = ((List) awtComponent).getRows(); - getSize (rows, visibleRows, dims); - return new Dimension (dims[0], dims[1]); - } - - public Dimension preferredSize (int rows) - { - int dims[] = new int[2]; - - int visibleRows = ((List) awtComponent).getRows(); - getSize (rows, visibleRows, dims); - return new Dimension (dims[0], dims[1]); - } - - public void removeAll () - { - delItems (0, -1); - } - - public native void select (int index); - public native void setMultipleMode (boolean b); - - public void setMultipleSelections (boolean b) - { - setMultipleMode (b); - } - - public void handleEvent (AWTEvent e) - { - if (e.getID () == MouseEvent.MOUSE_CLICKED && isEnabled ()) - { - // Only generate the ActionEvent on the second click of a - // multiple click. - MouseEvent me = (MouseEvent) e; - if (!me.isConsumed () - && (me.getModifiersEx () & MouseEvent.BUTTON1_DOWN_MASK) != 0 - && me.getClickCount() == 2) - { - String selectedItem = ((List) awtComponent).getSelectedItem (); - - // Double-click only generates an Action event if - // something is selected. - if (selectedItem != null) - postActionEvent (((List) awtComponent).getSelectedItem (), - me.getModifiersEx ()); - } - } - - if (e.getID () == KeyEvent.KEY_PRESSED) - { - KeyEvent ke = (KeyEvent) e; - if (!ke.isConsumed () && ke.getKeyCode () == KeyEvent.VK_ENTER) - { - String selectedItem = ((List) awtComponent).getSelectedItem (); - - // Enter only generates an Action event if something is - // selected. - if (selectedItem != null) - postActionEvent (selectedItem, ke.getModifiersEx ()); - } - } - - super.handleEvent (e); - } - - protected void postItemEvent (int item, int stateChange) - { - postItemEvent (new Integer (item), stateChange); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkMenuBarPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkMenuBarPeer.java deleted file mode 100644 index 79eeaf9ba6a..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkMenuBarPeer.java +++ /dev/null @@ -1,80 +0,0 @@ -/* GtkMenuBarPeer.java -- Implements MenuBarPeer with GTK+ - Copyright (C) 1999, 2005 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.java.awt.peer.gtk; - -import java.awt.Font; -import java.awt.Menu; -import java.awt.MenuBar; -import java.awt.MenuComponent; -import java.awt.peer.MenuBarPeer; -import java.awt.peer.MenuPeer; - -public class GtkMenuBarPeer extends GtkMenuComponentPeer - implements MenuBarPeer -{ - - native void create (); - native void addMenu (MenuPeer menu); - - public GtkMenuBarPeer (MenuBar target) - { - super (target); - } - - void setFont () - { - MenuComponent mc = (MenuComponent) awtWidget; - Font f = mc.getFont (); - - if (f == null) - mc.setFont (new Font ("Dialog", Font.PLAIN, 12)); - } - - // FIXME: remove this method or replace it with one that does - // something useful. - /* In Gnome, help menus are no longer right flushed. */ - native void nativeSetHelpMenu(MenuPeer menuPeer); - - public void addHelpMenu (Menu menu) - { - // nativeSetHelpMenu((MenuPeer) menu.getPeer()); - } - - public native void delMenu(int index); -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java deleted file mode 100644 index 8d9d1ca04a0..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java +++ /dev/null @@ -1,63 +0,0 @@ -/* GtkMenuComponentPeer.java -- Implements MenuComponentPeer with GTK+ - Copyright (C) 1999 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.java.awt.peer.gtk; - -import java.awt.peer.MenuComponentPeer; - -public class GtkMenuComponentPeer extends GtkGenericPeer - implements MenuComponentPeer -{ - void create () - { - throw new RuntimeException (); - } - - void setFont () - { - } - - public GtkMenuComponentPeer (Object awtWidget) - { - super (awtWidget); - create (); - setFont (); - } - - public native void dispose(); -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkMenuItemPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkMenuItemPeer.java deleted file mode 100644 index 5728f262b13..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkMenuItemPeer.java +++ /dev/null @@ -1,120 +0,0 @@ -/* GtkMenuItemPeer.java -- Implements MenuItemPeer with GTK+ - Copyright (C) 1999, 2005 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.java.awt.peer.gtk; - -import java.awt.Font; -import java.awt.Menu; -import java.awt.MenuBar; -import java.awt.MenuComponent; -import java.awt.MenuItem; -import java.awt.peer.MenuItemPeer; -import java.awt.peer.MenuPeer; - -public class GtkMenuItemPeer extends GtkMenuComponentPeer - implements MenuItemPeer -{ - native void create (String label); - native void connectSignals (); - native void gtkWidgetModifyFont (String name, int style, int size); - - void create () - { - create (((MenuItem) awtWidget).getLabel()); - } - - public GtkMenuItemPeer (MenuItem item) - { - super (item); - setEnabled (item.isEnabled ()); - setParent (item); - - if (item.getParent() instanceof Menu && ! (item instanceof Menu)) - connectSignals(); - } - - void setFont () - { - MenuComponent mc = ((MenuComponent) awtWidget); - Font f = mc.getFont (); - - if (f == null) - { - MenuComponent parent = (MenuComponent) mc.getParent (); - Font pf = parent.getFont (); - gtkWidgetModifyFont (pf.getName (), pf.getStyle (), pf.getSize ()); - } - else - gtkWidgetModifyFont(f.getName(), f.getStyle(), f.getSize()); - } - - void setParent (MenuItem item) - { - // add ourself differently, based on what type of parent we have - // yes, the typecasting here is nasty. - Object parent = item.getParent (); - if (parent instanceof MenuBar) - { - ((GtkMenuBarPeer)((MenuBar)parent).getPeer ()).addMenu ((MenuPeer) this); - } - else // parent instanceof Menu - { - ((GtkMenuPeer)((Menu)parent).getPeer ()).addItem (this, - item.getShortcut ()); - } - } - - public void disable () - { - setEnabled (false); - } - - public void enable () - { - setEnabled (true); - } - - public native void setEnabled(boolean b); - - public native void setLabel(String label); - - protected void postMenuActionEvent () - { - postActionEvent (((MenuItem)awtWidget).getActionCommand (), 0); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkMenuPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkMenuPeer.java deleted file mode 100644 index 80332dd6a72..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkMenuPeer.java +++ /dev/null @@ -1,103 +0,0 @@ -/* GtkMenuPeer.java -- Implements MenuPeer with GTK+ - Copyright (C) 1999, 2005 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.java.awt.peer.gtk; - -import java.awt.Component; -import java.awt.Menu; -import java.awt.MenuContainer; -import java.awt.MenuItem; -import java.awt.MenuShortcut; -import java.awt.peer.MenuItemPeer; -import java.awt.peer.MenuPeer; - -public class GtkMenuPeer extends GtkMenuItemPeer - implements MenuPeer -{ - native void create (String label); - native void addItem (MenuItemPeer item, int key, boolean shiftModifier); - native void setupAccelGroup (GtkGenericPeer container); - native void addTearOff (); - - public GtkMenuPeer (Menu menu) - { - super (menu); - - if (menu.isTearOff()) - addTearOff(); - - MenuContainer parent = menu.getParent (); - if (parent instanceof Menu) - setupAccelGroup ((GtkGenericPeer)((Menu)parent).getPeer ()); - else if (parent instanceof Component) - setupAccelGroup ((GtkGenericPeer)((Component)parent).getPeer ()); - else - setupAccelGroup (null); - } - - public void addItem (MenuItem item) - { - int key = 0; - boolean shiftModifier = false; - - MenuShortcut ms = item.getShortcut (); - if (ms != null) - { - key = ms.getKey (); - shiftModifier = ms.usesShiftModifier (); - } - - addItem ((MenuItemPeer) item.getPeer (), key, shiftModifier); - } - - public void addItem (MenuItemPeer item, MenuShortcut ms) - { - int key = 0; - boolean shiftModifier = false; - - if (ms != null) - { - key = ms.getKey (); - shiftModifier = ms.usesShiftModifier (); - } - - addItem (item, key, shiftModifier); - } - - public native void delItem(int index); -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkOffScreenImage.java b/libjava/gnu/java/awt/peer/gtk/GtkOffScreenImage.java deleted file mode 100644 index 48cea2d7231..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkOffScreenImage.java +++ /dev/null @@ -1,93 +0,0 @@ -/* GtkOffScreenImage.java - Copyright (C) 1999 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.java.awt.peer.gtk; - -import java.awt.Graphics; -import java.awt.Image; -import java.awt.image.ImageObserver; -import java.awt.image.ImageProducer; - -public class GtkOffScreenImage extends Image -{ - int width, height; - ImageProducer source; - Graphics g; - - public GtkOffScreenImage (ImageProducer source, Graphics g, - int width, int height) - { - this.width = width; - this.height = height; - - this.source = source; - this.g = g; - } - - public int getWidth (ImageObserver observer) - { - return width; - } - - public int getHeight (ImageObserver observer) - { - return height; - } - - public ImageProducer getSource () - { - return source; - } - - public Graphics getGraphics () - { - if (g instanceof GdkGraphics2D) - return new GdkGraphics2D ((GdkGraphics2D) this.g); - else - return new GdkGraphics ((GdkGraphics) this.g); - } - - public Object getProperty (String name, ImageObserver observer) - { - return Image.UndefinedProperty; - } - - public void flush () - { - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkPanelPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkPanelPeer.java deleted file mode 100644 index fbddb302a76..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkPanelPeer.java +++ /dev/null @@ -1,68 +0,0 @@ -/* GtkPanelPeer.java -- Implements PanelPeer with GTK - Copyright (C) 1998, 1999 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.java.awt.peer.gtk; - -import java.awt.AWTEvent; -import java.awt.Panel; -import java.awt.event.MouseEvent; -import java.awt.peer.PanelPeer; - -public class GtkPanelPeer extends GtkContainerPeer - implements PanelPeer -{ - native void create (); - - public GtkPanelPeer (Panel p) - { - super (p); - } - - public void handleEvent (AWTEvent event) - { - int id = event.getID(); - - switch (id) - { - case MouseEvent.MOUSE_PRESSED: - awtComponent.requestFocusInWindow (); - break; - } - super.handleEvent (event); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java deleted file mode 100644 index d14c16dd79d..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java +++ /dev/null @@ -1,74 +0,0 @@ -/* GtkPopupMenuPeer.java -- Implements PopupMenuPeer with GTK+ - Copyright (C) 1999 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.java.awt.peer.gtk; - -import java.awt.Component; -import java.awt.Event; -import java.awt.MenuItem; -import java.awt.Point; -import java.awt.PopupMenu; -import java.awt.peer.PopupMenuPeer; - -public class GtkPopupMenuPeer extends GtkMenuPeer - implements PopupMenuPeer -{ - public GtkPopupMenuPeer (PopupMenu menu) - { - super (menu); - } - - native void setupAccelGroup (GtkGenericPeer container); - - void setParent (MenuItem item) - { - // we don't need to "add" ourselves to our parent - } - - native void show (int x, int y, long time); - public void show (Component origin, int x, int y) - { - Point abs = origin.getLocationOnScreen (); - show (abs.x + x, abs.y + y, 0); - } - - public void show (Event e) - { - - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkScrollPanePeer.java b/libjava/gnu/java/awt/peer/gtk/GtkScrollPanePeer.java deleted file mode 100644 index 69f8b494625..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkScrollPanePeer.java +++ /dev/null @@ -1,113 +0,0 @@ -/* GtkScrollPanePeer.java -- Implements ScrollPanePeer with GTK - Copyright (C) 1998, 1999, 2005 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.java.awt.peer.gtk; - -import java.awt.Adjustable; -import java.awt.Dimension; -import java.awt.ScrollPane; -import java.awt.peer.ScrollPanePeer; - -public class GtkScrollPanePeer extends GtkContainerPeer - implements ScrollPanePeer -{ - native void create (int width, int height); - - void create () - { - create (awtComponent.getWidth (), awtComponent.getHeight ()); - } - - // native void gtkScrolledWindowSetScrollPosition(int x, int y); - native void gtkScrolledWindowSetHScrollIncrement (int u); - native void gtkScrolledWindowSetVScrollIncrement (int u); - - public GtkScrollPanePeer (ScrollPane sp) - { - super (sp); - - setPolicy (sp.getScrollbarDisplayPolicy ()); - } - - native void setPolicy (int policy); - public void childResized (int width, int height) - { - int dim[] = new int[2]; - - gtkWidgetGetDimensions (dim); - - // If the child is in this range, GTK adds both scrollbars, but - // the AWT doesn't. So set the peer's scroll policy to - // GTK_POLICY_NEVER. - if ((width > dim[0] - getVScrollbarWidth () - && width <= dim[0]) - && (height > dim[1] - getHScrollbarHeight () - && height <= dim[1])) - setPolicy (ScrollPane.SCROLLBARS_NEVER); - else - setPolicy (((ScrollPane) awtComponent).getScrollbarDisplayPolicy ()); - } - - public native int getHScrollbarHeight(); - public native int getVScrollbarWidth(); - public native void setScrollPosition(int x, int y); - - public Dimension getPreferredSize () - { - return awtComponent.getSize(); - } - - public void setUnitIncrement (Adjustable adj, int u) - { - if (adj.getOrientation()==Adjustable.HORIZONTAL) - gtkScrolledWindowSetHScrollIncrement (u); - else - gtkScrolledWindowSetVScrollIncrement (u); - } - - public void setValue (Adjustable adj, int v) - { -// System.out.println("SPP: setVal: "+adj+":"+v); -// Point p=myScrollPane.getScrollPosition (); -// if (adj.getOrientation()==Adjustable.HORIZONTAL) -// gtkScrolledWindowSetScrollPosition (v,p.y); -// else -// gtkScrolledWindowSetScrollPosition (p.x,v); -// adj.setValue(v); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkScrollbarPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkScrollbarPeer.java deleted file mode 100644 index aa3a26e34ad..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkScrollbarPeer.java +++ /dev/null @@ -1,80 +0,0 @@ -/* GtkScrollbarPeer.java -- Implements ScrollbarPeer with GTK+ - Copyright (C) 1998, 1999, 2005 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.java.awt.peer.gtk; - -import java.awt.Adjustable; -import java.awt.Scrollbar; -import java.awt.event.AdjustmentEvent; -import java.awt.peer.ScrollbarPeer; - -public class GtkScrollbarPeer extends GtkComponentPeer - implements ScrollbarPeer -{ - void create () - { - Scrollbar sb = (Scrollbar) awtComponent; - - create (sb.getOrientation (), sb.getValue (), - sb.getMinimum (), sb.getMaximum (), - sb.getUnitIncrement (), sb.getBlockIncrement (), - sb.getVisibleAmount ()); - } - - native void create (int orientation, int value, - int min, int max, int stepIncr, int pageIncr, - int visibleAmount); - - native void connectSignals (); - - public GtkScrollbarPeer (Scrollbar s) - { - super (s); - } - - public native void setLineIncrement(int amount); - public native void setPageIncrement(int amount); - public native void setValues(int value, int visible, int min, int max); - - protected void postAdjustmentEvent (int type, int value) - { - q().postEvent (new AdjustmentEvent ((Adjustable)awtComponent, - AdjustmentEvent.ADJUSTMENT_VALUE_CHANGED, - type, value)); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkTextAreaPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkTextAreaPeer.java deleted file mode 100644 index fb0e2ced508..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkTextAreaPeer.java +++ /dev/null @@ -1,178 +0,0 @@ -/* GtkTextAreaPeer.java -- Implements TextAreaPeer with GTK - Copyright (C) 1998, 1999, 2002 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.java.awt.peer.gtk; - -import java.awt.Dimension; -import java.awt.Font; -import java.awt.FontMetrics; -import java.awt.TextArea; -import java.awt.peer.TextAreaPeer; - -public class GtkTextAreaPeer extends GtkTextComponentPeer - implements TextAreaPeer -{ - private static transient int DEFAULT_ROWS = 10; - private static transient int DEFAULT_COLS = 80; - - native void create (int width, int height, int scrollbarVisibility); - - native void gtkWidgetModifyFont (String name, int style, int size); - native void gtkWidgetRequestFocus (); - - void create () - { - Font f = awtComponent.getFont (); - - // By default, Sun sets a TextArea's font when its peer is - // created. If f != null then the peer's font is set by - // GtkComponent.create. - if (f == null) - { - f = new Font ("Dialog", Font.PLAIN, 12); - awtComponent.setFont (f); - } - - FontMetrics fm = getFontMetrics (f); - - TextArea ta = ((TextArea) awtComponent); - int sizeRows = ta.getRows (); - int sizeCols = ta.getColumns (); - - sizeRows = sizeRows == 0 ? DEFAULT_ROWS : sizeRows; - sizeCols = sizeCols == 0 ? DEFAULT_COLS : sizeCols; - - int width = sizeCols * fm.getMaxAdvance (); - int height = sizeRows * (fm.getMaxDescent () + fm.getMaxAscent ()); - - create (width, height, ta.getScrollbarVisibility ()); - setEditable (ta.isEditable ()); - } - - public GtkTextAreaPeer (TextArea ta) - { - super (ta); - } - - public native void insert (String str, int pos); - public native void replaceRange (String str, int start, int end); - - public Dimension getMinimumSize (int rows, int cols) - { - return minimumSize (rows == 0 ? DEFAULT_ROWS : rows, - cols == 0 ? DEFAULT_COLS : cols); - } - - public Dimension getPreferredSize (int rows, int cols) - { - return preferredSize (rows == 0 ? DEFAULT_ROWS : rows, - cols == 0 ? DEFAULT_COLS : cols); - } - - native int getHScrollbarHeight (); - native int getVScrollbarWidth (); - - // Deprecated - public Dimension minimumSize (int rows, int cols) - { - TextArea ta = ((TextArea) awtComponent); - int height = 0; - int width = 0; - - if (ta.getScrollbarVisibility () == TextArea.SCROLLBARS_BOTH - || ta.getScrollbarVisibility () == TextArea.SCROLLBARS_HORIZONTAL_ONLY) - height = getHScrollbarHeight (); - - if (ta.getScrollbarVisibility () == TextArea.SCROLLBARS_BOTH - || ta.getScrollbarVisibility () == TextArea.SCROLLBARS_VERTICAL_ONLY) - width = getVScrollbarWidth (); - - Font f = awtComponent.getFont (); - if (f == null) - return new Dimension (width, height); - - FontMetrics fm = getFontMetrics (f); - - int sizeRows = rows == 0 ? DEFAULT_ROWS : rows; - int sizeCols = cols == 0 ? DEFAULT_COLS : cols; - - width += sizeCols * fm.getMaxAdvance (); - height += sizeRows * (fm.getMaxDescent () + fm.getMaxAscent ()); - - return new Dimension (width, height); - } - - public Dimension preferredSize (int rows, int cols) - { - TextArea ta = ((TextArea) awtComponent); - int height = 0; - int width = 0; - - if (ta.getScrollbarVisibility () == TextArea.SCROLLBARS_BOTH - || ta.getScrollbarVisibility () == TextArea.SCROLLBARS_HORIZONTAL_ONLY) - height = getHScrollbarHeight (); - - if (ta.getScrollbarVisibility () == TextArea.SCROLLBARS_BOTH - || ta.getScrollbarVisibility () == TextArea.SCROLLBARS_VERTICAL_ONLY) - width = getVScrollbarWidth (); - - Font f = awtComponent.getFont (); - if (f == null) - return new Dimension (width, height); - - FontMetrics fm = getFontMetrics (f); - - int sizeRows = rows == 0 ? DEFAULT_ROWS : rows; - int sizeCols = cols == 0 ? DEFAULT_COLS : cols; - - width += sizeCols * fm.getMaxAdvance (); - height += sizeRows * (fm.getMaxDescent () + fm.getMaxAscent ()); - - return new Dimension (width, height); - } - - public void replaceText (String str, int start, int end) - { - replaceRange (str, start, end); - } - - public void insertText (String str, int pos) - { - insert (str, pos); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkTextComponentPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkTextComponentPeer.java deleted file mode 100644 index c1f1cf0e1ae..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkTextComponentPeer.java +++ /dev/null @@ -1,87 +0,0 @@ -/* GtkTextComponentPeer.java -- Implements TextComponentPeer with GTK - Copyright (C) 1998, 1999 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.java.awt.peer.gtk; - -import java.awt.Rectangle; -import java.awt.TextComponent; -import java.awt.event.TextEvent; -import java.awt.peer.TextComponentPeer; - -public class GtkTextComponentPeer extends GtkComponentPeer - implements TextComponentPeer -{ - GtkTextComponentPeer (TextComponent tc) - { - super (tc); - - setText (tc.getText ()); - setCaretPosition(0); - } - - public native void connectSignals (); - - public native int getCaretPosition (); - public native void setCaretPosition (int pos); - public native int getSelectionStart (); - public native int getSelectionEnd (); - public native String getText (); - public native void select (int start, int end); - public native void setEditable (boolean state); - public native void setText (String text); - - public int getIndexAtPoint(int x, int y) - { - return 0; // FIXME - } - - public Rectangle getCharacterBounds (int pos) - { - return null; - } - - public long filterEvents (long filter) - { - return filter; // FIXME - } - - protected void postTextEvent () - { - q().postEvent (new TextEvent (awtComponent, TextEvent.TEXT_VALUE_CHANGED)); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkTextFieldPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkTextFieldPeer.java deleted file mode 100644 index 1031f7cc9e6..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkTextFieldPeer.java +++ /dev/null @@ -1,162 +0,0 @@ -/* GtkTextFieldPeer.java -- Implements TextFieldPeer with GTK - Copyright (C) 1998, 1999, 2002 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.java.awt.peer.gtk; - -import java.awt.AWTEvent; -import java.awt.Dimension; -import java.awt.Font; -import java.awt.FontMetrics; -import java.awt.TextField; -import java.awt.event.KeyEvent; -import java.awt.peer.TextFieldPeer; - -public class GtkTextFieldPeer extends GtkTextComponentPeer - implements TextFieldPeer -{ - native void create (int width); - native void gtkWidgetSetBackground (int red, int green, int blue); - native void gtkWidgetSetForeground (int red, int green, int blue); - - void create () - { - Font f = awtComponent.getFont (); - - // By default, Sun sets a TextField's font when its peer is - // created. If f != null then the peer's font is set by - // GtkComponent.create. - if (f == null) - { - f = new Font ("Dialog", Font.PLAIN, 12); - awtComponent.setFont (f); - } - - FontMetrics fm = getFontMetrics (f); - - TextField tf = ((TextField) awtComponent); - int cols = tf.getColumns (); - - int text_width = cols * fm.getMaxAdvance (); - - create (text_width); - - setEditable (tf.isEditable ()); - } - - native int gtkEntryGetBorderWidth (); - - native void gtkWidgetModifyFont (String name, int style, int size); - - public GtkTextFieldPeer (TextField tf) - { - super (tf); - - if (tf.echoCharIsSet ()) - setEchoChar (tf.getEchoChar ()); - } - - public Dimension getMinimumSize (int cols) - { - return minimumSize (cols); - } - - public Dimension getPreferredSize (int cols) - { - return preferredSize (cols); - } - - public native void setEchoChar (char c); - - // Deprecated - public Dimension minimumSize (int cols) - { - int dim[] = new int[2]; - - gtkWidgetGetPreferredDimensions (dim); - - Font f = awtComponent.getFont (); - if (f == null) - return new Dimension (2 * gtkEntryGetBorderWidth (), dim[1]); - - FontMetrics fm = getFontMetrics (f); - - int text_width = cols * fm.getMaxAdvance (); - - int width = text_width + 2 * gtkEntryGetBorderWidth (); - - return new Dimension (width, dim[1]); - } - - public Dimension preferredSize (int cols) - { - int dim[] = new int[2]; - - gtkWidgetGetPreferredDimensions (dim); - - Font f = awtComponent.getFont (); - if (f == null) - return new Dimension (2 * gtkEntryGetBorderWidth (), dim[1]); - - FontMetrics fm = getFontMetrics (f); - - int text_width = cols * fm.getMaxAdvance (); - - int width = text_width + 2 * gtkEntryGetBorderWidth (); - - return new Dimension (width, dim[1]); - } - - public void setEchoCharacter (char c) - { - setEchoChar (c); - } - - public void handleEvent (AWTEvent e) - { - if (e.getID () == KeyEvent.KEY_PRESSED) - { - KeyEvent ke = (KeyEvent) e; - - if (!ke.isConsumed () - && ke.getKeyCode () == KeyEvent.VK_ENTER) - postActionEvent (getText (), ke.getModifiersEx ()); - } - - super.handleEvent (e); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkToolkit.java b/libjava/gnu/java/awt/peer/gtk/GtkToolkit.java deleted file mode 100644 index 10afde77c74..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkToolkit.java +++ /dev/null @@ -1,670 +0,0 @@ -/* GtkToolkit.java -- Implements an AWT Toolkit using GTK for peers - Copyright (C) 1998, 1999, 2002, 2003, 2004, 2005 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.java.awt.peer.gtk; - -import gnu.classpath.Configuration; -import gnu.java.awt.EmbeddedWindow; -import gnu.java.awt.EmbeddedWindowSupport; -import gnu.java.awt.peer.ClasspathFontPeer; -import gnu.java.awt.peer.ClasspathTextLayoutPeer; -import gnu.java.awt.peer.EmbeddedWindowPeer; - -import java.awt.*; -import java.awt.datatransfer.Clipboard; -import java.awt.dnd.DragGestureEvent; -import java.awt.dnd.peer.DragSourceContextPeer; -import java.awt.font.FontRenderContext; -import java.awt.im.InputMethodHighlight; -import java.awt.image.BufferedImage; -import java.awt.image.ColorModel; -import java.awt.image.ImageConsumer; -import java.awt.image.ImageObserver; -import java.awt.image.ImageProducer; -import java.awt.peer.*; -import java.io.InputStream; -import java.net.URL; -import java.text.AttributedString; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Hashtable; -import java.util.Iterator; -import java.util.LinkedHashMap; -import java.util.Map; -import java.util.Properties; - -import javax.imageio.spi.IIORegistry; - -/* This class uses a deprecated method java.awt.peer.ComponentPeer.getPeer(). - This merits comment. We are basically calling Sun's bluff on this one. - We think Sun has deprecated it simply to discourage its use as it is - bad programming style. However, we need to get at a component's peer in - this class. If getPeer() ever goes away, we can implement a hash table - that will keep up with every window's peer, but for now this is faster. */ - -/** - * This class accesses a system property called - * gnu.java.awt.peer.gtk.Graphics. If the property is defined and - * equal to "Graphics2D", the cairo-based GdkGraphics2D will be used in - * drawing contexts. Any other value will cause the older GdkGraphics - * object to be used. - */ -public class GtkToolkit extends gnu.java.awt.ClasspathToolkit - implements EmbeddedWindowSupport -{ - Hashtable containers = new Hashtable(); - static EventQueue q; - static Clipboard systemClipboard; - static boolean useGraphics2dSet; - static boolean useGraphics2d; - - public static boolean useGraphics2D() - { - if (useGraphics2dSet) - return useGraphics2d; - useGraphics2d = System.getProperty("gnu.java.awt.peer.gtk.Graphics", - "Graphics").equals("Graphics2D"); - useGraphics2dSet = true; - return useGraphics2d; - } - - static native void gtkInit(int portableNativeSync); - - static - { - if (Configuration.INIT_LOAD_LIBRARY) - System.loadLibrary("gtkpeer"); - - int portableNativeSync; - String portNatSyncProp = - System.getProperty("gnu.classpath.awt.gtk.portable.native.sync"); - - if (portNatSyncProp == null) - portableNativeSync = -1; // unset - else if (Boolean.valueOf(portNatSyncProp).booleanValue()) - portableNativeSync = 1; // true - else - portableNativeSync = 0; // false - - gtkInit(portableNativeSync); - } - - public GtkToolkit () - { - systemClipboard = new GtkClipboard (); - } - - public native void beep(); - private native void getScreenSizeDimensions(int[] xy); - - public int checkImage (Image image, int width, int height, - ImageObserver observer) - { - int status = ImageObserver.ALLBITS - | ImageObserver.WIDTH - | ImageObserver.HEIGHT; - - if (image instanceof GtkImage) - { - status = ((GtkImage) image).checkImage (); - } - - if (observer != null) - observer.imageUpdate (image, status, - -1, -1, - image.getWidth (observer), - image.getHeight (observer)); - - return status; - } - - /** - * A helper class to return to clients in cases where a BufferedImage is - * desired but its construction fails. - */ - private class GtkErrorImage extends Image - { - public GtkErrorImage() - { - } - - public int getWidth(ImageObserver observer) - { - return -1; - } - - public int getHeight(ImageObserver observer) - { - return -1; - } - - public ImageProducer getSource() - { - - return new ImageProducer() - { - HashSet consumers = new HashSet(); - public void addConsumer(ImageConsumer ic) - { - consumers.add(ic); - } - - public boolean isConsumer(ImageConsumer ic) - { - return consumers.contains(ic); - } - - public void removeConsumer(ImageConsumer ic) - { - consumers.remove(ic); - } - - public void startProduction(ImageConsumer ic) - { - consumers.add(ic); - Iterator i = consumers.iterator(); - while(i.hasNext()) - { - ImageConsumer c = (ImageConsumer) i.next(); - c.imageComplete(ImageConsumer.IMAGEERROR); - } - } - public void requestTopDownLeftRightResend(ImageConsumer ic) - { - startProduction(ic); - } - }; - } - - public Graphics getGraphics() - { - return null; - } - - public Object getProperty(String name, ImageObserver observer) - { - return null; - } - public Image getScaledInstance(int width, int height, int flags) - { - return new GtkErrorImage(); - } - - public void flush() - { - } - } - - - /** - * Helper to return either a BufferedImage -- the argument -- or a - * GtkErrorImage if the argument is null. - */ - - private Image bufferedImageOrError(BufferedImage b) - { - if (b == null) - return new GtkErrorImage(); - else - return b; - } - - - public Image createImage (String filename) - { - if (useGraphics2D()) - return bufferedImageOrError(GdkPixbufDecoder.createBufferedImage (filename)); - else - { - GdkPixbufDecoder d = new GdkPixbufDecoder (filename); - GtkImage image = new GtkImage (d, null); - d.startProduction (image); - return image; - } - } - - public Image createImage (URL url) - { - if (useGraphics2D()) - return bufferedImageOrError(GdkPixbufDecoder.createBufferedImage (url)); - else - { - GdkPixbufDecoder d = new GdkPixbufDecoder (url); - GtkImage image = new GtkImage (d, null); - d.startProduction (image); - return image; - } - } - - public Image createImage (ImageProducer producer) - { - if (useGraphics2D()) - return bufferedImageOrError(GdkPixbufDecoder.createBufferedImage (producer)); - else - { - GtkImage image = new GtkImage (producer, null); - producer.startProduction (image); - return image; - } - } - - public Image createImage (byte[] imagedata, int imageoffset, - int imagelength) - { - if (useGraphics2D()) - return bufferedImageOrError(GdkPixbufDecoder.createBufferedImage (imagedata, - imageoffset, - imagelength)); - else - { - GdkPixbufDecoder d = new GdkPixbufDecoder (imagedata, - imageoffset, - imagelength); - GtkImage image = new GtkImage (d, null); - d.startProduction (image); - return image; - } - } - - /** - * Creates an ImageProducer from the specified URL. The image is assumed - * to be in a recognised format. - * - * @param url URL to read image data from. - */ - public ImageProducer createImageProducer(URL url) - { - return new GdkPixbufDecoder(url); - } - - public ColorModel getColorModel () - { - return ColorModel.getRGBdefault (); - } - - public String[] getFontList () - { - return (new String[] { "Dialog", - "DialogInput", - "Monospaced", - "Serif", - "SansSerif" }); - } - - private class LRUCache extends LinkedHashMap - { - int max_entries; - public LRUCache(int max) - { - super(max, 0.75f, true); - max_entries = max; - } - protected boolean removeEldestEntry(Map.Entry eldest) - { - return size() > max_entries; - } - } - - private LRUCache fontCache = new LRUCache(50); - private LRUCache metricsCache = new LRUCache(50); - private LRUCache imageCache = new LRUCache(50); - - public FontMetrics getFontMetrics (Font font) - { - synchronized (metricsCache) - { - if (metricsCache.containsKey(font)) - return (FontMetrics) metricsCache.get(font); - } - - FontMetrics m = new GdkFontMetrics (font); - synchronized (metricsCache) - { - metricsCache.put(font, m); - } - return m; - } - - public Image getImage (String filename) - { - if (imageCache.containsKey(filename)) - return (Image) imageCache.get(filename); - else - { - Image im = createImage(filename); - imageCache.put(filename, im); - return im; - } - } - - public Image getImage (URL url) - { - if (imageCache.containsKey(url)) - return (Image) imageCache.get(url); - else - { - Image im = createImage(url); - imageCache.put(url, im); - return im; - } - } - - public PrintJob getPrintJob (Frame frame, String jobtitle, Properties props) - { - return null; - } - - public native int getScreenResolution(); - - public Dimension getScreenSize () - { - int dim[] = new int[2]; - getScreenSizeDimensions(dim); - return new Dimension(dim[0], dim[1]); - } - - public Clipboard getSystemClipboard() - { - return systemClipboard; - } - - public boolean prepareImage (Image image, int width, int height, - ImageObserver observer) - { - GtkImage i = (GtkImage) image; - - if (i.isLoaded ()) return true; - - class PrepareImage extends Thread - { - GtkImage image; - ImageObserver observer; - - PrepareImage (GtkImage image, ImageObserver observer) - { - this.image = image; - image.setObserver (observer); - } - - public void run () - { - image.source.startProduction (image); - } - } - - new PrepareImage (i, observer).start (); - return false; - } - - public native void sync(); - - protected void setComponentState (Component c, GtkComponentPeer cp) - { - /* Make the Component reflect Peer defaults */ - if (c.getForeground () == null) - c.setForeground (cp.getForeground ()); - if (c.getBackground () == null) - c.setBackground (cp.getBackground ()); - // if (c.getFont () == null) - // c.setFont (cp.getFont ()); - - /* Make the Peer reflect the state of the Component */ - if (! (c instanceof Window)) - { - cp.setCursor (c.getCursor ()); - - Rectangle bounds = c.getBounds (); - cp.setBounds (bounds.x, bounds.y, bounds.width, bounds.height); - cp.setVisible (c.isVisible ()); - } - } - - protected ButtonPeer createButton (Button b) - { - return new GtkButtonPeer (b); - } - - protected CanvasPeer createCanvas (Canvas c) - { - return new GtkCanvasPeer (c); - } - - protected CheckboxPeer createCheckbox (Checkbox cb) - { - return new GtkCheckboxPeer (cb); - } - - protected CheckboxMenuItemPeer createCheckboxMenuItem (CheckboxMenuItem cmi) - { - return new GtkCheckboxMenuItemPeer (cmi); - } - - protected ChoicePeer createChoice (Choice c) - { - return new GtkChoicePeer (c); - } - - protected DialogPeer createDialog (Dialog d) - { - return new GtkDialogPeer (d); - } - - protected FileDialogPeer createFileDialog (FileDialog fd) - { - return new GtkFileDialogPeer (fd); - } - - protected FramePeer createFrame (Frame f) - { - return new GtkFramePeer (f); - } - - protected LabelPeer createLabel (Label label) - { - return new GtkLabelPeer (label); - } - - protected ListPeer createList (List list) - { - return new GtkListPeer (list); - } - - protected MenuPeer createMenu (Menu m) - { - return new GtkMenuPeer (m); - } - - protected MenuBarPeer createMenuBar (MenuBar mb) - { - return new GtkMenuBarPeer (mb); - } - - protected MenuItemPeer createMenuItem (MenuItem mi) - { - return new GtkMenuItemPeer (mi); - } - - protected PanelPeer createPanel (Panel p) - { - return new GtkPanelPeer (p); - } - - protected PopupMenuPeer createPopupMenu (PopupMenu target) - { - return new GtkPopupMenuPeer (target); - } - - protected ScrollPanePeer createScrollPane (ScrollPane sp) - { - return new GtkScrollPanePeer (sp); - } - - protected ScrollbarPeer createScrollbar (Scrollbar sb) - { - return new GtkScrollbarPeer (sb); - } - - protected TextAreaPeer createTextArea (TextArea ta) - { - return new GtkTextAreaPeer (ta); - } - - protected TextFieldPeer createTextField (TextField tf) - { - return new GtkTextFieldPeer (tf); - } - - protected WindowPeer createWindow (Window w) - { - return new GtkWindowPeer (w); - } - - public EmbeddedWindowPeer createEmbeddedWindow (EmbeddedWindow w) - { - return new GtkEmbeddedWindowPeer (w); - } - - /** - * @deprecated part of the older "logical font" system in earlier AWT - * implementations. Our newer Font class uses getClasspathFontPeer. - */ - protected FontPeer getFontPeer (String name, int style) { - // All fonts get a default size of 12 if size is not specified. - return getFontPeer(name, style, 12); - } - - /** - * Private method that allows size to be set at initialization time. - */ - private FontPeer getFontPeer (String name, int style, int size) - { - Map attrs = new HashMap (); - ClasspathFontPeer.copyStyleToAttrs (style, attrs); - ClasspathFontPeer.copySizeToAttrs (size, attrs); - return getClasspathFontPeer (name, attrs); - } - - /** - * Newer method to produce a peer for a Font object, even though Sun's - * design claims Font should now be peerless, we do not agree with this - * model, hence "ClasspathFontPeer". - */ - - public ClasspathFontPeer getClasspathFontPeer (String name, Map attrs) - { - Map keyMap = new HashMap (attrs); - // We don't know what kind of "name" the user requested (logical, face, - // family), and we don't actually *need* to know here. The worst case - // involves failure to consolidate fonts with the same backend in our - // cache. This is harmless. - keyMap.put ("GtkToolkit.RequestedFontName", name); - if (fontCache.containsKey (keyMap)) - return (ClasspathFontPeer) fontCache.get (keyMap); - else - { - ClasspathFontPeer newPeer = new GdkFontPeer (name, attrs); - fontCache.put (keyMap, newPeer); - return newPeer; - } - } - - public ClasspathTextLayoutPeer getClasspathTextLayoutPeer (AttributedString str, - FontRenderContext frc) - { - return new GdkTextLayout(str, frc); - } - - protected EventQueue getSystemEventQueueImpl() - { - synchronized (GtkToolkit.class) - { - if (q == null) - { - q = new EventQueue(); - GtkGenericPeer.enableQueue (q); - } - } - return q; - } - - protected native void loadSystemColors (int[] systemColors); - - public DragSourceContextPeer createDragSourceContextPeer(DragGestureEvent e) - { - throw new Error("not implemented"); - } - - public Map mapInputMethodHighlight(InputMethodHighlight highlight) - { - throw new Error("not implemented"); - } - - public Rectangle getBounds() - { - int[] dims = new int[2]; - getScreenSizeDimensions(dims); - return new Rectangle(0, 0, dims[0], dims[1]); - } - - // ClasspathToolkit methods - - public GraphicsEnvironment getLocalGraphicsEnvironment() - { - return new GdkGraphicsEnvironment(this); - } - - public Font createFont(int format, InputStream stream) - { - throw new UnsupportedOperationException(); - } - - public RobotPeer createRobot (GraphicsDevice screen) throws AWTException - { - return new GdkRobotPeer (screen); - } - - public void registerImageIOSpis(IIORegistry reg) - { - GdkPixbufDecoder.registerSpis(reg); - } - - public native boolean nativeQueueEmpty(); - public native void wakeNativeQueue(); - public native void iterateNativeQueue(EventQueue locked, boolean block); - -} // class GtkToolkit diff --git a/libjava/gnu/java/awt/peer/gtk/GtkVolatileImage.java b/libjava/gnu/java/awt/peer/gtk/GtkVolatileImage.java deleted file mode 100644 index 496090a0940..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkVolatileImage.java +++ /dev/null @@ -1,118 +0,0 @@ -/* GtkVolatileImage.java -- a hardware-accelerated image buffer - Copyright (C) 2005 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.java.awt.peer.gtk; - -import java.awt.ImageCapabilities; -import java.awt.Graphics2D; -import java.awt.GraphicsConfiguration; -import java.awt.image.BufferedImage; -import java.awt.image.ImageObserver; -import java.awt.image.VolatileImage; - -public class GtkVolatileImage extends VolatileImage -{ - private int width; - private int height; - private ImageCapabilities caps; - - public GtkVolatileImage(int width, int height) - { - this(width, height, null); - } - - public GtkVolatileImage(int width, int height, ImageCapabilities caps) - { - this.width = width; - this.height = height; - this.caps = caps; - } - - // FIXME: should return a buffered image snapshot of the accelerated - // visual - public BufferedImage getSnapshot() - { - return null; - } - - public int getWidth() - { - return width; - } - - public int getHeight() - { - return height; - } - - // FIXME: should return a graphics wrapper around this image's - // visual - public Graphics2D createGraphics() - { - return null; - } - - public int validate(GraphicsConfiguration gc) - { - return VolatileImage.IMAGE_OK; - } - - public boolean contentsLost() - { - return false; - } - - public ImageCapabilities getCapabilities() - { - return caps; - } - - public synchronized Object getProperty (String name, ImageObserver observer) - { - return null; - } - - public synchronized int getWidth (ImageObserver observer) - { - return width; - } - - public synchronized int getHeight (ImageObserver observer) - { - return height; - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/GtkWindowPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkWindowPeer.java deleted file mode 100644 index bd16f3c7695..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/GtkWindowPeer.java +++ /dev/null @@ -1,210 +0,0 @@ -/* GtkWindowPeer.java -- Implements WindowPeer with GTK - Copyright (C) 1998, 1999, 2002, 2005 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.java.awt.peer.gtk; - -import java.awt.Component; -import java.awt.Frame; -import java.awt.Window; -import java.awt.event.WindowEvent; -import java.awt.peer.WindowPeer; - -public class GtkWindowPeer extends GtkContainerPeer - implements WindowPeer -{ - protected static final int GDK_WINDOW_TYPE_HINT_NORMAL = 0; - protected static final int GDK_WINDOW_TYPE_HINT_DIALOG = 1; - protected static final int GDK_WINDOW_TYPE_HINT_MENU = 2; - protected static final int GDK_WINDOW_TYPE_HINT_TOOLBAR = 3; - protected static final int GDK_WINDOW_TYPE_HINT_SPLASHSCREEN = 4; - protected static final int GDK_WINDOW_TYPE_HINT_UTILITY = 5; - protected static final int GDK_WINDOW_TYPE_HINT_DOCK = 6; - protected static final int GDK_WINDOW_TYPE_HINT_DESKTOP = 7; - - private boolean hasBeenShown = false; - private int oldState = Frame.NORMAL; - - native void gtkWindowSetTitle (String title); - native void gtkWindowSetResizable (boolean resizable); - native void gtkWindowSetModal (boolean modal); - - int getWidth () - { - return awtComponent.getWidth(); - } - - int getHeight () - { - return awtComponent.getHeight(); - } - - native void create (int type, boolean decorated, GtkWindowPeer parent); - - void create (int type, boolean decorated) - { - GtkWindowPeer parent_peer = null; - Component parent = awtComponent.getParent(); - - if (parent != null) - parent_peer = (GtkWindowPeer) awtComponent.getParent().getPeer(); - - create (type, decorated, parent_peer); - } - - void create () - { - // Create a normal undecorated window. - create (GDK_WINDOW_TYPE_HINT_NORMAL, false); - } - - void setParent () - { - setVisible (awtComponent.isVisible ()); - setEnabled (awtComponent.isEnabled ()); - } - - void setVisibleAndEnabled () - { - } - - native void connectSignals (); - - public GtkWindowPeer (Window window) - { - super (window); - } - - public native void toBack(); - public native void toFront(); - - native void nativeSetBounds (int x, int y, int width, int height); - - public void setBounds (int x, int y, int width, int height) - { - nativeSetBounds (x, y, - width - insets.left - insets.right, - height - insets.top - insets.bottom); - } - - public void setTitle (String title) - { - gtkWindowSetTitle (title); - } - - native void setSize (int width, int height); - - public void setResizable (boolean resizable) - { - // Call setSize; otherwise when resizable is changed from true to - // false the window will shrink to the dimensions it had before it - // was resizable. - setSize (awtComponent.getWidth() - insets.left - insets.right, - awtComponent.getHeight() - insets.top - insets.bottom); - gtkWindowSetResizable (resizable); - } - - native void setBoundsCallback (Window window, - int x, int y, - int width, int height); - - protected void postInsetsChangedEvent (int top, int left, - int bottom, int right) - { - insets.top = top; - insets.left = left; - insets.bottom = bottom; - insets.right = right; - } - - protected void postConfigureEvent (int x, int y, int width, int height) - { - int frame_x = x - insets.left; - int frame_y = y - insets.top; - int frame_width = width + insets.left + insets.right; - int frame_height = height + insets.top + insets.bottom; - - if (frame_x != awtComponent.getX() - || frame_y != awtComponent.getY() - || frame_width != awtComponent.getWidth() - || frame_height != awtComponent.getHeight()) - { - setBoundsCallback ((Window) awtComponent, - frame_x, frame_y, frame_width, frame_height); - - awtComponent.validate(); - } - } - - native void nativeSetVisible (boolean b); - public void setVisible (boolean b) - { - // Prevent the window manager from automatically placing this - // window when it is shown. - if (b) - setBounds (awtComponent.getX(), - awtComponent.getY(), - awtComponent.getWidth(), - awtComponent.getHeight()); - nativeSetVisible (b); - } - - void postWindowEvent (int id, Window opposite, int newState) - { - if (id == WindowEvent.WINDOW_OPENED) - { - // Post a WINDOW_OPENED event the first time this window is shown. - if (!hasBeenShown) - { - q().postEvent (new WindowEvent ((Window) awtComponent, id, - opposite)); - hasBeenShown = true; - } - } - else if (id == WindowEvent.WINDOW_STATE_CHANGED) - { - if (oldState != newState) - { - q().postEvent (new WindowEvent ((Window) awtComponent, id, opposite, - oldState, newState)); - oldState = newState; - } - } - else - q().postEvent (new WindowEvent ((Window) awtComponent, id, opposite)); - } -} diff --git a/libjava/gnu/java/awt/peer/gtk/Test.java b/libjava/gnu/java/awt/peer/gtk/Test.java deleted file mode 100644 index 66f37d814bd..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/Test.java +++ /dev/null @@ -1,299 +0,0 @@ -/* Test.java -- Tests the GTK Toolkit - Copyright (C) 1998, 1999 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. */ - - -import java.util.*; -import java.awt.*; -import java.awt.event.*; -import java.awt.peer.*; -import java.awt.datatransfer.*; -import gnu.java.awt.image.*; -import java.io.*; - -class Test -{ - static int xs = 5, ys = 5; - - public static void main(String args[]) - { - if (args.length == 0) - { - Properties prop=System.getProperties (); - prop.put ("awt.toolkit","gnu.java.awt.peer.gtk.GtkToolkit"); - } - - final Frame f=new Frame(); - f.setTitle ("Red Hat Classpath"); - -// f.addComponentListener (new ComponentAdapter() { -// public void componentMoved (ComponentEvent e) { -// System.out.println("component moved"); -// } -// public void componentResized (ComponentEvent e) { -// System.out.println("component resized"); -// } -// }); - f.setSize(200,200); - - Panel pan=new Panel(); - - final Label l = new Label ("Pithy Message:"); - l.setCursor (Cursor.getPredefinedCursor (Cursor.WAIT_CURSOR)); - pan.add (l); - - TextField tf = new TextField("Hello world!"); - pan.add(tf); - - final Image img; - img = Toolkit.getDefaultToolkit ().createImage (new XBMDecoder ("fvwm.xbm")); - - - final Canvas ch = new Canvas () { - - public void update (Graphics g) - { - System.out.println ("update called"); - super.update (g); - } - public void paint (Graphics g) { - g.drawString("Hello world!", xs+5, ys+10); - g.setColor (Color.blue); - g.drawLine (xs,ys,xs+20,ys+20); - -// System.out.println (TextArea.SCROLLBARS_BOTH); -// System.out.println (TextArea.SCROLLBARS_HORIZONTAL_ONLY); -// System.out.println (TextArea.SCROLLBARS_VERTICAL_ONLY); - -// Font f1 = new Font ("TimesRoman", Font.PLAIN, 10); -// System.out.println (f1.getName ()); -// System.out.println (f1.getFamily ()); - -// Font font = new Font ("Serif", Font.PLAIN, 18); -// g.setFont (font); -// g.setXORMode (Color.red); - - -// System.out.println (g.getFontMetrics (font).stringWidth ("foobar")); - -// System.out.println (g.drawImage (img, 0, 0, this)); - } - }; - - ch.setSize(60, 60); -// List ch=new List(); -// ch.add("Ding"); -// ch.add("September"); -// ch.add("Red"); -// ch.add("Quassia"); -// ch.add("Pterodactyl"); - -// ch.addMouseListener(new MouseAdapter() { -// public void mousePressed(MouseEvent e) { -// System.out.println("mouse pressed ch"); -// System.out.println("shift = " + e.isShiftDown()); -// System.out.println("meta = " + e.isMetaDown()); -// System.out.println("alt = " + e.isAltDown()); -// System.out.println("ctrl = " + e.isControlDown()); -// System.out.println("x = " + e.getX()); -// System.out.println("y = " + e.getY()); -// System.out.println("clickcount = " + e.getClickCount()); -// System.out.println("when = " + e.getWhen()); -// System.out.println(); -// } -// public void mouseReleased(MouseEvent e) { -// System.out.println("mouse released ch"); -// } -// public void mouseClicked(MouseEvent e) { -// System.out.println("mouse clicked ch"); -// } -// }); - - pan.add(ch); - f.add(pan,"North"); - - final ScrollPane sp=new ScrollPane(ScrollPane.SCROLLBARS_ALWAYS); - System.out.println ("ALWAYS HERE: " + ScrollPane.SCROLLBARS_ALWAYS); - System.out.println ("ALWAYS" + ScrollPane.SCROLLBARS_ALWAYS); - System.out.println ("NEEDED" + ScrollPane.SCROLLBARS_AS_NEEDED); - System.out.println ("NEVER " + ScrollPane.SCROLLBARS_NEVER); - - - final Panel p=new Panel(); - System.out.println ("PREFERED: " + p.getPreferredSize ()); - p.add(new Button("Stop")); - System.out.println ("PREFERED: " + p.getPreferredSize ()); - p.add(new Button("evil")); - System.out.println ("PREFERED: " + p.getPreferredSize ()); - p.add(new Button("hoarders")); - p.add(new Button("use")); - p.add(new Button("GNU")); - p.add(new Scrollbar(Scrollbar.HORIZONTAL)); - System.out.println ("PREFERED: " + p.getPreferredSize ()); - - sp.add(p); - f.add(sp,"South"); - - Panel east_panel = new Panel(); - east_panel.setLayout(new GridLayout (0,1)); - -// CheckboxGroup group = new CheckboxGroup(); - -// Checkbox cb=new Checkbox("one", group, true); -// east_panel.add(cb); -// cb=new Checkbox("two", group, false); -// east_panel.add(cb); - -// cb.addMouseListener(new MouseAdapter() { -// public void mousePressed(MouseEvent e) { -// System.out.println("mouse pressed cb"); -// System.out.println("shift = " + e.isShiftDown()); -// System.out.println("meta = " + e.isMetaDown()); -// System.out.println("alt = " + e.isAltDown()); -// System.out.println("ctrl = " + e.isControlDown()); -// System.out.println("x = " + e.getX()); -// System.out.println("y = " + e.getY()); -// System.out.println("clickcount = " + e.getClickCount()); -// System.out.println("when = " + e.getWhen()); -// System.out.println(); -// } -// public void mouseReleased(MouseEvent e) { -// System.out.println("mouse released cb"); -// } -// public void mouseClicked(MouseEvent e) { -// System.out.println("mouse clicked cb"); -// } -// public void mouseEntered(MouseEvent e) { -// System.out.println("mouse entered cb"); -// } -// public void mouseExited(MouseEvent e) { -// System.out.println("mouse exited cb"); -// } -// }); - - f.add(east_panel,"East"); - - final Button wb=new Button(); - wb.setLabel("Destroy Frame on Click"); - wb.addActionListener (new ActionListener () { - public void actionPerformed (ActionEvent e) { - ScrollPanePeer peer = (ScrollPanePeer)sp.getPeer (); - if (peer != null) - { - System.out.println (peer.getHScrollbarHeight ()); - System.out.println (peer.getVScrollbarWidth ()); - } - - l.setText ("Hello World!"); - System.out.println ("PREFERED: " + p.getPreferredSize ()); - - final Dialog d = new Dialog (f); - d.setModal (true); - Button b = new Button ("foobar"); - b.addMouseListener (new MouseAdapter () { - public void mousePressed (MouseEvent me) { - System.out.println ("I got called"); - d.hide (); - -// System.out.println (ScrollPane.SCROLLBARS_ALWAYS); -// System.out.println (ScrollPane.SCROLLBARS_AS_NEEDED); -// System.out.println (ScrollPane.SCROLLBARS_NEVER); - } - }); - d.add (b); - d.pack (); - d.show (); - System.out.println ("hello world"); -// System.out.println ("action listener on wb called"); -// Clipboard clip = Toolkit.getDefaultToolkit ().getSystemClipboard (); -// StringSelection ss = new StringSelection("123456789"); -// clip.setContents (ss, ss); -// Transferable t = clip.getContents (this); -// try { -// System.out.println (t.getTransferData (DataFlavor.stringFlavor)); -// } catch (Exception ex) { -// ex.printStackTrace (); -// } -// System.exit (0); - } - }); - - wb.addMouseListener(new MouseAdapter() { - public void mousePressed(MouseEvent e) { - System.out.println("mouse pressed wb"); - xs++; - ys++; - ch.repaint (); - } - public void mouseReleased(MouseEvent e) { - System.out.println("mouse released wb"); - } - public void mouseClicked(MouseEvent e) { - System.out.println("mouse clicked wb"); - } - public void mouseEntered(MouseEvent e) { - System.out.println("mouse entered wb"); - } - public void mouseExited(MouseEvent e) { - System.out.println("mouse exited wb"); - } - }); - - f.add(wb,"West"); - - f.pack(); - f.show(); - - sp.setScrollPosition (10,0); - - Toolkit t = Toolkit.getDefaultToolkit(); - /* t.beep(); */ - System.out.println("screen size: " + t.getScreenSize()); - System.out.println("resolution : " + t.getScreenResolution()); -// try { -// Thread.sleep (5000); -// } catch (InterruptedException e) {} -// f.setSize(500,500); - - System.out.println ("background of canvas: " + ch.getBackground ()); - System.out.println ("foreground of canvas: " + ch.getForeground ()); - - System.out.println("done"); - } -} - - - diff --git a/libjava/gnu/java/awt/peer/gtk/TestAWT.java b/libjava/gnu/java/awt/peer/gtk/TestAWT.java deleted file mode 100644 index 3fb00a4f2d6..00000000000 --- a/libjava/gnu/java/awt/peer/gtk/TestAWT.java +++ /dev/null @@ -1,613 +0,0 @@ -/* TestAWT.java -- Tests the AWT like testgtk - Copyright (C) 1998, 1999, 2002 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. */ - -import java.awt.List; -import java.util.*; -import java.awt.*; -import java.awt.event.*; -import java.awt.peer.*; - -class TestAWT -{ - public static void main(String args[]) - { - if (args.length==0) - { - Properties prop = System.getProperties (); - prop.put ("awt.toolkit", "gnu.java.awt.peer.gtk.GtkToolkit"); - } - MainWindow f = new MainWindow(); - System.out.println(f.isDisplayable()); - f.show(); - System.out.println(f.isDisplayable()); - } -} - -interface SubWindow -{ - public void init (); -} - -class PrettyPanel extends Panel -{ - Insets myInsets; - - public PrettyPanel () - { - myInsets = new Insets (10, 10, 10, 10); - } - public Insets getInsets () - { - return myInsets; - } -} - -abstract class PrettyFrame extends Frame -{ - public PrettyFrame () - { - ((BorderLayout) getLayout ()).setHgap (5); - ((BorderLayout) getLayout ()).setVgap (5); - } - -// public Insets getInsets() -// { -// Insets oldInsets = super.getInsets (); -// return new Insets (oldInsets.top+10, -// oldInsets.left+10, -// oldInsets.bottom+10, -// oldInsets.right+10); -// } -} - -abstract class SubFrame extends PrettyFrame implements SubWindow -{ - boolean initted = false; - - public void setVisible (boolean visible) - { - if (!initted && visible) - init(); - super.setVisible (visible); - } -} - -class MainWindow extends PrettyFrame implements ActionListener -{ - Button closeButton; - - Hashtable windows; - Vector buttons; - - void addSubWindow (String name, SubWindow w) - { - Button b = new Button (name); - b.addActionListener (this); - - buttons.addElement (b); - windows.put (b, w); - } - - MainWindow () - { - MenuBar mb = new MenuBar (); - Menu menu = new Menu ("File"); - Menu submenu = new Menu ("Testing"); - submenu.add (new CheckboxMenuItem ("Foobar")); - menu.add (submenu); - mb.add (menu); - - setMenuBar (mb); - - add (new Label ("Classpath v0.0.0"), "North"); - - closeButton = new Button ("Close"); - closeButton.addActionListener (this); - closeButton.setFont (new Font ("Serif", Font.BOLD | Font.ITALIC, 18)); - add (closeButton, "South"); - - windows = new Hashtable (); - buttons = new Vector (); - - addSubWindow ("Buttons", new ButtonsWindow ()); - addSubWindow ("Cursors", new CursorsWindow ()); - addSubWindow ("Dialog", new DialogWindow (this)); - addSubWindow ("File", new FileWindow (this)); - addSubWindow ("Labels", new LabelWindow ()); - addSubWindow ("List", new ListWindow ()); - addSubWindow ("Radio Buttons", new RadioWindow ()); - addSubWindow ("TextField", new TextFieldWindow ()); - - Panel sp = new Panel(); - PrettyPanel p = new PrettyPanel(); - p.setLayout (new GridLayout (windows.size(), 1)); - - for (Enumeration e = buttons.elements (); e.hasMoreElements (); ) - { - p.add ((Button) e.nextElement ()); - } - - sp.add (p); - add (sp, "Center"); - - setSize (200, 86 + (windows.size ()*22)); - setTitle ("TestAWT"); - } - - public void actionPerformed (ActionEvent evt) - { - Button source = (Button) evt.getSource (); - - if (source==closeButton) - { - System.getProperties ().list (System.out); - dispose(); - System.exit (0); - } - - Window w = (Window) windows.get (source); - if (w.isVisible ()) - w.dispose (); - else - { - if (w instanceof Dialog) - { - System.out.println ("Will 'show'"); - w.show(); - System.out.println ("Has shown"); - } - else - { - w.setVisible (true); - } - } - } -} - -class ButtonsWindow extends SubFrame implements ActionListener -{ - Button b[] = new Button [9]; - - public void init () - { - initted = true; - Panel p = new Panel (); - p.setLayout (new GridLayout (0, 3, 5, 5)); - - for (int i=0; i<9; i++) - { - b[i]=new Button ("button" + (i+1)); - b[i].addActionListener (this); - } - - p.add (b[0]); - p.add (b[6]); - p.add (b[4]); - p.add (b[8]); - p.add (b[1]); - p.add (b[7]); - p.add (b[3]); - p.add (b[5]); - p.add (b[2]); - - add (p, "North"); - - Button cb = new Button ("close"); - cb.addActionListener(new ActionListener () { - public void actionPerformed (ActionEvent e) { - dispose(); - } - }); - add (cb, "South"); - setTitle ("Buttons"); - } - - public void actionPerformed (ActionEvent evt) - { - Button source = (Button) evt.getSource (); - - for (int i=0; i<9; i++) - { - if (source == b[i]) - { - int i2=((i+1)==9)?0:(i+1); - if (b[i2].isVisible()) - b[i2].setVisible(false); - else - b[i2].setVisible(true); - } - } - } -} - - -class DialogWindow extends Dialog implements SubWindow -{ - Label text; - Frame parent; - boolean initted = false; - - public DialogWindow (Frame f) - { - super (f, true); - - this.parent = f; - - addWindowListener (new WindowAdapter () - { - public void windowClosing (WindowEvent e) - { - System.out.println ("Window Closing"); - text.setVisible (false); - hide (); - } - }); - } - - public void setVisible (boolean visible) - { - if (!initted && visible) - init(); - super.setVisible (visible); - } - - public void show () - { - if (!initted) - init(); - super.show (); - } - - public void init () - { - text = new Label ("Dialog Test"); - text.setAlignment (Label.CENTER); - - add (text, "North"); - text.setVisible (false); - - Panel p = new PrettyPanel(); - - Button cb = new Button ("OK"); - cb.addActionListener(new ActionListener () { - public void actionPerformed (ActionEvent e) - { - text.setVisible (false); - hide(); - } - }); - - p.setLayout (new GridLayout (1, 3)); - ((GridLayout) p.getLayout ()).setHgap (5); - ((GridLayout) p.getLayout ()).setVgap (5); - p.add (cb); - - Button toggle = new Button ("Toggle"); - p.add (toggle); - - toggle.addActionListener(new ActionListener () { - public void actionPerformed (ActionEvent e) - { - if (text.isVisible ()) - text.setVisible (false); - else - text.setVisible (true); - doLayout(); - } - }); - - Button subdlg = new Button ("SubDialog"); - p.add (subdlg); - - subdlg.addActionListener(new ActionListener () { - public void actionPerformed (ActionEvent e) - { - DialogWindow sw = new DialogWindow (parent); - System.out.println ("Will show modal sub dialog"); - sw.show (); - System.out.println ("Has shown modal sub dialog"); - } - }); - - add (p, "South"); - setTitle ("Dialog"); - setSize (240, 120); - } -} - -class CursorsWindow extends SubFrame implements ItemListener -{ - Choice cursorChoice; - Canvas cursorCanvas; - - public void init () - { - cursorChoice = new Choice(); - cursorChoice.add ("Default"); - cursorChoice.add ("Crosshair"); - cursorChoice.add ("Text"); - cursorChoice.add ("Wait"); - cursorChoice.add ("Southwest Resize"); - cursorChoice.add ("Southeast Resize"); - cursorChoice.add ("Northwest Resize"); - cursorChoice.add ("Northeast Resize"); - cursorChoice.add ("North Resize"); - cursorChoice.add ("South Resize"); - cursorChoice.add ("West Resize"); - cursorChoice.add ("East Resize"); - cursorChoice.add ("Hand"); - cursorChoice.add ("Move"); - - cursorChoice.addItemListener(this); - - add (cursorChoice, "North"); - - cursorCanvas = new Canvas () - { - public void paint (Graphics g) - { - Dimension d = this.getSize(); - g.setColor (Color.white); - g.fillRect (0, 0, d.width, d.height/2); - g.setColor (Color.black); - g.fillRect (0, d.height/2, d.width, d.height/2); - g.setColor (this.getBackground()); - g.fillRect (d.width/3, d.height/3, d.width/3, - d.height/3); - } - }; - - cursorCanvas.setSize (80,80); - - add (cursorCanvas, "Center"); - - Button cb = new Button ("Close"); - cb.addActionListener(new ActionListener () { - public void actionPerformed (ActionEvent e) { - dispose(); - } - }); - - add (cb, "South"); - setTitle ("Cursors"); - setSize (160, 180); - } - - public void itemStateChanged (ItemEvent e) - { - cursorCanvas.setCursor (Cursor.getPredefinedCursor (cursorChoice.getSelectedIndex())); - } -} - -class TextFieldWindow extends SubFrame implements ItemListener -{ - Checkbox editable, visible, sensitive; - TextField text; - - public void init () - { - initted = true; - text = new TextField ("hello world"); - add (text, "North"); - - Panel p = new Panel(); - p.setLayout (new GridLayout (3, 1)); - ((GridLayout) p.getLayout ()).setHgap (5); - ((GridLayout) p.getLayout ()).setVgap (5); - - editable = new Checkbox("Editable", true); - p.add (editable); - editable.addItemListener (this); - - visible = new Checkbox("Visible", true); - p.add (visible); - visible.addItemListener (this); - - sensitive = new Checkbox("Sensitive", true); - p.add (sensitive); - sensitive.addItemListener (this); - - add (p, "Center"); - - Button cb = new Button ("Close"); - cb.addActionListener(new ActionListener () { - public void actionPerformed (ActionEvent e) { - dispose(); - } - }); - - add (cb, "South"); - setTitle ("TextField"); - setSize (160, 180); - } - - public void itemStateChanged (ItemEvent e) - { - boolean on=true; - - if (e.getStateChange () == ItemEvent.DESELECTED) - on=false; - if (e.getSource() == editable) - text.setEditable (on); - if (e.getSource() == visible) - if (on) - text.setEchoChar ((char) 0); - else - text.setEchoChar ('*'); - if (e.getSource() == sensitive) - text.setEnabled (on); - - } -} - -class FileWindow extends FileDialog implements SubWindow -{ - boolean initted = false; - - public FileWindow (MainWindow mw) - { - super (mw); - } - - public void setVisible (boolean visible) - { - if (!initted && visible) - init(); - super.setVisible (visible); - } - - public void init() - { - initted = true; - } -} - -class LabelWindow extends SubFrame -{ - public void init () - { - initted = true; - - Panel p = new Panel(); - p.setLayout (new GridLayout (3, 1)); - ((GridLayout) p.getLayout ()).setHgap (5); - ((GridLayout) p.getLayout ()).setVgap (5); - - p.add (new Label ("left justified label", Label.LEFT)); - p.add (new Label ("center justified label", Label.CENTER)); - p.add (new Label ("right justified label", Label.RIGHT)); - - add (p, "Center"); - - Button cb = new Button ("Close"); - cb.addActionListener(new ActionListener () { - public void actionPerformed (ActionEvent e) { - dispose(); - } - }); - - add (cb, "South"); - setTitle ("Labels"); - setSize (160, 180); - } -} - -class ListWindow extends SubFrame -{ - public void init () - { - initted = true; - - Panel p = new Panel (); - p.setLayout (new GridLayout (3, 1)); - - List l = new List (5, true); - for (int i = 0; i < 10; i++) - l.add ("added item " + i); - - p.add (l); - - add (p, "Center"); - - Button cb = new Button ("Close"); - cb.addActionListener(new ActionListener () { - public void actionPerformed (ActionEvent e) { - dispose(); - } - }); - - add (cb, "South"); - setTitle ("List"); - setSize (85, 167); - } -} - - -class RadioWindow extends SubFrame -{ - public void init () - { - initted = true; - - Panel p = new Panel(); - p.setLayout (new GridLayout (3, 1)); - ((GridLayout) p.getLayout ()).setHgap (5); - ((GridLayout) p.getLayout ()).setVgap (5); - - final CheckboxGroup cg = new CheckboxGroup(); - final Checkbox[] boxes = new Checkbox[3]; - for (int i = 0; i < 3; ++i) - { - boxes[i] = new Checkbox("button" + i, cg, i == 0); - p.add(boxes[i]); - } - - add (p, "North"); - - p = new Panel(); - p.setLayout (new GridLayout (1, 3)); - ((GridLayout) p.getLayout ()).setHgap (5); - ((GridLayout) p.getLayout ()).setVgap (5); - - for (int i = 0; i < 3; ++i) - { - final int val = i; - Button tweak = new Button ("Set " + i); - tweak.addActionListener(new ActionListener () - { - public void actionPerformed (ActionEvent e) - { - cg.setSelectedCheckbox(boxes[val]); - } - }); - p.add(tweak); - } - - add (p, "Center"); - - Button cb = new Button ("Close"); - cb.addActionListener(new ActionListener () { - public void actionPerformed (ActionEvent e) { - dispose(); - } - }); - - add (cb, "South"); - setTitle ("Radio Buttons"); - setSize (85, 167); - } -} diff --git a/libjava/gnu/java/beans/BeanInfoEmbryo.java b/libjava/gnu/java/beans/BeanInfoEmbryo.java deleted file mode 100644 index 0cf73e5b9ae..00000000000 --- a/libjava/gnu/java/beans/BeanInfoEmbryo.java +++ /dev/null @@ -1,171 +0,0 @@ -/* gnu.java.beans.BeanInfoEmbryo - Copyright (C) 1998, 2002 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.java.beans; - -import java.beans.BeanDescriptor; -import java.beans.BeanInfo; -import java.beans.EventSetDescriptor; -import java.beans.IndexedPropertyDescriptor; -import java.beans.MethodDescriptor; -import java.beans.PropertyDescriptor; -import java.lang.reflect.Method; -import java.util.Arrays; -import java.util.Enumeration; -import java.util.Hashtable; -import java.util.Iterator; -import java.util.Map; -import java.util.TreeMap; -import java.util.Vector; - -/** - ** A BeanInfoEmbryo accumulates information about a Bean - ** while it is in the process of being created, and then - ** when you are done accumulating the information, the - ** getBeanInfo() method may be called to create a BeanInfo - ** object based on the information.

- ** - ** This class is not well-synchronized. (It can be, it - ** just isn't yet.) - ** - ** @author John Keiser - ** @version 1.1.0, 30 Jul 1998 - ** @see java.beans.BeanInfo - **/ - -public class BeanInfoEmbryo { - - // by using a TreeMap the properties will be sorted alphabetically by name - // which matches the (undocumented) behavior of jdk - TreeMap properties = new TreeMap(); - Hashtable events = new Hashtable(); - Vector methods = new Vector(); - - BeanDescriptor beanDescriptor; - BeanInfo[] additionalBeanInfo; - java.awt.Image[] im; - String defaultPropertyName; - String defaultEventName; - - public BeanInfoEmbryo() { - } - - public BeanInfo getBeanInfo() { - int defaultProperty = -1; - int defaultEvent = -1; - - PropertyDescriptor[] Aproperties = new PropertyDescriptor[properties.size()]; - int i = 0; - Iterator it = properties.entrySet().iterator(); - while (it.hasNext()) { - Aproperties[i] = (PropertyDescriptor) (((Map.Entry)it.next()).getValue()); - if(defaultPropertyName != null && Aproperties[i].getName().equals(defaultPropertyName)) { - defaultProperty = i; - } - i++; - } - - EventSetDescriptor[] Aevents = new EventSetDescriptor[events.size()]; - i = 0; - Enumeration e = events.elements(); - while (e.hasMoreElements()) { - Aevents[i] = (EventSetDescriptor) e.nextElement(); - if(defaultEventName != null && Aevents[i].getName().equals(defaultEventName)) { - defaultEvent = i; - } - i++; - } - - MethodDescriptor[] Amethods = new MethodDescriptor[methods.size()]; - methods.copyInto(Amethods); - - return new ExplicitBeanInfo(beanDescriptor,additionalBeanInfo,Aproperties,defaultProperty,Aevents,defaultEvent,Amethods,im); - } - - public void setBeanDescriptor(BeanDescriptor b) { - beanDescriptor = b; - } - - public void setAdditionalBeanInfo(BeanInfo[] b) { - additionalBeanInfo = b; - } - - public boolean hasProperty(PropertyDescriptor p) { - return properties.get(p.getName()) != null; - } - public void addProperty(PropertyDescriptor p) { - properties.put(p.getName(),p); - } - public void addIndexedProperty(IndexedPropertyDescriptor p) { - properties.put(p.getName(),p); - } - - public boolean hasEvent(EventSetDescriptor e) { - return events.get(e.getName()) != null; - } - public void addEvent(EventSetDescriptor e) { - events.put(e.getName(),e); - } - - public boolean hasMethod(MethodDescriptor m) { - for(int i=0;iAppletContext implementation that does nothing. - * - *

This is the default implementation for GNU Classpath and is used for Applet - * beans being created with {@link java.beans.Beans.instantiate}.

- * - *

It has no functionality in order to allow it to be used without any dependencies - * (e.g. sound, network access, ...).

- * - * @author Robert Schuster - */ -class DummyAppletContext implements AppletContext -{ - private static final Enumeration EMPTY_ENUMERATION = Collections.enumeration(Collections.EMPTY_SET); - private static final AudioClip DUMMY_CLIP = new DummyAudioClip(); - - DummyAppletContext() - { - } - - /** Implementation is VM neutral and returns a dummy {@link AudioClip} instance - * for every URL that returns a non-null object on - * URL.openConnection(). - * - * @see java.applet.AppletContext#getAudioClip(java.net.URL) - * - * FIXME: When Java Sound API (javax.sound) is included in Classpath or URL is able to handle - * sampled sound this should be adjusted. - */ - public AudioClip getAudioClip(URL url) - { - try - { - return (url.openConnection() != null ? DUMMY_CLIP : null); - } - catch (IOException ioe) - { - return null; - } - } - - /** Loads the Image instance by delegating to - * {@link java.awt.Toolkit.createImage(URL) }. - * - * @see java.applet.AppletContext#getImage(java.net.URL) - * @see java.awt.Toolkit#createImage(java.net.URL) - */ - public Image getImage(URL url) - { - return Toolkit.getDefaultToolkit().createImage(url); - } - - /** Returns null for every argument. - * - * @see java.applet.AppletContext#getApplet(java.lang.String) - */ - public Applet getApplet(String name) - { - return null; - } - - /** Returns always an empty Enumeration. - * - * @see java.applet.AppletContext#getApplets() - */ - public Enumeration getApplets() - { - return EMPTY_ENUMERATION; - } - - /** Does nothing. - * - * @see java.applet.AppletContext#showDocument(java.net.URL) - */ - public void showDocument(URL url) - { - } - - /** Does nothing. - * - * @see java.applet.AppletContext#showDocument(java.net.URL, java.lang.String) - */ - public void showDocument(URL url, String target) - { - } - - /** Does nothing. - * - * @see java.applet.AppletContext#showStatus(java.lang.String) - */ - public void showStatus(String message) - { - } - - /** Does nothing. - * - * @see java.applet.AppletContext#setStream(java.lang.String, java.io.InputStream) - */ - public void setStream(String key, InputStream stream) - throws IOException - { - throw new IOException("Dummy implementation imposes zero InputStream associations."); - } - - /** Returns null for every argument. - * - * @see java.applet.AppletContext#getStream(java.lang.String) - */ - public InputStream getStream(String key) - { - return null; - } - - /** Returns always an empty iterator. - * - * @see java.applet.AppletContext#getStreamKeys() - */ - public Iterator getStreamKeys() - { - return Collections.EMPTY_SET.iterator(); - } - - /** Dummy AudioClip implementation that does nothing but - * preventing NullPointerExceptionS being thrown in programs - * that expect a valid AudioClip instance to be returned by - * their Applet. - * - * @author Robert Schuster - */ - static class DummyAudioClip implements AudioClip - { - public void play() - { - } - - public void stop() - { - } - - public void loop() - { - } - - public String toString() - { - return "DummyAudioClip never plays anything - implement javax.sound and make us happy :)"; - } - } -} diff --git a/libjava/gnu/java/beans/DummyAppletStub.java b/libjava/gnu/java/beans/DummyAppletStub.java deleted file mode 100644 index 3bcb43534cf..00000000000 --- a/libjava/gnu/java/beans/DummyAppletStub.java +++ /dev/null @@ -1,115 +0,0 @@ -/* gnu.java.beans.DummyAppletStub - Copyright (C) 2004, 2005 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.java.beans; - -import java.applet.AppletContext; -import java.applet.AppletStub; -import java.net.URL; - -/** Placeholder implementation of AppletStub providing no functionality. - *

This class is used for Applet being created with - * {@link java.beans.Bean.instantiate}.

- * - * @author Robert Schuster - */ -public class DummyAppletStub implements AppletStub -{ - private URL documentBase; - private URL codeBase; - private DummyAppletContext context; - - public DummyAppletStub(URL newCodeBase, URL newDocumentBase) - { - codeBase = newCodeBase; - documentBase = newDocumentBase; - - context = new DummyAppletContext(); - } - - /** Returns always true. - * - * @see java.applet.AppletStub#isActive() - */ - public boolean isActive() - { - return true; - } - - /** - * @see java.applet.AppletStub#getDocumentBase() - */ - public URL getDocumentBase() - { - return documentBase; - } - - /** - * @see java.applet.AppletStub#getCodeBase() - */ - public URL getCodeBase() - { - return codeBase; - } - - /** Implementation returns null for every parameter name. - * - * @see java.applet.AppletStub#getParameter(java.lang.String) - */ - public String getParameter(String name) - { - return null; - } - - /** Returns a non-functional context instance. - * - * @see java.applet.AppletStub#getAppletContext() - */ - public AppletContext getAppletContext() - { - return context; - } - - /** Does nothing. - * - * @see java.applet.AppletStub#appletResize(int, int) - */ - public void appletResize(int width, int height) - { - } -} diff --git a/libjava/gnu/java/beans/ExplicitBeanInfo.java b/libjava/gnu/java/beans/ExplicitBeanInfo.java deleted file mode 100644 index 6da5e869695..00000000000 --- a/libjava/gnu/java/beans/ExplicitBeanInfo.java +++ /dev/null @@ -1,149 +0,0 @@ -/* ExplicitBeanInfo.java -- - Copyright (C) 1998, 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.java.beans; - -import java.awt.Image; -import java.beans.BeanDescriptor; -import java.beans.BeanInfo; -import java.beans.EventSetDescriptor; -import java.beans.MethodDescriptor; -import java.beans.PropertyDescriptor; - -/** - ** ExplicitBeanInfo lets you specify in the constructor - ** all the various parts of the BeanInfo. - ** - ** @author John Keiser - ** @version 1.1.0, 30 Jul 1998 - ** @see java.beans.BeanInfo - **/ - -public class ExplicitBeanInfo implements BeanInfo { - /** The BeanDescriptor returned by getBeanDescriptor. **/ - protected BeanDescriptor beanDescriptor; - - /** The EventSetDescriptor array returned by - ** getEventSetDescriptors(). - **/ - protected EventSetDescriptor[] eventSetDescriptors = new EventSetDescriptor[0]; - - /** The PropertyDescriptor array returned by - ** getPropertyDescriptors(). - **/ - protected PropertyDescriptor[] propertyDescriptors = new PropertyDescriptor[0]; - - /** The MethodDescriptor array returned by - ** getMethodDescriptors(). - **/ - protected MethodDescriptor[] methodDescriptors; - - /** The default property index. **/ - protected int defaultPropertyIndex; - - /** The default event index. **/ - protected int defaultEventIndex; - - /** The BeanInfo array returned by - ** getAdditionalBeanInfo(). - **/ - protected BeanInfo[] additionalBeanInfo; - - /** The set of icons. **/ - protected Image[] icons; - - public ExplicitBeanInfo(BeanDescriptor beanDescriptor, - BeanInfo[] additionalBeanInfo, - PropertyDescriptor[] propertyDescriptors, - int defaultPropertyIndex, - EventSetDescriptor[] eventSetDescriptors, - int defaultEventIndex, - MethodDescriptor[] methodDescriptors, - Image[] icons) { - this.beanDescriptor = beanDescriptor; - this.additionalBeanInfo = additionalBeanInfo; - this.propertyDescriptors = propertyDescriptors; - this.defaultPropertyIndex = defaultPropertyIndex; - this.eventSetDescriptors = eventSetDescriptors; - this.defaultEventIndex = defaultEventIndex; - this.methodDescriptors = methodDescriptors; - this.icons = icons; - } - - /** Get Bean descriptor. **/ - public BeanDescriptor getBeanDescriptor() { - return beanDescriptor; - } - - /** Get Bean events. **/ - public EventSetDescriptor[] getEventSetDescriptors() { - return eventSetDescriptors; - } - - /** Get default event set. **/ - public int getDefaultEventIndex() { - return defaultEventIndex; - } - - /** Get Bean properties. **/ - public PropertyDescriptor[] getPropertyDescriptors() { - return propertyDescriptors; - } - - /** Get "default" property. **/ - public int getDefaultPropertyIndex() { - return defaultPropertyIndex; - } - - /** Get Bean methods. **/ - public MethodDescriptor[] getMethodDescriptors() { - return methodDescriptors; - } - - /** Get additional Bean info. **/ - public BeanInfo[] getAdditionalBeanInfo() { - return additionalBeanInfo; - } - - /** Get Bean icons. - ** @param iconType the type of icon - **/ - public Image getIcon(int iconType) { - return icons != null ? icons[iconType - 1] : null; - } -} diff --git a/libjava/gnu/java/beans/IntrospectionIncubator.java b/libjava/gnu/java/beans/IntrospectionIncubator.java deleted file mode 100644 index e0d9480e327..00000000000 --- a/libjava/gnu/java/beans/IntrospectionIncubator.java +++ /dev/null @@ -1,441 +0,0 @@ -/* gnu.java.beans.IntrospectionIncubator - Copyright (C) 1998, 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.java.beans; - -import gnu.java.lang.ArrayHelper; -import gnu.java.lang.ClassHelper; - -import java.beans.BeanInfo; -import java.beans.EventSetDescriptor; -import java.beans.IndexedPropertyDescriptor; -import java.beans.IntrospectionException; -import java.beans.Introspector; -import java.beans.MethodDescriptor; -import java.beans.PropertyDescriptor; -import java.lang.reflect.Array; -import java.lang.reflect.Method; -import java.lang.reflect.Modifier; -import java.util.Enumeration; -import java.util.Hashtable; -import java.util.Vector; - -/** - ** IntrospectionIncubator takes in a bunch of Methods, and - ** Introspects only those Methods you give it.
- ** - ** See {@link addMethod(Method)} for details which rules apply to - ** the methods. - ** - ** @author John Keiser - ** @author Robert Schuster - ** @see gnu.java.beans.ExplicitBeanInfo - ** @see java.beans.BeanInfo - **/ - -public class IntrospectionIncubator { - Hashtable propertyMethods = new Hashtable(); - Hashtable listenerMethods = new Hashtable(); - Vector otherMethods = new Vector(); - - Class propertyStopClass; - Class eventStopClass; - Class methodStopClass; - - public IntrospectionIncubator() { - } - - /** Examines the given method and files it in a suitable collection. - * It files the method as a property method if it finds: - *
    - *
  • boolean "is" getter
  • - *
  • "get" style getter
  • - *
  • single argument setter
  • - *
  • indiced setter and getter
  • - *
- * It files the method as a listener method if all of these rules apply: - *
    - *
  • the method name starts with "add" or "remove"
  • - *
  • there is only a single argument
  • - *
  • the argument type is a subclass of java.util.EventListener
  • - *
- * All public methods are filed as such. - * - * @param method The method instance to examine. - */ - public void addMethod(Method method) { - if(Modifier.isPublic(method.getModifiers())) { - String name = ClassHelper.getTruncatedName(method.getName()); - Class retType = method.getReturnType(); - Class[] params = method.getParameterTypes(); - boolean isVoid = retType.equals(java.lang.Void.TYPE); - Class methodClass = method.getDeclaringClass(); - - /* Accepts the method for examination if no stop class is given or the method is declared in a subclass of the stop class. - * The rules for this are described in {@link java.beans.Introspector.getBeanInfo(Class, Class)}. - * This block finds out whether the method is a suitable getter or setter method (or read/write method). - */ - if(isReachable(propertyStopClass, methodClass)) { - /* At this point a method may regarded as a property's read or write method if its name - * starts with "is", "get" or "set". However, if a method is static it cannot be part - * of a property. - */ - if(Modifier.isStatic(method.getModifiers())) { - // files method as other because it is static - otherMethods.addElement(method); - } else if(name.startsWith("is") - && retType.equals(java.lang.Boolean.TYPE) - && params.length == 0) { - // files method as boolean "is" style getter - addToPropertyHash(name,method,IS); - } else if(name.startsWith("get") && !isVoid) { - if(params.length == 0) { - // files as legal non-argument getter - addToPropertyHash(name,method,GET); - } else if(params.length == 1 && params[0].equals(java.lang.Integer.TYPE)) { - // files as legal indiced getter - addToPropertyHash(name,method,GET_I); - } else { - // files as other because the method's signature is not Bean-like - otherMethods.addElement(method); - } - } else if(name.startsWith("set") && isVoid) { - if(params.length == 1) { - // files as legal single-argument setter method - addToPropertyHash(name,method,SET); - } else if(params.length == 2 && params[0].equals(java.lang.Integer.TYPE)) { - // files as legal indiced setter method - addToPropertyHash(name,method,SET_I); - } else { - // files as other because the method's signature is not Bean-like - otherMethods.addElement(method); - } - } - } - - if(isReachable(eventStopClass, methodClass)) { - if(name.startsWith("add") - && isVoid - && params.length == 1 - && java.util.EventListener.class.isAssignableFrom(params[0])) { - addToListenerHash(name,method,ADD); - } else if(name.startsWith("remove") - && isVoid - && params.length == 1 - && java.util.EventListener.class.isAssignableFrom(params[0])) { - addToListenerHash(name,method,REMOVE); - } - } - - if(isReachable(methodStopClass, methodClass)) { - // files as reachable public method - otherMethods.addElement(method); - } - - } - } - - public void addMethods(Method[] m) { - for(int i=0;istopClass is null - * or declaringClass is a true subclass of stopClass. - * This expression is useful to detect whether a method should be introspected or not. - * The rules for this are described in {@link java.beans.Introspector.getBeanInfo(Class, Class)}. - */ - static boolean isReachable(Class stopClass, Class declaringClass) { - return stopClass == null || (stopClass.isAssignableFrom(declaringClass) && !stopClass.equals(declaringClass)); - } - - /** Transforms a property name into a part of a method name. - * E.g. "value" becomes "Value" which can then concatenated with - * "set", "get" or "is" to form a valid method name. - * - * Implementation notes: - * If "" is the argument, it is returned without changes. - * If null is the argument, null is returned. - * - * @param name Name of a property. - * @return Part of a method name of a property. - */ - static String capitalize(String name) { - try { - if(Character.isUpperCase(name.charAt(0))) { - return name; - } else { - char[] c = name.toCharArray(); - c[0] = Character.toLowerCase(c[0]); - return new String(c); - } - } catch(StringIndexOutOfBoundsException E) { - return name; - } catch(NullPointerException E) { - return null; - } - } -} - -/** This class is a hashmap key that consists of a Class and a - * String element. - * - * It is used for XXX: find out what this is used for - * - * @author John Keiser - * @author Robert Schuster - */ -class DoubleKey { - Class type; - String name; - - DoubleKey(Class type, String name) { - this.type = type; - this.name = name; - } - - Class getType() { - return type; - } - - String getName() { - return name; - } - - public boolean equals(Object o) { - if(o instanceof DoubleKey) { - DoubleKey d = (DoubleKey)o; - return d.type.equals(type) && d.name.equals(name); - } else { - return false; - } - } - - public int hashCode() { - return type.hashCode() ^ name.hashCode(); - } -} diff --git a/libjava/gnu/java/beans/decoder/AbstractContext.java b/libjava/gnu/java/beans/decoder/AbstractContext.java deleted file mode 100644 index 0e95d432986..00000000000 --- a/libjava/gnu/java/beans/decoder/AbstractContext.java +++ /dev/null @@ -1,70 +0,0 @@ -/* gnu.java.beans.decoder.AbstractContext - 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.java.beans.decoder; - - -/** AbstractContext implements some basic functionality of the Context - * interface and is therefore the base of all Context implementations. - * - * @author Robert Schuster - */ -abstract class AbstractContext implements Context -{ - private boolean isStatement; - private String id; - - public String getId() - { - return id; - } - - public void setId(String newId) - { - id = newId; - } - - public boolean isStatement() - { - return isStatement; - } - - public void setStatement(boolean b) - { - isStatement = b; - } -} diff --git a/libjava/gnu/java/beans/decoder/AbstractCreatableObjectContext.java b/libjava/gnu/java/beans/decoder/AbstractCreatableObjectContext.java deleted file mode 100644 index 47f04fa1cbe..00000000000 --- a/libjava/gnu/java/beans/decoder/AbstractCreatableObjectContext.java +++ /dev/null @@ -1,113 +0,0 @@ -/* gnu.java.beans.decoder.AbstractCreatableContext - 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.java.beans.decoder; - - -/** AbstractCreatableObjectContext is the base class for all Context implementations - * which create a result object in their lifetime. It provides means for preventing - * to create the object twice. - * - * @author Robert Schuster - * - */ -abstract class AbstractCreatableObjectContext extends AbstractObjectContext -{ - AbstractCreatableObjectContext() - { - } - - /** Adds a parameter object to this Context if the result object has not been - * created yet. Otherwise an AssemblyException is thrown that indicates a wrong - * behavior of the decoder. - */ - public final void addParameterObject(Object o) throws AssemblyException - { - if (object == null) - addParameterObjectImpl(o); - else - throw new AssemblyException(new IllegalStateException("No more parameter objects are allowed when the object as already been created.")); - } - - /** Adds a parameter object to this Context. Implement this without caring - * for illegal states because this has been done already. - * - * @param obj The parameter object to be added. - */ - protected abstract void addParameterObjectImpl(Object obj); - - /** Creates the result object if it does not exist already. - */ - public final void notifyStatement(Context outerContext) - throws AssemblyException - { - if (object != null) - return; - - object = createObject(outerContext); - } - - /** Creates the result object. This method is called only once. Implement this - * without checking for double invocations as this is already being prevented. - * - * @param outerContext The Context that exists around this one. - * @return The result object. - * @throws AssemblerException if the object creation fails somehow. - */ - protected abstract Object createObject(Context outerContext) - throws AssemblyException; - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#endContext(gnu.java.beans.decoder.Context) - */ - public final Object endContext(Context outerContext) - throws AssemblyException - { - notifyStatement(outerContext); - return object; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#subContextFailed() - */ - public boolean subContextFailed() - { - /* Returns true when the AbstractCreatableObjectContext has not created the result object yet - * (A failed subcontext automatically lets this context fail too.) - */ - return object == null; - } -} diff --git a/libjava/gnu/java/beans/decoder/AbstractElementHandler.java b/libjava/gnu/java/beans/decoder/AbstractElementHandler.java deleted file mode 100644 index e5578a990bc..00000000000 --- a/libjava/gnu/java/beans/decoder/AbstractElementHandler.java +++ /dev/null @@ -1,316 +0,0 @@ -/* gnu.java.beans.decoder.AbstractElementHandler - 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.java.beans.decoder; - -import java.beans.ExceptionListener; - -import org.xml.sax.Attributes; - -/** ElementHandler manages a Context instance and interacts with - * its parent and child handlers. - * - * @author Robert Schuster - */ -abstract class AbstractElementHandler implements ElementHandler -{ - /** The Context instance of this handler. The instance is available after the startElement() - * method was called. Otherwise the handler is marked as failed. - */ - private Context context; - - /** The parent handler. */ - private ElementHandler parent; - - /** Stores whether this handler is marked as failed. */ - private boolean hasFailed; - - /** Stores the character data which is contained in the body of the XML tag. */ - private StringBuffer buffer = new StringBuffer(); - - /** Stores whether this ElementHandler can have subelements. The information for this is taken from - * javabeans.dtd which can be found here: - * Java Persistence Article - */ - private boolean allowsSubelements; - - /** Creates a new ElementHandler with the given ElementHandler instance - * as parent. - * - * @param parentHandler The parent handler. - */ - protected AbstractElementHandler(ElementHandler parentHandler, - boolean allowsSubs) - { - parent = parentHandler; - allowsSubelements = allowsSubs; - } - - /** Evaluates the attributes and creates a Context instance. - * If the creation of the Context instance fails the ElementHandler - * is marked as failed which may affect the parent handler other. - * - * @param attributes Attributes of the XML tag. - */ - public final void start(Attributes attributes, - ExceptionListener exceptionListener) - { - try - { - // lets the subclass create the appropriate Context instance - context = startElement(attributes, exceptionListener); - } - catch (AssemblyException pe) - { - Throwable t = pe.getCause(); - - if (t instanceof Exception) - exceptionListener.exceptionThrown((Exception) t); - else - throw new InternalError("Unexpected Throwable type in AssemblerException. Please file a bug report."); - - notifyContextFailed(); - - return; - } - } - - /** Analyses the content of the Attributes instance and creates a Context - * object accordingly. - * An AssemblerException is thrown when the Context instance could not - * be created. - * - * @param attributes Attributes of the XML tag. - * @return A Context instance. - * @throws AssemblerException when Context instance could not be created. - */ - protected abstract Context startElement(Attributes attributes, ExceptionListener exceptionListener) - throws AssemblyException; - - /** Post-processes the Context. - */ - public final void end(ExceptionListener exceptionListener) - { - // skips processing if the handler is marked as failed (because the Context - // is then invalid or may not exist at all) - if (!hasFailed) - { - try - { - // note: the order of operations is very important here - // sends the stored character data to the Context - endElement(buffer.toString()); - - // reports to the parent handler if this handler's Context is a - // statement (returning no value BACK to the parent's Context) - if (context.isStatement()) - { - // This may create a valid result in the parent's Context - // or let it fail - parent.notifyStatement(exceptionListener); - - // skips any further processing if the parent handler is now marked - // as failed - if (parent.hasFailed()) - return; - } - - // processes the Context and stores the result - putObject(context.getId(), context.endContext(parent.getContext())); - - // transfers the Context's results to the parent's Context - // if it is an expression (rather than a statement) - if (! context.isStatement()) - parent.getContext().addParameterObject(context.getResult()); - } - catch (AssemblyException pe) - { - // notifies that an exception was thrown in this handler's Context - Throwable t = pe.getCause(); - - if (t instanceof Exception) - exceptionListener.exceptionThrown((Exception) t); - else - throw (InternalError) new InternalError("Severe problem while decoding XML data.") - .initCause(t); - - // marks the handler as failed - notifyContextFailed(); - } - } - } - - /** Notifies the handler's Context that its child Context will not return - * a value back. Some Context variants need this information to know when - * a method or a constructor call can be made. - * - * This method is called by a child handler. - */ - public void notifyStatement(ExceptionListener exceptionListener) - { - try - { - - // propagates to parent handler first to generate objects - // needed by this Context instance - if(context.isStatement()) - { - parent.notifyStatement(exceptionListener); - } - - // Some Context instances do stuff which can fail now. If that - // happens this handler is marked as failed. - context.notifyStatement(parent.getContext()); - } - catch (AssemblyException ae) - { - // notifies that an exception was thrown in this handler's Context - Throwable t = ae.getCause(); - - if (t instanceof Exception) - exceptionListener.exceptionThrown((Exception) t); - else - throw (InternalError) new InternalError("Severe problem while decoding XML data.") - .initCause(t); - - // marks the handler as failed - notifyContextFailed(); - } - } - - /** Marks this and any depending parent handlers as failed. Which means that on their end - * no result is calculated. - * - * When a handler has failed no more handlers are accepted within it. - */ - public final void notifyContextFailed() - { - hasFailed = true; - - // marks the parent handler as failed if its Context - // is affected by the failure of this handler's Context - if (parent.getContext().subContextFailed()) - parent.notifyContextFailed(); - } - - /** Returns whether this handler has failed. - * - * This is used to skip child elements. - * - * @return Whether this handler has failed. - */ - public final boolean hasFailed() - { - return hasFailed; - } - - /** Processes the character data when the element ends. - * - * The default implementation does nothing for convenience. - * - * @param characters - * @throws AssemblerException - */ - protected void endElement(String characters) throws AssemblyException - { - // XXX: throw an exception when unexpected character data is available? - } - - /** Adds characters from the body of the XML tag to the buffer. - * - * @param ch - * @param start - * @param length - * @throws SAXException - */ - public final void characters(char[] ch, int start, int length) - { - // simply appends character data - buffer.append(ch, start, length); - } - - /** Stores an object globally under a unique id. If the id is - * null the object is not stored. - * - * @param objectId - * @param o - */ - public void putObject(String objectId, Object o) - { - if (objectId != null) - parent.putObject(objectId, o); - } - - /** Returns a previously stored object. If the id is null the - * result is null, too. - * - * @param objectId - * @return Returns a previously stored object or null. - */ - public Object getObject(String objectId) throws AssemblyException - { - return objectId == null ? null : parent.getObject(objectId); - } - - /** Returns the Class instance as if called Class.forName() but - * uses a ClassLoader given by the user. - * - * @param className - * @return - * @throws ClassNotFoundException - */ - public Class instantiateClass(String className) - throws ClassNotFoundException - { - return parent.instantiateClass(className); - } - - public final boolean isSubelementAllowed(String subElementName) - { - return allowsSubelements && ! subElementName.equals("java"); - } - - public final Context getContext() - { - return context; - } - - public final ElementHandler getParent() - { - return parent; - } -} diff --git a/libjava/gnu/java/beans/decoder/AbstractObjectContext.java b/libjava/gnu/java/beans/decoder/AbstractObjectContext.java deleted file mode 100644 index 202c33b3413..00000000000 --- a/libjava/gnu/java/beans/decoder/AbstractObjectContext.java +++ /dev/null @@ -1,127 +0,0 @@ -/* gnu.java.beans.decoder.AbstractObjectContext - 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.java.beans.decoder; - -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; - -/** AbstractObjectContext is the base for all Context implementations which - * create or provide a result object during their lifetime. - * - *

This class provides the implementation for an indexed get and set method. - * But this does not mean that the result object supports these operation.

- * - * @author Robert Schuster - * - */ -abstract class AbstractObjectContext extends AbstractContext -{ - protected Object object; - - AbstractObjectContext() - {} - - /** Sets the result object of the Context. - * - * @param obj The result object to be set. - */ - protected final void setObject(Object obj) - { - object = obj; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#set(int, java.lang.Object) - */ - public final void set(int index, Object o) throws AssemblyException - { - try - { - Method method = - object.getClass().getMethod( - "set", - new Class[] { Integer.TYPE, Object.class }); - - method.invoke(object, new Object[] { new Integer(index), o }); - } - catch (NoSuchMethodException nsme) - { - throw new AssemblyException(nsme); - } - catch (InvocationTargetException ite) - { - throw new AssemblyException(ite.getCause()); - } - catch (IllegalAccessException iae) - { - throw new AssemblyException(iae); - } - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#get(int) - */ - public final Object get(int index) throws AssemblyException - { - try - { - Method method = - object.getClass().getMethod( - "get", - new Class[] { Integer.TYPE }); - - return method.invoke(object, new Object[] { new Integer(index)}); - } - catch (NoSuchMethodException nsme) - { - throw new AssemblyException(nsme); - } - catch (InvocationTargetException ite) - { - throw new AssemblyException(ite.getCause()); - } - catch (IllegalAccessException iae) - { - throw new AssemblyException(iae); - } - } - - public final Object getResult() - { - return object; - } -} diff --git a/libjava/gnu/java/beans/decoder/ArrayContext.java b/libjava/gnu/java/beans/decoder/ArrayContext.java deleted file mode 100644 index cf4267f2779..00000000000 --- a/libjava/gnu/java/beans/decoder/ArrayContext.java +++ /dev/null @@ -1,122 +0,0 @@ -/* gnu.java.beans.decoder.ArrayContext - 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.java.beans.decoder; - -import java.lang.reflect.Array; - -/** A Context implementation for a fixed size array. The array - * elements have to be set using IndexContext instances. - * - * @author Robert Schuster - */ -class ArrayContext extends AbstractContext -{ - private Object array; - - ArrayContext(String id, Class klass, int length) - { - setId(id); - array = Array.newInstance(klass, length); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#addObject(java.lang.Object) - */ - public void addParameterObject(Object o) throws AssemblyException - { - throw new AssemblyException(new IllegalStateException("Adding objects without an index to a fixed array is not possible.")); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#reportStatement() - */ - public void notifyStatement(Context outerContext) - { - // method call intentionally ignored because there is not any useful effect - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#endContext(gnu.java.beans.decoder.Context) - */ - public Object endContext(Context outerContext) throws AssemblyException - { - return array; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#subContextFailed() - */ - public boolean subContextFailed() - { - // returns false to indicate that assembling the array does not fail only because - // a subelement failed. - return false; - } - - public void set(int index, Object o) throws AssemblyException - { - try - { - Array.set(array, index, o); - } - catch (ArrayIndexOutOfBoundsException aioobe) - { - throw new AssemblyException(aioobe); - } - } - - public Object get(int index) throws AssemblyException - { - try - { - return Array.get(array, index); - } - catch (ArrayIndexOutOfBoundsException aioobe) - { - throw new AssemblyException(aioobe); - } - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#getResult() - */ - public Object getResult() - { - return array; - } -} diff --git a/libjava/gnu/java/beans/decoder/ArrayHandler.java b/libjava/gnu/java/beans/decoder/ArrayHandler.java deleted file mode 100644 index 23f0285192b..00000000000 --- a/libjava/gnu/java/beans/decoder/ArrayHandler.java +++ /dev/null @@ -1,118 +0,0 @@ -/* gnu.java.beans.decoder.ArrayHandler - 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.java.beans.decoder; - -import java.beans.ExceptionListener; -import java.util.HashMap; - -import org.xml.sax.Attributes; - -/** ArrayHandler processes the <array> tag. Depending on the existance of the 'length' attribute a Context for - * a fixed-size or growable array is created. - * - * @author Robert Schuster - */ -class ArrayHandler extends AbstractElementHandler -{ - /** Contains a mapping between a textual description of a primitive type (like "byte") and - * its corresponding wrapper class. This allows it to easily construct Array objects for - * primitive data types. - */ - private static HashMap typeMap = new HashMap(); - - static - { - typeMap.put("byte", Byte.TYPE); - typeMap.put("short", Short.TYPE); - typeMap.put("int", Integer.TYPE); - typeMap.put("long", Long.TYPE); - - typeMap.put("float", Float.TYPE); - typeMap.put("double", Double.TYPE); - - typeMap.put("boolean", Boolean.TYPE); - - typeMap.put("char", Character.TYPE); - } - - /** - * @param PersistenceParser - */ - ArrayHandler(ElementHandler parent) - { - super(parent, true); - } - - protected Context startElement(Attributes attributes, ExceptionListener exceptionListener) - throws AssemblyException, AssemblyException - { - String id = attributes.getValue("id"); - String className = attributes.getValue("class"); - - if (className != null) - { - try - { - Class klass; - - if (typeMap.containsKey(className)) - klass = (Class) typeMap.get(className); - else - klass = instantiateClass(className); - - String length = attributes.getValue("length"); - if (length != null) - // creates Array with predefined length - return new ArrayContext(id, klass, Integer.parseInt(length)); - else - // creates Array without length restriction - return new GrowableArrayContext(id, klass); - } - catch (ClassNotFoundException cnfe) - { - throw new AssemblyException(cnfe); - } - catch (NumberFormatException nfe) - { - throw new AssemblyException(nfe); - } - } - - throw new AssemblyException(new IllegalArgumentException("Missing 'class' attribute in tag.")); - } -} diff --git a/libjava/gnu/java/beans/decoder/AssemblyException.java b/libjava/gnu/java/beans/decoder/AssemblyException.java deleted file mode 100644 index 29dfa65ac7c..00000000000 --- a/libjava/gnu/java/beans/decoder/AssemblyException.java +++ /dev/null @@ -1,57 +0,0 @@ -/* gnu.java.beans.decoder.AssemblyException - 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.java.beans.decoder; - - -/** The AssemblyException is used to wrap the cause of problems when assembling objects. - * In all cases only the wrapped exception is given to the PersistenceParser's - * ExceptionListener instance (never the AssemblyException itself). - * - *

Note: Often multiple steps are needed to construct a fully usuable object instance. - * Such a construction can be called assembly and thats why this exception was - * named AssemblyException.

- * - * @author Robert Schuster - */ -class AssemblyException extends Exception -{ - AssemblyException(Throwable cause) - { - super(cause); - } -} diff --git a/libjava/gnu/java/beans/decoder/BooleanHandler.java b/libjava/gnu/java/beans/decoder/BooleanHandler.java deleted file mode 100644 index a34fe346e0f..00000000000 --- a/libjava/gnu/java/beans/decoder/BooleanHandler.java +++ /dev/null @@ -1,67 +0,0 @@ -/* gnu.java.beans.decoder.BooleanHandler - 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.java.beans.decoder; - - -/** Creates a Boolean instance from the character data in a <boolean> tag. - * - * @author Robert Schuster - */ -class BooleanHandler extends SimpleHandler -{ - /** - * @param PersistenceParser - */ - BooleanHandler(ElementHandler parent) - { - super(parent); - - // TODO Auto-generated constructor stub - } - - protected Object parse(String number) throws AssemblyException - { - if (number.equals("true")) - return new Boolean(true); - - if (number.equals("false")) - return new Boolean(false); - - throw new AssemblyException(new IllegalArgumentException("Element contained no valid boolean value.")); - } -} diff --git a/libjava/gnu/java/beans/decoder/ByteHandler.java b/libjava/gnu/java/beans/decoder/ByteHandler.java deleted file mode 100644 index d6c33d14d21..00000000000 --- a/libjava/gnu/java/beans/decoder/ByteHandler.java +++ /dev/null @@ -1,59 +0,0 @@ -/* gnu.java.beans.decoder.ByteHandler - 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.java.beans.decoder; - - -/** Creates a Byte instance from the character data in a <byte> tag. - * - * @author Robert Schuster - */ -class ByteHandler extends SimpleHandler -{ - /** - * @param PersistenceParser - */ - ByteHandler(ElementHandler parent) - { - super(parent); - } - - protected Object parse(String number) throws NumberFormatException - { - return Byte.valueOf(number); - } -} diff --git a/libjava/gnu/java/beans/decoder/CharHandler.java b/libjava/gnu/java/beans/decoder/CharHandler.java deleted file mode 100644 index 1b31e5b0559..00000000000 --- a/libjava/gnu/java/beans/decoder/CharHandler.java +++ /dev/null @@ -1,62 +0,0 @@ -/* gnu.java.beans.decoder.CharHandler - 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.java.beans.decoder; - - -/** Creates a Character instance from the character data in a <char> tag. - * - * @author Robert Schuster - */ -class CharHandler extends SimpleHandler -{ - /** - * @param PersistenceParser - */ - CharHandler(ElementHandler parent) - { - super(parent); - } - - protected Object parse(String number) throws AssemblyException - { - if (number.length() > 1) - throw new AssemblyException(new IllegalArgumentException("Element contained no valid character.")); - - return new Character(number.charAt(0)); - } -} diff --git a/libjava/gnu/java/beans/decoder/ClassHandler.java b/libjava/gnu/java/beans/decoder/ClassHandler.java deleted file mode 100644 index 1dbdd63e79a..00000000000 --- a/libjava/gnu/java/beans/decoder/ClassHandler.java +++ /dev/null @@ -1,66 +0,0 @@ -/* gnu.java.beans.decoder.ClassHandler - 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.java.beans.decoder; - - -/** Creates a Class instance from the character data in a <class> tag. - * - * @author Robert Schuster - */ -class ClassHandler extends SimpleHandler -{ - /** - * @param PersistenceParser - */ - ClassHandler(ElementHandler parent) - { - super(parent); - } - - protected Object parse(String characters) throws AssemblyException - { - try - { - return instantiateClass(characters); - } - catch (ClassNotFoundException cnfe) - { - throw new AssemblyException(cnfe); - } - } -} diff --git a/libjava/gnu/java/beans/decoder/ConstructorContext.java b/libjava/gnu/java/beans/decoder/ConstructorContext.java deleted file mode 100644 index 7838fb7e263..00000000000 --- a/libjava/gnu/java/beans/decoder/ConstructorContext.java +++ /dev/null @@ -1,102 +0,0 @@ -/* gnu.java.beans.decoder.ConstructorContext - 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.java.beans.decoder; - -import java.lang.reflect.Constructor; -import java.lang.reflect.InvocationTargetException; -import java.util.ArrayList; - -/** A ConstructorContext is a {@link Context} implementation which collects the parameters for a constructor - * call and instantiates the result object using that constructor. After that sub-contexts can invoke - * methods on the result object. - * - *

The constructor is invoked when a sub-context is a statement or the Context ends.

- * - * @author Robert Schuster - */ -class ConstructorContext extends AbstractCreatableObjectContext -{ - private ArrayList arguments = new ArrayList(); - private Class klass; - - ConstructorContext(String id, Class newClass) - { - setId(id); - // sets superclass field - klass = newClass; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#addObject(java.lang.Object) - */ - protected void addParameterObjectImpl(Object o) - { - arguments.add(o); - } - - protected Object createObject(Context outerContext) - throws AssemblyException - { - Object[] args = arguments.toArray(); - - try - { - Constructor constructor = MethodFinder.getConstructor(klass, args); - - // instantiates object (klass field gets re-set by superclass) - return constructor.newInstance(args); - } - catch (NoSuchMethodException nsme) - { - throw new AssemblyException(nsme); - } - catch (InvocationTargetException ite) - { - throw new AssemblyException(ite.getCause()); - } - catch (IllegalAccessException iae) - { - throw new AssemblyException(iae); - } - catch (InstantiationException ie) - { - throw new AssemblyException(ie); - } - } - -} diff --git a/libjava/gnu/java/beans/decoder/Context.java b/libjava/gnu/java/beans/decoder/Context.java deleted file mode 100644 index a2db09732d1..00000000000 --- a/libjava/gnu/java/beans/decoder/Context.java +++ /dev/null @@ -1,137 +0,0 @@ -/* gnu.java.beans.decoder.Context - 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.java.beans.decoder; - -/** A Context is the environment for an object which is being assembler. If there - * are no errors each handler creates one Context. - *

Depending on the result of isStatement() a Context can be statement or an - * expression. An expression returns a value to the Context of its parent handler, - * a statement does not. Whenever a Context is a statement the parent handler's - * Context is informed about that through the {@link notifyStatement}-method.

- * - * @author Robert Schuster - */ -interface Context -{ - /** Adds a parameter object to the context. This method is used when - * sub-Contexts return their result. - * - * Some Contexts do not accept more than a certain amount of objects - * and throw an AssemblerException if the amount is exceeded. - * - * @param o The object added to this context. - */ - void addParameterObject(Object o) throws AssemblyException; - - /** Notifies that the next element is a statement. This can mean - * that an argument list is complete to be called. - * - */ - void notifyStatement(Context outerContext) throws AssemblyException; - - /** Notifies that the context ends and the returns the appropriate result - * object. - * - * @param outerContext - * @return - */ - Object endContext(Context outerContext) throws AssemblyException; - - /** Notifies that the assembly of a subcontext failed and returns - * whether this Context is affected in a way that it fails too. - * - * @return Whether the failure of a subcontext lets this context fail, too. - */ - boolean subContextFailed(); - - /** Calls an appropriate indexed set method if it is available or - * throws an AssemblerException if that is not allowed on this Context. - * - * The behaviour of this method is equal to List.set(int, Object). - * - * @param index Index position to be set. - * @param o Object to be set at the given index position. - * @throws AssemblerException Indexed set is not allowed or otherwise failed. - */ - void set(int index, Object o) throws AssemblyException; - - /** Calls an appropriate indexed get method if it is available or - * throws an AssemblerException if that is not allowed on this Context. - * - * The behaviour of this method is equal to List.get(int). - * - * @param index Index position of the object return. - * @throws AssemblerException Indexed get is not allowed or otherwise failed. - */ - Object get(int index) throws AssemblyException; - - /** Returns the result which was calculated by calling endContext() or reportStatement(). - * Its the handler's responsibility to care that any of these two methods was called. - * - * This is used by sub-Contexts to access this Context's result. - * - * @return - */ - Object getResult(); - - /** Gives this Context a unique id. For convenience the id may be null which means - * that no id exists at all. - * - * @param id - */ - void setId(String id); - - /** Returns this Context's unique id or null if does not have such an id. - * - * @return This Context's id or null. - */ - String getId(); - - /** Returns whether this Context is a statement (not returning result back - * to parent handler's Context) or not (= expression). - * - * @return - */ - boolean isStatement(); - - /** Sets whether this Context is a statement or not. - * - * @param b - */ - void setStatement(boolean b); -} diff --git a/libjava/gnu/java/beans/decoder/DecoderContext.java b/libjava/gnu/java/beans/decoder/DecoderContext.java deleted file mode 100644 index 69d84e57656..00000000000 --- a/libjava/gnu/java/beans/decoder/DecoderContext.java +++ /dev/null @@ -1,124 +0,0 @@ -/* gnu.java.beans.decoder.DecoderContext - 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.java.beans.decoder; - -import java.beans.XMLDecoder; -import java.util.ArrayList; -import java.util.Iterator; - -/** DecoderContext is a Context implementation which allows access to - * the XMLDecoder instance itself. This is used for the <java> tag. - * - * @author Robert Schuster - */ -public class DecoderContext extends AbstractContext -{ - private XMLDecoder decoder; - - public DecoderContext(XMLDecoder xmlDecoder) - { - decoder = xmlDecoder; - } - - private ArrayList objects = new ArrayList(); - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#addObject(java.lang.Object) - */ - public void addParameterObject(Object o) throws AssemblyException - { - objects.add(o); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#reportStatement() - */ - public void notifyStatement(Context outerContext) throws AssemblyException - { - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#endContext(gnu.java.beans.decoder.Context) - */ - public Object endContext(Context outerContext) throws AssemblyException - { - return decoder; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#subContextFailed() - */ - public boolean subContextFailed() - { - return false; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#set(int, java.lang.Object) - */ - public void set(int index, Object o) throws AssemblyException - { - throw new AssemblyException(new IllegalArgumentException("Set method is not allowed in decoder context.")); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#get(int) - */ - public Object get(int index) throws AssemblyException - { - throw new AssemblyException(new IllegalArgumentException("Get method is not allowed in decoder context.")); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#getResult() - */ - public Object getResult() - { - return decoder; - } - - /** Returns an Iterator that retrieves the assembled objects. - * - * @return An Iterator retrieving assembled objects. - */ - public Iterator iterator() - { - return objects.iterator(); - } - -} diff --git a/libjava/gnu/java/beans/decoder/DefaultExceptionListener.java b/libjava/gnu/java/beans/decoder/DefaultExceptionListener.java deleted file mode 100644 index 71e7158e7d2..00000000000 --- a/libjava/gnu/java/beans/decoder/DefaultExceptionListener.java +++ /dev/null @@ -1,57 +0,0 @@ -/* gnu.java.beans.DefaultExceptionListener - 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.java.beans.decoder; - -import java.beans.ExceptionListener; - -/** The DefaultExceptionListener is the default implementation of the ExceptionListener - * interface. An instance of this class is used whenever the user provided no - * ExceptionListener instance on its own. - * - *

The implementation just writes the exception's message to System.err.

- * - * @author Robert Schuster - */ -public class DefaultExceptionListener implements ExceptionListener -{ - public void exceptionThrown(Exception e) - { - System.err.println("non-critical exception: " + e + " - message: " - + e.getMessage()); - } -} diff --git a/libjava/gnu/java/beans/decoder/DoubleHandler.java b/libjava/gnu/java/beans/decoder/DoubleHandler.java deleted file mode 100644 index 8f6be7ec092..00000000000 --- a/libjava/gnu/java/beans/decoder/DoubleHandler.java +++ /dev/null @@ -1,59 +0,0 @@ -/* gnu.java.beans.decoder.DoubleHandler - 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.java.beans.decoder; - - -/** Creates a Double instance from the character data in a <double> tag. - * - * @author Robert Schuster - */ -class DoubleHandler extends SimpleHandler -{ - /** - * @param PersistenceParser - */ - DoubleHandler(ElementHandler parent) - { - super(parent); - } - - protected Object parse(String number) throws NumberFormatException - { - return Double.valueOf(number); - } -} diff --git a/libjava/gnu/java/beans/decoder/DummyContext.java b/libjava/gnu/java/beans/decoder/DummyContext.java deleted file mode 100644 index f3b24549de2..00000000000 --- a/libjava/gnu/java/beans/decoder/DummyContext.java +++ /dev/null @@ -1,116 +0,0 @@ -/* gnu.java.beans.decoder.DummyContext - 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.java.beans.decoder; - -/** The DummyContext is used as the Context implementation for the DummyHandler. It - * just prevents having a null-reference. - * - *

When the implementation is correct none of this class' methods - * (except notifyStatement()) is called.

- * - * @author Robert Schuster - */ -public class DummyContext extends AbstractContext -{ - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#addObject(java.lang.Object) - */ - public void addParameterObject(Object o) throws AssemblyException - { - fail(); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#reportStatement() - */ - public void notifyStatement(Context outerContext) throws AssemblyException - { - // intentionally ignored - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#endContext(gnu.java.beans.decoder.Context) - */ - public Object endContext(Context outerContext) throws AssemblyException - { - fail(); - return null; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#subContextFailed() - */ - public boolean subContextFailed() - { - fail(); - return false; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#set(int, java.lang.Object) - */ - public void set(int index, Object o) throws AssemblyException - { - fail(); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#get(int) - */ - public Object get(int index) throws AssemblyException - { - fail(); - return null; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#getResult() - */ - public Object getResult() - { - fail(); - return null; - } - - private void fail() - { - throw new InternalError("Invoking the DummyContext is not expected" - + " - Please file a bug report at" - + " http://www/gnu.org/software/classpath/."); - } -} diff --git a/libjava/gnu/java/beans/decoder/DummyHandler.java b/libjava/gnu/java/beans/decoder/DummyHandler.java deleted file mode 100644 index 880d76adc0e..00000000000 --- a/libjava/gnu/java/beans/decoder/DummyHandler.java +++ /dev/null @@ -1,156 +0,0 @@ -/* gnu.java.beans.decoder.DummyHandler - 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.java.beans.decoder; - -import java.beans.ExceptionListener; - -import org.xml.sax.Attributes; - -/** An ElementHandler implementation that is used as an artificial root - * element. This avoids having to check for a null element. - * - * @author Robert Schuster - */ -class DummyHandler implements ElementHandler -{ - /* (non-Javadoc) - * @see gnu.java.beans.decoder.ElementHandler#start(org.xml.sax.Attributes, java.beans.ExceptionListener) - */ - public void start( - Attributes attributes, - ExceptionListener exceptionListener) - { - fail(); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.ElementHandler#end(java.beans.ExceptionListener) - */ - public void end(ExceptionListener exceptionListener) - { - fail(); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.ElementHandler#characters(char[], int, int) - */ - public void characters(char[] ch, int start, int length) - { - fail(); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.ElementHandler#isSubelementAllowed(java.lang.String) - */ - public boolean isSubelementAllowed(String subElementName) - { - return true; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.ElementHandler#instantiateClass(java.lang.String) - */ - public Class instantiateClass(String className) - throws ClassNotFoundException - { - fail(); - return null; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.ElementHandler#reportStatement(java.beans.ExceptionListener) - */ - public void notifyStatement(ExceptionListener exceptionListener) - { - // ignore - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.ElementHandler#hasFailed() - */ - public boolean hasFailed() - { - return false; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.ElementHandler#getContext() - */ - public Context getContext() - { - return new DummyContext(); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.ElementHandler#contextFailed() - */ - public void notifyContextFailed() - { - fail(); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.ElementHandler#putObject(java.lang.String, java.lang.Object) - */ - public void putObject(String objectId, Object o) - { - fail(); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.ElementHandler#getObject(java.lang.String) - */ - public Object getObject(String objectId) - { - fail(); - return null; - } - - public ElementHandler getParent() - { - fail(); - return null; - } - - private void fail() - { - throw new InternalError("Invoking the DummyHandler is not expected" - + " - Please file a bug report at " - + " http://www.gnu.org/software/classpath/."); - } -} diff --git a/libjava/gnu/java/beans/decoder/ElementHandler.java b/libjava/gnu/java/beans/decoder/ElementHandler.java deleted file mode 100644 index e6ae60af886..00000000000 --- a/libjava/gnu/java/beans/decoder/ElementHandler.java +++ /dev/null @@ -1,130 +0,0 @@ -/* gnu.java.beans.decoder.ElementHandler - 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.java.beans.decoder; - -import java.beans.ExceptionListener; - -import org.xml.sax.Attributes; - -/** ElementHandler manages a Context instance and interacts with - * its parent and child handlers. - * - * @author Robert Schuster - */ -interface ElementHandler -{ - /** Evaluates the attributes and creates a Context instance. - * If the creation of the Context instance fails the ElementHandler - * is marked as failed which may affect the parent handler other. - * - * @param attributes Attributes of the XML tag. - */ - void start(Attributes attributes, ExceptionListener exceptionListener); - - /** Post-processes the Context. - */ - void end(ExceptionListener exceptionListener); - - /** Adds characters from the body of the XML tag to the buffer. - * - * @param ch - * @param start - * @param length - * @throws SAXException - */ - void characters(char[] ch, int start, int length); - - /** Returns whether a subelement of the given name is allowed. The rules - * for evaluating this are derived from the javabeans.dtd which can be found - * here: Java Persistence Article. - * - * @param subElementName - * @return - */ - boolean isSubelementAllowed(String subElementName); - - /** Provides the same functionality as Class.forName() but allows the decoder - * to use a different class loader. - * - * @param className - * @return - * @throws ClassNotFoundException - */ - Class instantiateClass(String className) throws ClassNotFoundException; - - /** Notifies the handler's Context that its child Context will not return - * a value back. Some Context variants need this information to know when - * a method or a constructor call can be made. - * - * This method is called by a child handler. - */ - void notifyStatement(ExceptionListener exceptionListener); - - /** Returns whether this handler has failed. - * - * This is used to skip child elements. - * - * @return Whether this handler has failed. - */ - boolean hasFailed(); - - /** Returns the Context instance this handler is working on. - * - * @return The handler's Context instance. - */ - Context getContext(); - - /** Notifies the handler that its Context failed and starts a recursive - * invocation of the parent handler if it is affected by that failure. - * - * Although the method is a public API member it is only used internally. - */ - void notifyContextFailed(); - - /** Stores the object under the given id. The object is not stored if the - * id is null. - * - * @param objectId - * @param o - */ - void putObject(String objectId, Object o); - - Object getObject(String objectId) throws AssemblyException; - - ElementHandler getParent(); -} diff --git a/libjava/gnu/java/beans/decoder/FloatHandler.java b/libjava/gnu/java/beans/decoder/FloatHandler.java deleted file mode 100644 index 5f0e15cefed..00000000000 --- a/libjava/gnu/java/beans/decoder/FloatHandler.java +++ /dev/null @@ -1,59 +0,0 @@ -/* gnu.java.beans.decoder.FloatHandler - 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.java.beans.decoder; - - -/** Creates a Float instance from the character data in a <float> tag. - * - * @author Robert Schuster - */ -class FloatHandler extends SimpleHandler -{ - /** - * @param PersistenceParser - */ - FloatHandler(ElementHandler parent) - { - super(parent); - } - - protected Object parse(String number) throws NumberFormatException - { - return Float.valueOf(number); - } -} diff --git a/libjava/gnu/java/beans/decoder/GrowableArrayContext.java b/libjava/gnu/java/beans/decoder/GrowableArrayContext.java deleted file mode 100644 index f24a60b4a4b..00000000000 --- a/libjava/gnu/java/beans/decoder/GrowableArrayContext.java +++ /dev/null @@ -1,138 +0,0 @@ -/* gnu.java.beans.decoder.GrowableArrayContext - 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.java.beans.decoder; - -import java.lang.reflect.Array; - -/** A Context implementation for a growable array. The array - * elements have to be set using expressions. - * - * @author Robert Schuster - */ -class GrowableArrayContext extends AbstractContext -{ - private static final int INITIAL_SIZE = 16; - - private Class klass; - private Object array; - private int length; - - GrowableArrayContext(String id, Class newClass) - { - setId(id); - klass = newClass; - array = Array.newInstance(klass, INITIAL_SIZE); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#addObject(java.lang.Object) - */ - public void addParameterObject(Object o) throws AssemblyException - { - if (length == Array.getLength(array)) - { - Object tmp = Array.newInstance(klass, length * 2); - System.arraycopy(array, 0, tmp, 0, length); - array = tmp; - } - - try { - Array.set(array, length++, o); - } catch(IllegalArgumentException iae) { - throw new AssemblyException(iae); - } - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#reportStatement() - */ - public void notifyStatement(Context outerContext) throws AssemblyException - { - throw new AssemblyException( - new IllegalArgumentException("Statements inside a growable array are not allowed.")); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#endContext(gnu.java.beans.decoder.Context) - */ - public Object endContext(Context outerContext) throws AssemblyException - { - if (length != Array.getLength(array)) - { - Object tmp = Array.newInstance(klass, length); - System.arraycopy(array, 0, tmp, 0, length); - array = tmp; - } - - return array; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#subContextFailed() - */ - public boolean subContextFailed() - { - // returns false to indicate that assembling the array does not fail only because - // a subelement failed - return false; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#set(int, java.lang.Object) - */ - public void set(int index, Object o) throws AssemblyException - { - try { - Array.set(array, index, o); - } catch(IllegalArgumentException iae) { - throw new AssemblyException(iae); - } - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#get(int) - */ - public Object get(int index) throws AssemblyException - { - return Array.get(array, index); - } - - public Object getResult() - { - return array; - } -} diff --git a/libjava/gnu/java/beans/decoder/IndexContext.java b/libjava/gnu/java/beans/decoder/IndexContext.java deleted file mode 100644 index 11f840caeec..00000000000 --- a/libjava/gnu/java/beans/decoder/IndexContext.java +++ /dev/null @@ -1,130 +0,0 @@ -/* gnu.java.beans.decoder.IndexContext - 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.java.beans.decoder; - -/** IndexContext is Context implementation that senses whether it is an indexed get or set - * operation and invokes this operation. - * - *

An IndexContent is a get operation when no argument is provided and a set operation if one - * argument is provided.

- * - * @author Robert Schuster - */ -class IndexContext extends AbstractContext -{ - private Object result; - private Object argument; - private int index; - private boolean isSetter; - - IndexContext(String id, int newIndex) - { - setId(id); - index = newIndex; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#addObject(java.lang.Object) - */ - public void addParameterObject(Object o) throws AssemblyException - { - if (! isSetter) - { - argument = o; - isSetter = true; - } - else - throw new AssemblyException(new IllegalStateException("More than one argument for indiced access is not possible.")); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#reportStatement() - */ - public void notifyStatement(Context outerContext) throws AssemblyException - { - throw new AssemblyException(new IllegalStateException("Statements inside indiced access are not allowed.")); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#endContext(gnu.java.beans.decoder.Context) - */ - public Object endContext(Context outerContext) throws AssemblyException - { - if (isSetter) - { - // setter - outerContext.set(index, argument); - - return null; - } - else - // getter - return result = outerContext.get(index); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#subContextFailed() - */ - public boolean subContextFailed() - { - // returns true to indicate that indiced access assembly fails when one of its - // argument could not be assembled - return true; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#set(int, java.lang.Object) - */ - public void set(int index, Object o) throws AssemblyException - { - throw new AssemblyException(new IllegalStateException("Setter is not allowed inside indiced access.")); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#get(int) - */ - public Object get(int index) throws AssemblyException - { - throw new AssemblyException(new IllegalStateException("getter is not allowed insided indiced access.")); - } - - public Object getResult() - { - return result; - } -} diff --git a/libjava/gnu/java/beans/decoder/IntHandler.java b/libjava/gnu/java/beans/decoder/IntHandler.java deleted file mode 100644 index a96f4a0315b..00000000000 --- a/libjava/gnu/java/beans/decoder/IntHandler.java +++ /dev/null @@ -1,59 +0,0 @@ -/* gnu.java.beans.decoder.IntHandler - 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.java.beans.decoder; - - -/** Creates a Integer instance from the character data in a <int> tag. - * - * @author Robert Schuster - */ -class IntHandler extends SimpleHandler -{ - /** - * @param PersistenceParser - */ - IntHandler(ElementHandler parent) - { - super(parent); - } - - protected Object parse(String number) throws NumberFormatException - { - return Integer.valueOf(number); - } -} diff --git a/libjava/gnu/java/beans/decoder/JavaHandler.java b/libjava/gnu/java/beans/decoder/JavaHandler.java deleted file mode 100644 index 3bc8c60288c..00000000000 --- a/libjava/gnu/java/beans/decoder/JavaHandler.java +++ /dev/null @@ -1,93 +0,0 @@ -/* gnu.java.beans.decoder.JavaHandler - 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.java.beans.decoder; - -import java.beans.ExceptionListener; -import java.util.HashMap; - -import org.xml.sax.Attributes; - -/** Wraps a DecoderContext instance. - * - * @author Robert Schuster - */ -public class JavaHandler extends AbstractElementHandler -{ - private Context context; - private HashMap objectMap = new HashMap(); - private ClassLoader classLoader; - - /** - * @param PersistenceParser - */ - JavaHandler(DummyHandler parent, Context decoderContext, - ClassLoader cl) - { - super(parent, true); - - classLoader = cl; - - context = decoderContext; - - } - - protected Context startElement(Attributes attributes, ExceptionListener exceptionListener) - throws AssemblyException - { - // may expect version and class attribute but it not used in JDK - // so we do either - return context; - } - - public Object getObject(String objectId) - { - return objectMap.get(objectId); - } - - public void putObject(String objectId, Object o) - { - if (objectId != null) - objectMap.put(objectId, o); - } - - public Class instantiateClass(String className) - throws ClassNotFoundException - { - return Class.forName(className, false, classLoader); - } -} diff --git a/libjava/gnu/java/beans/decoder/LongHandler.java b/libjava/gnu/java/beans/decoder/LongHandler.java deleted file mode 100644 index d7bfa54e54e..00000000000 --- a/libjava/gnu/java/beans/decoder/LongHandler.java +++ /dev/null @@ -1,59 +0,0 @@ -/* gnu.java.beans.decoder.LongHandler - 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.java.beans.decoder; - - -/** Creates a Long instance from the character data in a <long> tag. - * - * @author Robert Schuster - */ -class LongHandler extends SimpleHandler -{ - /** - * @param PersistenceParser - */ - LongHandler(ElementHandler parent) - { - super(parent); - } - - protected Object parse(String number) throws NumberFormatException - { - return Long.valueOf(number); - } -} diff --git a/libjava/gnu/java/beans/decoder/MethodContext.java b/libjava/gnu/java/beans/decoder/MethodContext.java deleted file mode 100644 index bad0a213f7f..00000000000 --- a/libjava/gnu/java/beans/decoder/MethodContext.java +++ /dev/null @@ -1,107 +0,0 @@ -/* gnu.java.beans.decoder.MethodContext - 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.java.beans.decoder; - -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.ArrayList; - -/** MethodContext collects arguments for a method call and creates the result object - * using it. The method is called using the result object of the parent Context. - * - *

When the result object is available methods can be called on it using sub-Contexts.

- * - * @author Robert Schuster - */ -class MethodContext extends AbstractCreatableObjectContext -{ - private ArrayList arguments = new ArrayList(); - private String methodName; - - MethodContext(String id, String newMethodName) - { - setId(id); - setStatement(true); - methodName = newMethodName; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#addObject(java.lang.Object) - */ - public void addParameterObjectImpl(Object o) - { - arguments.add(o); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#endContext(gnu.java.beans.decoder.Context) - */ - protected Object createObject(Context outerContext) - throws AssemblyException - { - Object outerObject = outerContext.getResult(); - - if (outerObject == null) - throw new AssemblyException( - new NullPointerException( - "No object to invoke method " + methodName)); - - Object[] args = arguments.toArray(); - - try - { - Method method = - MethodFinder.getMethod( - outerObject.getClass(), - methodName, - args); - return method.invoke(outerObject, args); - } - catch (NoSuchMethodException nsme) - { - throw new AssemblyException(nsme); - } - catch (InvocationTargetException ite) - { - throw new AssemblyException(ite.getCause()); - } - catch (IllegalAccessException iae) - { - throw new AssemblyException(iae); - } - } -} diff --git a/libjava/gnu/java/beans/decoder/MethodFinder.java b/libjava/gnu/java/beans/decoder/MethodFinder.java deleted file mode 100644 index 3968b173adb..00000000000 --- a/libjava/gnu/java/beans/decoder/MethodFinder.java +++ /dev/null @@ -1,177 +0,0 @@ -/* gnu.java.beans.decoder.MethodFinder - 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.java.beans.decoder; - -import java.lang.reflect.Constructor; -import java.lang.reflect.Method; -import java.util.HashMap; - -class MethodFinder -{ - /** Provides a mapping between a wrapper class and its corresponding primitive's type. */ - private static HashMap typeMapping = new HashMap(); - - static { - typeMapping.put(Byte.class, Byte.TYPE); - typeMapping.put(Short.class, Short.TYPE); - typeMapping.put(Integer.class, Integer.TYPE); - typeMapping.put(Long.class, Long.TYPE); - typeMapping.put(Float.class, Float.TYPE); - typeMapping.put(Double.class, Double.TYPE); - - typeMapping.put(Character.class, Character.TYPE); - typeMapping.put(Boolean.class, Boolean.TYPE); - } - - private MethodFinder() - { - } - - /** Searches a Method which can accept the given arguments. - * - * @param klass - * @param name - * @param arguments - * @return - * @throws NoSuchMethodException - */ - static Method getMethod(Class klass, String name, Object[] arguments) - throws NoSuchMethodException - { - // prepares array containing the types of the arguments - Class[] argumentTypes = getArgumentTypes(arguments); - - Method[] methods = klass.getMethods(); - - // iterates over all public methods - for (int i = 0; i < methods.length; i++) - { - if (methods[i].getName().equals(name)) - { - if (matchingArgumentTypes(methods[i].getParameterTypes(), - argumentTypes)) - return methods[i]; - } - } - - throw new NoSuchMethodException( - "Could not find a matching method named " - + name - + "() in class " - + klass); - } - - static Constructor getConstructor(Class klass, Object[] arguments) - throws NoSuchMethodException - { - Class[] argumentTypes = getArgumentTypes(arguments); - Constructor[] constructors = klass.getConstructors(); - - // iterates over all public methods - for (int i = 0; i < constructors.length; i++) - { - if (matchingArgumentTypes(constructors[i].getParameterTypes(), - argumentTypes)) - return constructors[i]; - } - - throw new NoSuchMethodException( - "Could not find a matching constructor in class " + klass); - } - - /** Transforms an array of argument objects into an array of argument types. - * For each argument being null the argument is null, too. An argument type - * being null means: Accepts everything (although this can be ambigous). - * - * @param arguments - * @return - */ - private static Class[] getArgumentTypes(Object[] arguments) - { - if (arguments == null) - return new Class[0]; - - // prepares array containing the types of the arguments - Class[] argumentTypes = new Class[arguments.length]; - for (int i = 0; i < arguments.length; i++) - argumentTypes[i] = - (arguments[i] == null) ? null : arguments[i].getClass(); - return argumentTypes; - } - - /** Tests whether the argument types supplied to the method argument types - * are assignable. In addition to the assignment specifications this method - * handles the primitive's wrapper classes as if they were of their - * primitive type (e.g Boolean.class equals Boolean.TYPE). - * When a supplied argument type is null it is assumed that no argument - * object was supplied for it and the test for this particular parameter will - * pass. - * - * @param methodArgTypes - * @param suppliedArgTypes - * @return - */ - private static boolean matchingArgumentTypes( - Class[] methodArgTypes, - Class[] suppliedArgTypes) - { - if (methodArgTypes.length != suppliedArgTypes.length) - return false; - - for (int i = 0; i < methodArgTypes.length; i++) - { - if (suppliedArgTypes[i] == null) - { - // by definition a non-existant argument type (null) can be converted to everything - continue; - } - else if (typeMapping.containsKey(suppliedArgTypes[i])) - { - Class primitiveType = - (Class) typeMapping.get(suppliedArgTypes[i]); - if (!(methodArgTypes[i].isAssignableFrom(suppliedArgTypes[i]) - || methodArgTypes[i].isAssignableFrom(primitiveType))) - return false; - } - else if (!methodArgTypes[i].isAssignableFrom(suppliedArgTypes[i])) - return false; - } - - return true; - } -} diff --git a/libjava/gnu/java/beans/decoder/NullHandler.java b/libjava/gnu/java/beans/decoder/NullHandler.java deleted file mode 100644 index 549617db3cb..00000000000 --- a/libjava/gnu/java/beans/decoder/NullHandler.java +++ /dev/null @@ -1,62 +0,0 @@ -/* gnu.java.beans.decoder.NullHandler - 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.java.beans.decoder; - - -/** Just provides the 'null' object. - * - * @author Robert Schuster - */ -class NullHandler extends SimpleHandler -{ - /** - * @param PersistenceParser - */ - NullHandler(ElementHandler parent) - { - super(parent); - } - - protected Object parse(String characters) throws AssemblyException - { - if (! characters.equals("")) - throw new AssemblyException(new IllegalArgumentException("No characters inside tag allowed.")); - - return null; - } -} diff --git a/libjava/gnu/java/beans/decoder/ObjectContext.java b/libjava/gnu/java/beans/decoder/ObjectContext.java deleted file mode 100644 index cf88a2c2c5c..00000000000 --- a/libjava/gnu/java/beans/decoder/ObjectContext.java +++ /dev/null @@ -1,100 +0,0 @@ -/* gnu.java.beans.decoder.ObjectHandler - 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.java.beans.decoder; - -/** ObjectContext is a {@link Context} implementation that wraps a simple Object instance. - * The instance can be provided when the Context is created (due to an 'idref' - * attribute) or later (eg. <int> tag) - * - *

The ObjectContext does not accept any parameter object and ignores notifications - * about sub-contexts being statements.

- * - * @author Robert Schuster - */ -final class ObjectContext extends AbstractObjectContext -{ - ObjectContext(Object newObject) - { - setObject(newObject); - } - - ObjectContext(String id, Object newObject) - { - setId(id); - setObject(newObject); - } - - ObjectContext() - { - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#addObject(java.lang.Object) - */ - public void addParameterObject(Object o) throws AssemblyException - { - throw new AssemblyException(new IllegalArgumentException("Adding objects to an ObjectContext is not allowed.")); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#reportStatement() - */ - public void notifyStatement(Context outerContext) throws AssemblyException - { - // can ignore that - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#endContext(gnu.java.beans.decoder.Context) - */ - public Object endContext(Context outerContext) throws AssemblyException - { - // just returns the object which is encapsuled (may be null) - return getResult(); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#subContextFailed() - */ - public boolean subContextFailed() - { - // this context will not fail when a subcontext fails because the result is - // already available when the context is created. - return false; - } -} diff --git a/libjava/gnu/java/beans/decoder/ObjectHandler.java b/libjava/gnu/java/beans/decoder/ObjectHandler.java deleted file mode 100644 index dc5b3290bb1..00000000000 --- a/libjava/gnu/java/beans/decoder/ObjectHandler.java +++ /dev/null @@ -1,169 +0,0 @@ -/* gnu.java.beans.decoder.ObjectHandler - 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.java.beans.decoder; - -import java.beans.ExceptionListener; - -import org.xml.sax.Attributes; - -/** An ObjectHandler parses the <object> tag and thereby creates various - * Context implementations. - * - * @author Robert Schuster - * - */ -public class ObjectHandler extends AbstractElementHandler -{ - /** - * XXX: Can all results be stored with an object id? - * - * - * @param PersistenceParser - */ - ObjectHandler(ElementHandler parent) - { - super(parent, true); - } - - protected Context startElement(Attributes attributes, ExceptionListener exceptionListener) - throws AssemblyException - { - String className = attributes.getValue("class"); - String methodName = attributes.getValue("method"); - String fieldName = attributes.getValue("field"); - String index = attributes.getValue("index"); - String propertyName = attributes.getValue("property"); - String id = attributes.getValue("id"); - String idRef = attributes.getValue("idref"); - - /* first check if we just want to access an existing object (idref present) - * - * note: is not valid to call method "bar" - * on the object with id "foo". Instead this should return the object "foo" - * itself. The right way to this is: - * - * - * - * - * This means that if idref is present class, method, field, index and - * property are obsolete. - */ - if (idRef != null) - // reactivates an existing object and giving it another name if id exists - return new ObjectContext(id, getObject(idRef)); - - // decides whether we are in a static (className present) or dynamic context - if (className != null) - { - try - { - Class klass = instantiateClass(className); - - // class name exists which means that we are in a static context. - // so we may want to ... - // access a static field if the fieldName exists - if (fieldName != null) - { - try - { - return new ObjectContext(id, - klass.getField(fieldName).get(null)); - } - catch (NoSuchFieldException nsfe) - { - throw new AssemblyException(nsfe); - } - catch (IllegalAccessException iae) - { - throw new AssemblyException(iae); - } - } - - // (falling through is important!) - // run a constructor if methodName is "new" or null - if (methodName == null || methodName.equals("new")) - return new ConstructorContext(id, klass); - - // (falling through is important!) - // run a static method on the given class (if methodName exists, which is implied already) - return new StaticMethodContext(id, klass, methodName); - // XXX: should fail if unexpected attributes are present? - } - catch (ClassNotFoundException cnfe) - { - throw new AssemblyException(cnfe); - } - } - else - { - // className does not exist which means we are in the context of - // some object and want to ... - // access the get(int index) method if index != null - if (index != null) - { - try - { - // Note: http://java.sun.com/products/jfc/tsc/articles/persistence3/ says - // that will make up a get()-call. But this is wrong because - // tags never return values (to the surrounding context) - return new IndexContext(id, Integer.parseInt(index)); - } - catch (NumberFormatException nfe) - { - throw new AssemblyException(nfe); - } - } - - // access a method if methodName exists - if (methodName != null) - return new MethodContext(id, methodName); - - // (falling through is important!) - // access a property if a propertyName exists - if (propertyName != null && propertyName.length() > 0) - // this is reported as an ordinary method access where the propertyName is - // converted into a 'getter'-method name: convert first character of property name - // to upper case and prepend 'get' - // Note: This will be a getter-method because the tag implies that a return - // value is expected. - return new PropertyContext(id, propertyName); - } - - throw new AssemblyException(new IllegalArgumentException("Wrong or missing attributes for tag.")); - } -} diff --git a/libjava/gnu/java/beans/decoder/PersistenceParser.java b/libjava/gnu/java/beans/decoder/PersistenceParser.java deleted file mode 100644 index 4eb37abef97..00000000000 --- a/libjava/gnu/java/beans/decoder/PersistenceParser.java +++ /dev/null @@ -1,485 +0,0 @@ -/* gnu.java.beans.PersistenceParser - Copyright (C) 2004, 2005 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.java.beans.decoder; - -import java.beans.ExceptionListener; -import java.beans.XMLDecoder; -import java.io.IOException; -import java.io.InputStream; -import java.util.HashMap; -import java.util.Iterator; -import java.util.LinkedList; -import java.util.List; - -import javax.xml.parsers.ParserConfigurationException; -import javax.xml.parsers.SAXParser; -import javax.xml.parsers.SAXParserFactory; - -import org.xml.sax.Attributes; -import org.xml.sax.SAXException; -import org.xml.sax.helpers.DefaultHandler; - -/** The PersistenceParser parses an XML data stream and delegates actions to ElementHandler - * instances. The parser catches and recovers from all exception which reside from wrong usage - * of attributes and tags. - * - * @author Robert Schuster - */ -public class PersistenceParser extends DefaultHandler implements Context -{ - /** The ExceptionListener instance which is informed of non-critical parsing exceptions. - */ - private ExceptionListener exceptionListener; - - /** When an element was not usable all elements inside it should be skipped. - * This is done by skipping startElement() and endElement() invocations whenever - * this value is above 0. - */ - private int skipElement; - - /** Stores the Creator instances which can instantiate the appropriate handler implementation - * for a given element. - */ - private HashMap handlerCreators = new HashMap(); - - /** Denotes the current ElementHandler. To avoid checking for null-values it is pre-assigned - * with a DummyHandler instance which must not be used but acts as a root element. - */ - private ElementHandler currentHandler; - - /** The real root element that stores all objects created during parsing. - * Package-private to avoid an accessor method. - */ - JavaHandler javaHandler; - - /** Stores the decoded objects. */ - private List objects = new LinkedList(); - - /** The XMLDecoder instance that started this PersistenceParser */ - private XMLDecoder decoder; - - /** Creates a PersistenceParser which reads XML data from the given InputStream, reports - * exceptions to ExceptionListener instance, stores resulting object in the DecoderContext - * and uses the given ClassLoader to resolve classes. - * - * @param inputStream - * @param exceptionListener - * @param decoderContext - * @param cl - */ - public PersistenceParser( - InputStream inputStream, - ExceptionListener exceptionListener, - ClassLoader cl, - XMLDecoder decoder) - { - - this.exceptionListener = exceptionListener; - this.decoder = decoder; - - DummyHandler dummyHandler = new DummyHandler(); - currentHandler = dummyHandler; - javaHandler = new JavaHandler(dummyHandler, this, cl); - - SAXParserFactory factory = SAXParserFactory.newInstance(); - - SAXParser parser; - try - { - parser = factory.newSAXParser(); - } - catch (ParserConfigurationException pce) - { - // should not happen when a parser is available because we did - // not request any requirements on the XML parser - throw (InternalError) new InternalError( - "No SAX Parser available.").initCause( - pce); - } - catch (SAXException saxe) - { - // should not happen when a parser is available because we did - // not request any requirements on the XML parser - throw (InternalError) new InternalError( - "No SAX Parser available.").initCause( - saxe); - } - - // prepares a map of Creator instances which can instantiate a handler which is - // appropriate for the tag that is used as a key for the Creator - handlerCreators.put("java", new JavaHandlerCreator()); - - // calls methods (properties), constructors, access fields - handlerCreators.put("object", new ObjectHandlerCreator()); - handlerCreators.put("void", new VoidHandlerCreator()); - - handlerCreators.put("array", new ArrayHandlerCreator()); - - // these handler directly create an Object (or null) - handlerCreators.put("class", new ClassHandlerCreator()); - handlerCreators.put("null", new NullHandlerCreator()); - - handlerCreators.put("char", new CharHandlerCreator()); - handlerCreators.put("string", new StringHandlerCreator()); - handlerCreators.put("boolean", new BooleanHandlerCreator()); - handlerCreators.put("byte", new ByteHandlerCreator()); - handlerCreators.put("short", new ShortHandlerCreator()); - handlerCreators.put("int", new IntHandlerCreator()); - handlerCreators.put("long", new LongHandlerCreator()); - handlerCreators.put("float", new FloatHandlerCreator()); - handlerCreators.put("double", new DoubleHandlerCreator()); - - // parses the data and sends all exceptions to the ExceptionListener - try - { - parser.parse(inputStream, this); - } - catch (SAXException saxe) - { - exceptionListener.exceptionThrown( - new IllegalArgumentException("XML data not well-formed.")); - } - catch (IOException ioe) - { - exceptionListener.exceptionThrown(ioe); - } - } - - public void startElement( - String uri, - String localName, - String qName, - Attributes attributes) - throws SAXException - { - /* The element is skipped if - * a) the current handler has already failed or a previous error occured - * which makes all children obsolete - */ - if (currentHandler.hasFailed() || skipElement > 0) - { - exceptionListener.exceptionThrown( - new IllegalArgumentException( - "Element unusable due to previous error: " + qName)); - - skipElement++; - - return; - } - - /* b) Subelements are not allowed within the current ElementHandler. - */ - if (!currentHandler.isSubelementAllowed(qName)) - { - exceptionListener.exceptionThrown( - new IllegalArgumentException( - "Element is not allowed here: " + qName)); - - skipElement++; - - return; - } - - /* c) The tag name is not a key in the map of Creator instances. This means that - * either the XML data is of a newer version or simply contains a miss-spelled element. - */ - if (!handlerCreators.containsKey(qName)) - { - exceptionListener.exceptionThrown( - new IllegalArgumentException( - "Element unusable because tag is unknown: " + qName)); - - skipElement++; - - return; - } - - // creates a new handler for the new element - AbstractElementHandler handler = - ((Creator) handlerCreators.get(qName)).createHandler( - currentHandler); - - // makes it the current handler to receive character data - currentHandler = handler; - - // starts the handler - currentHandler.start(attributes, exceptionListener); - } - - public void endElement(String uri, String localName, String qName) - throws SAXException - { - // skips processing the current handler if we are parsing an element - // which was marked invalid (in startElement() ) - if (skipElement > 0) - { - skipElement--; - return; - } - - // invokes the handler's finishing method - currentHandler.end(exceptionListener); - - // removes the current handler and reactivates its parent - currentHandler = currentHandler.getParent(); - } - - /** Transfers character data to the current handler - */ - public void characters(char[] ch, int start, int length) - throws SAXException - { - // prevents sending character data of invalid elements - if (skipElement > 0) - return; - - currentHandler.characters(ch, start, length); - } - - /** Creator interface provided a mechanism to instantiate ElementHandler instances - * for the appropriate tag. - * - * @author Robert Schuster - */ - interface Creator - { - /** Creates an ElementHandler instance using the given ElementHandler as its parent. - * - * @param parent The parent ElementHandler of the result. - * @return A new ElementHandler instance. - */ - AbstractElementHandler createHandler(ElementHandler parent); - } - - class BooleanHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new BooleanHandler(parent); - } - } - - class ByteHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new ByteHandler(parent); - } - } - - class ShortHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new ShortHandler(parent); - } - } - - class IntHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new IntHandler(parent); - } - } - - class LongHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new LongHandler(parent); - } - } - - class FloatHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new FloatHandler(parent); - } - } - - class DoubleHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new DoubleHandler(parent); - } - } - - class CharHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new CharHandler(parent); - } - } - - class StringHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new StringHandler(parent); - } - } - - class JavaHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return javaHandler; - } - } - - class ObjectHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new ObjectHandler(parent); - } - } - - class VoidHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new VoidHandler(parent); - } - } - - class ClassHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new ClassHandler(parent); - } - } - - class NullHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new NullHandler(parent); - } - } - - class ArrayHandlerCreator implements Creator - { - public AbstractElementHandler createHandler(ElementHandler parent) - { - return new ArrayHandler(parent); - } - } - - /** Adds a decoded object to the Context. */ - public void addParameterObject(Object o) throws AssemblyException - { - objects.add(o); - } - - public void notifyStatement(Context outerContext) throws AssemblyException - { - // can be ignored because theis Context does not react to statement and expressions - // differently - } - - public Object endContext(Context outerContext) throws AssemblyException - { - return null; - } - - public boolean subContextFailed() - { - // failing of subcontexts is no problem for the mother of all contexts - return false; - } - - public void set(int index, Object o) throws AssemblyException - { - // not supported - throw new AssemblyException( - new IllegalArgumentException("Set method is not allowed in decoder context.")); - } - - public Object get(int index) throws AssemblyException - { - // not supported - throw new AssemblyException( - new IllegalArgumentException("Get method is not allowed in decoder context.")); - } - - public Object getResult() - { - // returns the XMLDecoder instance which is requested by child contexts this way. - // That is needed to invoke methods on the decoder. - return decoder; - } - - public void setId(String id) - { - exceptionListener.exceptionThrown(new IllegalArgumentException("id attribute is not allowed for tag.")); - } - - public String getId() - { - // appears to have no id - return null; - } - - public boolean isStatement() - { - // this context is a statement by definition because it never returns anything to a parent because - // there is no such parent (DummyContext does not count!) - return true; - } - - public void setStatement(boolean b) - { - // ignores that because this Context is always a statement - } - - /** Returns an Iterator instance which returns the decoded objects. - * - * This method is used by the XMLDecoder directly. - */ - public Iterator iterator() - { - return objects.iterator(); - } - -} diff --git a/libjava/gnu/java/beans/decoder/PropertyContext.java b/libjava/gnu/java/beans/decoder/PropertyContext.java deleted file mode 100644 index 838ef814b01..00000000000 --- a/libjava/gnu/java/beans/decoder/PropertyContext.java +++ /dev/null @@ -1,137 +0,0 @@ -/* gnu.java.beans.decoder.PropertyContext - 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.java.beans.decoder; - -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; - -/** PropertyContext is a Context implementation that is very similar to MethodContext - * and IndexContext. The sole purpose of PropertyContext to find out whether it should - * 'set' or 'get' a certain property. This decision is made using the number of - * arguments. - *

When the method call has to be made and there is no argument we 'get' the property. - * With one argument it is 'set'.

- * - * @author Robert Schuster - */ -class PropertyContext extends AbstractObjectContext -{ - private Object argument; - private String propertyName; - private String prefix = "get"; - private boolean methodCalled; - - PropertyContext(String id, String newPropertyName) - { - setId(id); - propertyName = newPropertyName; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#addObject(java.lang.Object) - */ - public void addParameterObject(Object o) throws AssemblyException - { - if (methodCalled) - throw new AssemblyException(new IllegalArgumentException("Cannot add parameter object when method was already called.")); - - if (argument != null) - throw new AssemblyException(new IllegalArgumentException("Property attribut allows zero or one argument only.")); - - argument = o; - setStatement(true); - prefix = "set"; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#endContext(gnu.java.beans.decoder.Context) - */ - public void notifyStatement(Context outerContext) throws AssemblyException - { - if (methodCalled) - return; - methodCalled = true; - - Object outerObject = outerContext.getResult(); - - if (outerObject == null) - throw new AssemblyException(new NullPointerException("No object to access property " - + propertyName)); - - - // converts property name into a method name - String methodName = prefix + propertyName.substring(0, 1).toUpperCase() - + propertyName.substring(1); - - // prepares the argument - Object[] args = (argument != null) ? new Object[] { argument } : null; - - try - { - Method method = MethodFinder.getMethod(outerObject.getClass(), - methodName, args); - - // stores the result whether it is available or not - setObject(method.invoke(outerObject, args)); - } - catch (NoSuchMethodException nsme) - { - throw new AssemblyException(nsme); - } - catch (InvocationTargetException ite) - { - throw new AssemblyException(ite.getCause()); - } - catch (IllegalAccessException iae) - { - throw new AssemblyException(iae); - } - } - - public Object endContext(Context outerContext) throws AssemblyException - { - notifyStatement(outerContext); - - return getResult(); - } - - public boolean subContextFailed() - { - return ! methodCalled; - } -} diff --git a/libjava/gnu/java/beans/decoder/ShortHandler.java b/libjava/gnu/java/beans/decoder/ShortHandler.java deleted file mode 100644 index ab6ddbece26..00000000000 --- a/libjava/gnu/java/beans/decoder/ShortHandler.java +++ /dev/null @@ -1,58 +0,0 @@ -/* gnu.java.beans.decoder.ShortHandler - 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.java.beans.decoder; - -/** Creates a Short instance from the character data in a <short> tag. - * - * @author Robert Schuster - */ -class ShortHandler extends SimpleHandler -{ - /** - * @param PersistenceParser - */ - ShortHandler(ElementHandler parent) - { - super(parent); - } - - protected Object parse(String number) throws NumberFormatException - { - return Short.valueOf(number); - } -} diff --git a/libjava/gnu/java/beans/decoder/SimpleHandler.java b/libjava/gnu/java/beans/decoder/SimpleHandler.java deleted file mode 100644 index bc187e8a052..00000000000 --- a/libjava/gnu/java/beans/decoder/SimpleHandler.java +++ /dev/null @@ -1,111 +0,0 @@ -/* gnu.java.beans.decoder.SimpleHandler - 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.java.beans.decoder; - -import java.beans.ExceptionListener; - -import org.xml.sax.Attributes; - -/** XML element handler that is specialized on tags that contains a simple string in their - * body which has to be parsed in a specific way. - *

All of these tags have in common that they do not accept attributes. A warning is - * send to the parser's ExceptionListener when one or more attributes exist.

- * - * @author Robert Schuster - */ -abstract class SimpleHandler extends AbstractElementHandler -{ - private ObjectContext context; - - /** - * @param PersistenceParser - */ - SimpleHandler(ElementHandler parent) - { - super(parent, false); - - // SimpleHandler do not accept any subelements - } - - protected final Context startElement(Attributes attributes, ExceptionListener exceptionListener) - throws AssemblyException - { - - // note: simple elements should not have any attributes. We inform - // the user of this syntactical but uncritical problem by sending - // an IllegalArgumentException for each unneccessary attribute - int size = attributes.getLength(); - for (int i = 0; i < size; i++) { - String attributeName = attributes.getQName(i); - Exception e = - new IllegalArgumentException( - "Unneccessary attribute '" - + attributeName - + "' discarded."); - exceptionListener.exceptionThrown(e); - } - - return context = new ObjectContext(); - } - - public void endElement(String characters) - throws AssemblyException, AssemblyException - { - // reports the number when the character data can be parsed - try - { - context.setObject(parse(characters)); - } - catch (NumberFormatException nfe) - { - throw new AssemblyException(nfe); - } - } - - /** Returns an object that is created from the given characters. If the string is - * converted into a number a NumberFormatException is cathed and reported - * appropriately. - * - * @param characters A string of characters that has to be processed in some way. - * @return An Object instance generated from the given data. - * @throws AssemblerException When the string was invalid. - * @throws NumberFormatException When the string could not be parsed into a number. - */ - protected abstract Object parse(String characters) - throws AssemblyException, NumberFormatException; -} diff --git a/libjava/gnu/java/beans/decoder/StaticMethodContext.java b/libjava/gnu/java/beans/decoder/StaticMethodContext.java deleted file mode 100644 index 959c949f77b..00000000000 --- a/libjava/gnu/java/beans/decoder/StaticMethodContext.java +++ /dev/null @@ -1,95 +0,0 @@ -/* gnu.java.beans.decoder.StaticMethodContext - 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.java.beans.decoder; - -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.ArrayList; - -/** - * @author Robert Schuster - */ -class StaticMethodContext extends AbstractCreatableObjectContext -{ - private ArrayList arguments = new ArrayList(); - private Class klass; - private String methodName; - - StaticMethodContext(String id, Class newClass, String newMethodName) - { - setId(id); - klass = newClass; - methodName = newMethodName; - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#addObject(java.lang.Object) - */ - public void addParameterObjectImpl(Object o) - { - arguments.add(o); - } - - /* (non-Javadoc) - * @see gnu.java.beans.decoder.Context#endContext(gnu.java.beans.decoder.Context) - */ - protected Object createObject(Context outerContext) - throws AssemblyException - { - Object[] args = arguments.toArray(); - - try - { - Method method = MethodFinder.getMethod(klass, methodName, args); - return method.invoke(null, args); - } - catch (NoSuchMethodException nsme) - { - throw new AssemblyException(nsme); - } - catch (InvocationTargetException ite) - { - // rethrows the reason for the InvocationTargetsException (ie. the exception in the called code) - throw new AssemblyException(ite.getCause()); - } - catch (IllegalAccessException iae) - { - throw new AssemblyException(iae); - } - } -} diff --git a/libjava/gnu/java/beans/decoder/StringHandler.java b/libjava/gnu/java/beans/decoder/StringHandler.java deleted file mode 100644 index 6f2311a9e62..00000000000 --- a/libjava/gnu/java/beans/decoder/StringHandler.java +++ /dev/null @@ -1,54 +0,0 @@ -/* gnu.java.beans.decoder.StringHandler - 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.java.beans.decoder; - -class StringHandler extends SimpleHandler -{ - /** - * @param PersistenceParser - */ - StringHandler(ElementHandler parent) - { - super(parent); - } - - protected Object parse(String characters) - { - return characters; - } -} diff --git a/libjava/gnu/java/beans/decoder/VoidHandler.java b/libjava/gnu/java/beans/decoder/VoidHandler.java deleted file mode 100644 index ca3664bbed1..00000000000 --- a/libjava/gnu/java/beans/decoder/VoidHandler.java +++ /dev/null @@ -1,140 +0,0 @@ -/* gnu.java.beans.decoder.VoidHandler - 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.java.beans.decoder; - -import java.beans.ExceptionListener; - -import org.xml.sax.Attributes; - -public class VoidHandler extends AbstractElementHandler -{ - /** - * @param PersistenceParser - */ - VoidHandler(ElementHandler parent) - { - super(parent, true); - } - - protected Context startElement( - Attributes attributes, - ExceptionListener exceptionListener) - throws AssemblyException - { - Context ctx = startElementImpl(attributes); - ctx.setStatement(true); - - return ctx; - } - - private Context startElementImpl(Attributes attributes) - throws AssemblyException - { - String id = attributes.getValue("id"); - String className = attributes.getValue("class"); - String methodName = attributes.getValue("method"); - String propertyName = attributes.getValue("property"); - String index = attributes.getValue("index"); - - if (className != null) - { - try - { - Class klass = instantiateClass(className); - - // class name exists which means that we are in a static context. - // so we may want to ... - // run a constructor if methodName is "new" or null - if (methodName == null || methodName.equals("new")) - // if the id is null the result cannot be by the decoder accessed but the - // constructor may have side effects (e.g. registering itself in a global registry) - return new ConstructorContext(id, klass); - - // (falling through is important!) - // run a static method on the given class (if methodName exists, which is implied already) - return new StaticMethodContext(id, klass, methodName); - } - catch (ClassNotFoundException cnfe) - { - throw new AssemblyException(cnfe); - } - } - else - { - // className does not exist which means we are in the context of - // some object and want to ... - // access an element by index - if (index != null) - { - // note: whether this resolves into get(i) or set(i, o) depends on the - // number of arguments and is decided by the ObjectAssembler - try - { - return new IndexContext(id, Integer.parseInt(index)); - } - catch (NumberFormatException nfe) - { - throw new AssemblyException(nfe); - } - } - - // access a method if methodName exists - if (methodName != null) - return new MethodContext(id, methodName); - - // (falling through is important!) - // access a property if a propertyName exists - if (propertyName != null && propertyName.length() > 0) - // this is reported as an ordinary method invocation where the propertyName is - // converted into a 'setter'-method name: convert first character of property name - // to upper case and prepend 'set' - // Note: This will be a setter-method because the tag implies that no return - // value is expected (but a side effect) - return new PropertyContext(id, propertyName); - } - - // if code reaches this point the tag has wrong attributes. The following test - // does not make it better but can provide are more specific error message for - // a common mistake: tags are not allowed to have an idref attribute - throw new AssemblyException( - new IllegalArgumentException( - (attributes.getValue("idref") == null) - ? "Missing attributes for tag" - : " does not support 'idref' attribute.")); - } -} diff --git a/libjava/gnu/java/beans/editors/ColorEditor.java b/libjava/gnu/java/beans/editors/ColorEditor.java deleted file mode 100644 index b099eb2f0e9..00000000000 --- a/libjava/gnu/java/beans/editors/ColorEditor.java +++ /dev/null @@ -1,100 +0,0 @@ -/* gnu.java.beans.editors.ColorEditor - Copyright (C) 1998 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.java.beans.editors; - -import java.awt.Color; -import java.beans.PropertyEditorSupport; - -/** - ** NativeByteEditor is a property editor for the - ** byte type. - ** - ** @author John Keiser - ** @version 1.1.0, 29 Jul 1998 - **/ - -public class ColorEditor extends PropertyEditorSupport { - Color[] stdColors = {Color.black,Color.blue,Color.cyan, - Color.darkGray,Color.gray,Color.green, - Color.lightGray,Color.magenta,Color.orange, - Color.pink,Color.red,Color.white, - Color.yellow}; - String[] stdColorNames = {"black","blue","cyan", - "dark gray","gray","green", - "light gray","magenta","orange", - "pink","red","white", - "yellow"}; - - /** setAsText for Color checks for standard color names - ** and then checks for a #RRGGBB value or just RRGGBB, - ** both in hex. - **/ - public void setAsText(String val) throws IllegalArgumentException { - if(val.length() == 0) { - throw new IllegalArgumentException("Tried to set empty value!"); - } - for(int i=0;iTo Do: Add custom font chooser - ** component. - ** - ** @author John Keiser - ** @version 1.1.0, 29 Jul 1998 - **/ - -public class FontEditor extends PropertyEditorSupport { - /** setAsText for Font calls Font.decode(). **/ - public void setAsText(String val) throws IllegalArgumentException { - setValue(Font.decode(val)); - } - - /** getAsText for Font returns a value in the format - ** expected by Font.decode(). - **/ - public String getAsText() { - Font f = (Font)getValue(); - if(f.isBold()) { - if(f.isItalic()) { - return f.getName()+"-bolditalic-"+f.getSize(); - } else { - return f.getName()+"-bold-"+f.getSize(); - } - } else if(f.isItalic()) { - return f.getName()+"-italic-"+f.getSize(); - } else { - return f.getName()+"-"+f.getSize(); - } - } -} diff --git a/libjava/gnu/java/beans/editors/NativeBooleanEditor.java b/libjava/gnu/java/beans/editors/NativeBooleanEditor.java deleted file mode 100644 index 3620cc1747a..00000000000 --- a/libjava/gnu/java/beans/editors/NativeBooleanEditor.java +++ /dev/null @@ -1,76 +0,0 @@ -/* gnu.java.beans.editors.NativeBooleanEditor - Copyright (C) 1998, 2002 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.java.beans.editors; - -import java.beans.PropertyEditorSupport; - -/** - ** NativeBooleanEditor is a property editor for the - ** boolean type.

- ** - ** To Do: add support for a checkbox - ** as the custom editor. - ** - ** @author John Keiser - ** @version 1.1.0, 29 Jul 1998 - **/ - -public class NativeBooleanEditor extends PropertyEditorSupport { - String[] tags = {"true","false"}; - - /** - * setAsText for boolean checks for true or false or t or f. - * "" also means false. - **/ - public void setAsText(String val) throws IllegalArgumentException { - if(val.equalsIgnoreCase("true") || val.equalsIgnoreCase("t")) { - setValue(Boolean.TRUE); - } else if(val.equalsIgnoreCase("false") || val.equalsIgnoreCase("f") || val.equals("")) { - setValue(Boolean.FALSE); - } else { - throw new IllegalArgumentException("Value must be true, false, t, f or empty."); - } - } - - - /** getAsText for boolean calls Boolean.toString(). **/ - public String getAsText() { - return getValue().toString(); - } -} diff --git a/libjava/gnu/java/beans/editors/NativeByteEditor.java b/libjava/gnu/java/beans/editors/NativeByteEditor.java deleted file mode 100644 index f3ec5fa1945..00000000000 --- a/libjava/gnu/java/beans/editors/NativeByteEditor.java +++ /dev/null @@ -1,61 +0,0 @@ -/* gnu.java.beans.editors.NativeByteEditor - Copyright (C) 1998 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.java.beans.editors; - -import java.beans.PropertyEditorSupport; - -/** - ** NativeByteEditor is a property editor for the - ** byte type. - ** - ** @author John Keiser - ** @version 1.1.0, 29 Jul 1998 - **/ - -public class NativeByteEditor extends PropertyEditorSupport { - /** setAsText for byte calls Byte.valueOf(). **/ - public void setAsText(String val) throws IllegalArgumentException { - setValue(Byte.valueOf(val)); - } - - /** getAsText for byte calls Byte.toString(). **/ - public String getAsText() { - return getValue().toString(); - } -} diff --git a/libjava/gnu/java/beans/editors/NativeDoubleEditor.java b/libjava/gnu/java/beans/editors/NativeDoubleEditor.java deleted file mode 100644 index 8d8aae15337..00000000000 --- a/libjava/gnu/java/beans/editors/NativeDoubleEditor.java +++ /dev/null @@ -1,61 +0,0 @@ -/* gnu.java.beans.editors.NativeDoubleEditor - Copyright (C) 1998 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.java.beans.editors; - -import java.beans.PropertyEditorSupport; - -/** - ** NativeDoubleEditor is a property editor for the - ** double type. - ** - ** @author John Keiser - ** @version 1.1.0, 29 Jul 1998 - **/ - -public class NativeDoubleEditor extends PropertyEditorSupport { - /** setAsText for double calls Double.valueOf(). **/ - public void setAsText(String val) throws IllegalArgumentException { - setValue(Double.valueOf(val)); - } - - /** getAsText for double calls Double.toString(). **/ - public String getAsText() { - return getValue().toString(); - } -} diff --git a/libjava/gnu/java/beans/editors/NativeFloatEditor.java b/libjava/gnu/java/beans/editors/NativeFloatEditor.java deleted file mode 100644 index 801377e7df9..00000000000 --- a/libjava/gnu/java/beans/editors/NativeFloatEditor.java +++ /dev/null @@ -1,61 +0,0 @@ -/* gnu.java.beans.editors.NativeFloatEditor - Copyright (C) 1998 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.java.beans.editors; - -import java.beans.PropertyEditorSupport; - -/** - ** NativeFloatEditor is a property editor for the - ** float type. - ** - ** @author John Keiser - ** @version 1.1.0, 29 Jul 1998 - **/ - -public class NativeFloatEditor extends PropertyEditorSupport { - /** setAsText for float calls Float.valueOf(). **/ - public void setAsText(String val) throws IllegalArgumentException { - setValue(Float.valueOf(val)); - } - - /** getAsText for float calls Float.toString(). **/ - public String getAsText() { - return getValue().toString(); - } -} diff --git a/libjava/gnu/java/beans/editors/NativeIntEditor.java b/libjava/gnu/java/beans/editors/NativeIntEditor.java deleted file mode 100644 index a6148841c46..00000000000 --- a/libjava/gnu/java/beans/editors/NativeIntEditor.java +++ /dev/null @@ -1,61 +0,0 @@ -/* gnu.java.beans.editors.NativeIntEditor - Copyright (C) 1998 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.java.beans.editors; - -import java.beans.PropertyEditorSupport; - -/** - ** NativeIntEditor is a property editor for the - ** int type. - ** - ** @author John Keiser - ** @version 1.1.0, 29 Jul 1998 - **/ - -public class NativeIntEditor extends PropertyEditorSupport { - /** setAsText for int calls Integer.valueOf(). **/ - public void setAsText(String val) throws IllegalArgumentException { - setValue(Integer.valueOf(val)); - } - - /** getAsText for int calls Integer.toString(). **/ - public String getAsText() { - return getValue().toString(); - } -} diff --git a/libjava/gnu/java/beans/editors/NativeLongEditor.java b/libjava/gnu/java/beans/editors/NativeLongEditor.java deleted file mode 100644 index 95e9dc87028..00000000000 --- a/libjava/gnu/java/beans/editors/NativeLongEditor.java +++ /dev/null @@ -1,61 +0,0 @@ -/* gnu.java.beans.editors.NativeLongEditor - Copyright (C) 1998 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.java.beans.editors; - -import java.beans.PropertyEditorSupport; - -/** - ** NativeLongEditor is a property editor for the - ** long type. - ** - ** @author John Keiser - ** @version 1.1.0, 29 Jul 1998 - **/ - -public class NativeLongEditor extends PropertyEditorSupport { - /** setAsText for long calls Long.valueOf(). **/ - public void setAsText(String val) throws IllegalArgumentException { - setValue(Long.valueOf(val)); - } - - /** getAsText for long calls Long.toString(). **/ - public String getAsText() { - return getValue().toString(); - } -} diff --git a/libjava/gnu/java/beans/editors/NativeShortEditor.java b/libjava/gnu/java/beans/editors/NativeShortEditor.java deleted file mode 100644 index ffaa266492e..00000000000 --- a/libjava/gnu/java/beans/editors/NativeShortEditor.java +++ /dev/null @@ -1,61 +0,0 @@ -/* gnu.java.beans.editors.NativeShortEditor - Copyright (C) 1998 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.java.beans.editors; - -import java.beans.PropertyEditorSupport; - -/** - ** NativeShortEditor is a property editor for the - ** short type. - ** - ** @author John Keiser - ** @version 1.1.0, 29 Jul 1998 - **/ - -public class NativeShortEditor extends PropertyEditorSupport { - /** setAsText for short calls Short.valueOf(). **/ - public void setAsText(String val) throws IllegalArgumentException { - setValue(Short.valueOf(val)); - } - - /** getAsText for short calls Short.toString(). **/ - public String getAsText() { - return getValue().toString(); - } -} diff --git a/libjava/gnu/java/beans/editors/StringEditor.java b/libjava/gnu/java/beans/editors/StringEditor.java deleted file mode 100644 index 8242d5475a5..00000000000 --- a/libjava/gnu/java/beans/editors/StringEditor.java +++ /dev/null @@ -1,61 +0,0 @@ -/* gnu.java.beans.editors.StringEditor - Copyright (C) 1998 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.java.beans.editors; - -import java.beans.PropertyEditorSupport; - -/** - ** NativeByteEditor is a property editor for the - ** byte type. - ** - ** @author John Keiser - ** @version 1.1.0, 29 Jul 1998 - **/ - -public class StringEditor extends PropertyEditorSupport { - /** setAsText just sets the value. **/ - public void setAsText(String val) throws IllegalArgumentException { - setValue(val); - } - - /** getAsText just returns the value. **/ - public String getAsText() { - return (String)getValue(); - } -} diff --git a/libjava/gnu/java/io/ASN1ParsingException.java b/libjava/gnu/java/io/ASN1ParsingException.java deleted file mode 100644 index 5d2c64ab54f..00000000000 --- a/libjava/gnu/java/io/ASN1ParsingException.java +++ /dev/null @@ -1,56 +0,0 @@ -/* ASN1ParsingException.java -- ASN.1 parsing exception. - 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., 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.java.io; - -/** - * Signals a malformed ASN.1 sequence. - */ -public class ASN1ParsingException extends java.io.IOException -{ - - public ASN1ParsingException() - { - super(); - } - - public ASN1ParsingException(String msg) - { - super(msg); - } -} diff --git a/libjava/gnu/java/io/Base64InputStream.java b/libjava/gnu/java/io/Base64InputStream.java deleted file mode 100644 index b0824ab6935..00000000000 --- a/libjava/gnu/java/io/Base64InputStream.java +++ /dev/null @@ -1,216 +0,0 @@ -/* Base64InputStream.java -- base-64 input stream. - Copyright (C) 2003, 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.java.io; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.FilterInputStream; -import java.io.IOException; -import java.io.InputStream; - -/** - * A filter input stream that decodes data encoded in the Base-64 - * encoding scheme. - * - * @author Casey Marshall (rsdio@metastatic.org) - */ -public class Base64InputStream extends FilterInputStream -{ - - // Constants and fields. - // ------------------------------------------------------------------------ - - /** Base-64 digits. */ - private static final String BASE_64 = - "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; - - /** Base-64 padding character. */ - private static final char BASE_64_PAD = '='; - - /** Decoding state. */ - private int state; - - /** Intermediate decoded value. */ - private int temp; - - /** EOF flag. */ - private boolean eof; - - private final byte[] one = new byte[1]; - - // Constructors. - // ------------------------------------------------------------------------ - - /** - * Create a new Base-64 input stream. The input bytes must be the - * ASCII characters A-Z, a-z, 0-9, + and /, with optional whitespace, - * and will be decoded into a byte stream. - * - * @param in The source of Base-64 input. - */ - public Base64InputStream(InputStream in) - { - super(in); - state = 0; - temp = 0; - eof = false; - } - - // Class method. - // ------------------------------------------------------------------------ - - /** - * Decode a single Base-64 string to a byte array. - * - * @param base64 The Base-64 encoded data. - * @return The decoded bytes. - * @throws IOException If the given data do not compose a valid Base-64 - * sequence. - */ - public static byte[] decode(String base64) throws IOException - { - Base64InputStream in = - new Base64InputStream(new ByteArrayInputStream(base64.getBytes())); - ByteArrayOutputStream out = - new ByteArrayOutputStream((int) (base64.length() / 0.666)); - byte[] buf = new byte[1024]; - int len; - while ((len = in.read(buf)) != -1) - out.write(buf, 0, len); - return out.toByteArray(); - } - - // Instance methods. - // ------------------------------------------------------------------------ - - public int available() - { - return 0; - } - - public int read() throws IOException - { - if (read(one) == 1) - return one[0]; - return -1; - } - - public int read(byte[] buf, int off, int len) throws IOException - { - if (eof) - return -1; - int count = 0; - while (count < len) - { - int i; - while (Character.isWhitespace((char) (i = in.read()))); - int pos = BASE_64.indexOf((char) i); - if (pos >= 0) - { - switch (state) - { - case 0: - temp = pos << 2; - state = 1; - break; - case 1: - buf[count++] = (byte) (temp | (pos >>> 4)); - temp = (pos & 0x0F) << 4; - state = 2; - break; - case 2: - buf[count++] = (byte) (temp | (pos >>> 2)); - temp = (pos & 0x03) << 6; - state = 3; - break; - case 3: - buf[count++] = (byte) (temp | pos); - state = 0; - break; - } - } - else if (i == BASE_64_PAD) - { - switch (state) - { - case 0: - case 1: - throw new IOException("malformed Base-64 input"); - case 2: - while (Character.isWhitespace((char) (i = in.read()))); - if (i != BASE_64_PAD) - throw new IOException("malformed Base-64 input"); - case 3: - while (Character.isWhitespace((char) (i = in.read()))); - } - eof = true; - break; - } - else // First non-Base-64 character, consider it end-of-stream. - { - if (state != 0) - throw new IOException("malformed Base-64 input"); - eof = true; - break; - } - } - return count; - } - - public boolean markSupported() - { - return false; - } - - public void mark(int markLimit) { } - - public void reset() throws IOException - { - throw new IOException("reset not supported"); - } - - public long skip(long n) throws IOException - { - long skipped; - for (skipped = 0; skipped < n; skipped++) - if (read() == -1) - break; - return skipped; - } -} diff --git a/libjava/gnu/java/io/ClassLoaderObjectInputStream.java b/libjava/gnu/java/io/ClassLoaderObjectInputStream.java deleted file mode 100644 index 238ab26b1b9..00000000000 --- a/libjava/gnu/java/io/ClassLoaderObjectInputStream.java +++ /dev/null @@ -1,73 +0,0 @@ -/* gnu.java.io.ClassLoaderObjectInputStream - Copyright (C) 1998 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.java.io; - -import java.io.IOException; -import java.io.InputStream; -import java.io.ObjectInputStream; -import java.io.StreamCorruptedException; - -/** - * ClassLoaderObjectInputStream is ObjectInputStream, with - * the ability to use a specific ClassLoader. - * - * @author Geoff Berry - * @version 1.1.0, 29 Jul 1998 - */ - -public class ClassLoaderObjectInputStream extends ObjectInputStream { - ClassLoader myClassLoader; - - /** Create the new ClassLoaderObjectInputStream. - * @param in the InputStream to read the Objects from. - * @param myClassLoader the ClassLoader to load classes - * with. - */ - public ClassLoaderObjectInputStream(InputStream in, ClassLoader myClassLoader) throws IOException,StreamCorruptedException { - super(in); - this.myClassLoader = myClassLoader; - } - - /** Overriden method to use the loadClass() method from - * the ClassLoader. - */ - public Class resolveClass(String name) throws IOException, ClassNotFoundException { - return myClassLoader.loadClass(name); - } -} diff --git a/libjava/gnu/java/io/NullOutputStream.java b/libjava/gnu/java/io/NullOutputStream.java deleted file mode 100644 index 526bd26e830..00000000000 --- a/libjava/gnu/java/io/NullOutputStream.java +++ /dev/null @@ -1,56 +0,0 @@ -/* NullOutputStream.java -- OutputStream that does absolutely nothing - Copyright (C) 1998 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.java.io; - -import java.io.OutputStream; - -/** - This is a placeholder OutputStream that does absolutley nothing - when written to. It is intended to be used in the same manner as - /dev/null. None of this class's methods do anything at all. -*/ -public class NullOutputStream extends OutputStream -{ - public NullOutputStream() {} - public void write( int b ) {} - public void write( byte b[] ) {} - public void write( byte b[], int off, int len ) {} - public void flush() {} - public void close() {} -} diff --git a/libjava/gnu/java/io/ObjectIdentityWrapper.java b/libjava/gnu/java/io/ObjectIdentityWrapper.java deleted file mode 100644 index 6db2e3a52a6..00000000000 --- a/libjava/gnu/java/io/ObjectIdentityWrapper.java +++ /dev/null @@ -1,100 +0,0 @@ -/* ObjectIdentityWrapper.java -- Wrapper class used to override equals() - and hashCode() to be as discriminating as possible - Copyright (C) 1998 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.java.io; - -/** - This class is a thin wrapper around Object that makes - the methods hashCode() and equals(Object) - as discriminating as possible. -*/ -public class ObjectIdentityWrapper -{ - - /** - Constructs a ObjectIdentityWrapper that is wrapped - around o. - */ - public ObjectIdentityWrapper( Object o ) - { - object = o; - } - - /** - Uses System.identityHashCode(Object) to compute a - hash code for the object wrapped by this - ObjectIdentityWrapper. - - @see java.lang.System#identityHashCode(java.lang.Object) - @see java.util.Hashtable - @see java.lang.Object#hashCode() - */ - public int hashCode() - { - return System.identityHashCode( object ); - } - - /** - Uses the == operator to test for equality between - the object wrapped by this ObjectIdentityWrapper and - the object wrapped by the ObjectIdentityWrapper o. - Returns false if o is not a ObjectIdentityWrapper. - - @see java.util.Hashtable - @see java.lang.Object#equals() - */ - public boolean equals( Object o ) - { - if( o instanceof ObjectIdentityWrapper ) - return object == ((ObjectIdentityWrapper)o).object; - else - return false; - } - - public String toString() - { - return "ObjectIdentityWrapper< " + object + ", " + hashCode() + " >"; - } - - /** - The Object wrapped by this - ObjectIdentityWrapper. - */ - public Object object; -} diff --git a/libjava/gnu/java/lang/ArrayHelper.java b/libjava/gnu/java/lang/ArrayHelper.java deleted file mode 100644 index 5f675831e9f..00000000000 --- a/libjava/gnu/java/lang/ArrayHelper.java +++ /dev/null @@ -1,78 +0,0 @@ -/* ArrayHelper.java -- Helper methods for handling array operations - Copyright (C) 1998, 2002 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.java.lang; - -/** - * ArrayHelper helps you do things with arrays. - * - * @author John Keiser - */ -public class ArrayHelper -{ - /** - * Counterpart to java.util.Collection.contains. - * - * @param array the array to search - * @param searchFor the object to locate - * @return true if some array element equals(searchFor) - */ - public static boolean contains(Object[] array, Object searchFor) - { - return indexOf(array, searchFor) != -1; - } - - /** - * Counterpart to java.util.Collection.indexOf. - * - * @param array the array to search - * @param searchFor the object to locate - * @return the index of the first equal object, or -1 - */ - public static int indexOf(Object[] array, Object searchFor) - { - for (int i = 0; i < array.length; i++) - { - if(array[i].equals(searchFor)) - { - return i; - } - } - return -1; - } -} diff --git a/libjava/gnu/java/lang/CharData.java b/libjava/gnu/java/lang/CharData.java deleted file mode 100644 index 7631522c810..00000000000 --- a/libjava/gnu/java/lang/CharData.java +++ /dev/null @@ -1,1001 +0,0 @@ -/* gnu/java/lang/CharData -- Database for java.lang.Character Unicode info - Copyright (C) 2002 Free Software Foundation, Inc. - *** This file is generated by scripts/unicode-muncher.pl *** - -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.java.lang; - -/** - * This contains the info about the unicode characters, that - * java.lang.Character needs. It is generated automatically from - * gnu/gcj/convert/UnicodeData-3.0.0.txt and - * gnu/gcj/convert/SpecialCasing-2.txt, by some - * perl scripts. These Unicode definition files can be found on the - * http://www.unicode.org website. - * JDK 1.4 uses Unicode version 3.0.0. - * - * The data is stored as string constants, but Character will convert these - * Strings to their respective char[] components. The field - * BLOCKS stores the offset of a block of 2SHIFT - * characters within DATA. The DATA field, in turn, stores - * information about each character in the low order bits, and an offset - * into the attribute tables UPPER, LOWER, - * NUM_VALUE, and DIRECTION. Notice that the - * attribute tables are much smaller than 0xffff entries; as many characters - * in Unicode share common attributes. The DIRECTION table also contains - * a field for detecting characters with multi-character uppercase expansions. - * Next, there is a listing for TITLE exceptions (most characters - * just have the same title case as upper case). Finally, there are two - * tables for multi-character capitalization, UPPER_SPECIAL - * which lists the characters which are special cased, and - * UPPER_EXPAND, which lists their expansion. - * - * @author scripts/unicode-muncher.pl (written by Jochen Hoenicke, - * Eric Blake) - * @see Character - * @see String - */ -public interface CharData -{ - /** - * The Unicode definition file that was parsed to build this database. - */ - String SOURCE = "gnu/gcj/convert/UnicodeData-3.0.0.txt"; - - /** - * The character shift amount to look up the block offset. In other words, - * (char) (BLOCKS.value[ch >> SHIFT] + ch) is the index where - * ch is described in DATA. - */ - int SHIFT = 5; - - /** - * The mapping of character blocks to their location in DATA. - * Each entry has been adjusted so that the 16-bit sum with the desired - * character gives the actual index into DATA. - */ - String BLOCKS - = "\u01c2\u01c2\u01c1\u012c\u012b\u01a0\u01f8\u02dc\u025f\u02ee\u0215" - + "\u0346\u02dc\u0326\u02bc\u0216\u015f\u02d4\u0376\u0376\u0376\u0369" - + "\ufe8f\u0344\uff85\uff65\ufdb5\ufda1\033\u02c4\034G\ufea8" - + "\uff8c\u0235\ufeff\032\ufebf&\ufb20\ufe28\u0113\u0104\ufb61" - + "\ufb5a\u010b\u0109\u00fe\uff08\u0229\u025e\u01c7\u01fc\u01dc\ufc46" - + "\u0229\ufe27\ufb55\u0169\ufbc8\u00fc\u0103\ufb68\ufb48\ufb28\ufb08" - + "\ufae8\ufac8\ufaa8\ufa88\ufa68\ufa48eP\u00ab\u0139\ufe0e" - + "c\u0155\u01a8\uf669\u0129\u0128\uf91f\ufe56\u0108\u0107\ufac0" - + "\ufc8e\ufead\u00c6\ufca7\ufb95\uf47d\u009f\ufb17\ufe20\ufd28\ufb2f" - + ";\uf3b9\ufe57\ufcce\uffbb\uf339\ufa98\uff8b\uff3b\ufa54\uf7e3" - + "\uff2b\ufad7\ufb69\ufc3a\ufee5\uf4c8\ufcb0\ufa88\ufdbf\uf448\ufe45" - + "\ufcc7\ufe4f\uf7f1\uf715\uf2e8\ufd9f\uf348\uf96a\ufc02\ufd97\uf2c8" - + "\uf2a8\uf4b9\uf4b3\uef6b\uf86a\uf84a\ufc58\uf80a\uf7ea\ufc0f\uf7aa" - + "\uee9c\ufb90\uf74a\uf7fa\uf70a\uf7ca\uf792\uf471\uf4d2\uf732\uf64a" - + "\uf401\uf64d\uefa8\uf5ca\uf5aa\ueca1\uf569\uf54a\uf52a\uf50a\uf4ea" - + "\uf4ca\uf4aa\uf48a\uf46a\uf44a\uf42a\uf40a\uf3ea\uf3ca\uf3aa\uf38a" - + "\uf36a\uf34a\uf32a\uf289\uf777\uf2ca\uf2aa\uf737\uec28\uec08\uebe8" - + "\uebc8\uf1ea\uf4a2\uf545\uedc6\uf2d7\uf14a\ue8ed\ue81e\uf0ea\uf597" - + "\uea68\uea48\uea28\uea08\ue9e8\ue9c8\ue9a8\ue988\ue968\ue948\ue928" - + "\ue908\ue8e8\ue8c8\ue8a8\ue888\ue868\ue848\ue828\ue808\ue7e8\ue7c8" - + "\ue7a8\ue788\ue768\ue748\ue728\ue708\ue6e8\ue6c8\ue6a8\ue688\ue668" - + "\ue648\ue628\ue608\ue5e8\ue5c8\ue5a8\ue588\ue568\ue548\ue55f\ue53f" - + "\ue51f\ue4ff\uefd7\ue4bf\ue49f\ue485\uef87\uef57\uef57\uef57\uef57" - + "\uef47\ue1ad\uef46\uef46\uef46\ue1e0\ue3dd\uef06\ue9d9\uebeb\ue244" - + "\ueed4\uef65\ue1f5\uef45\ueee9\uef7c\uee74\uef70\uef7d\uef78\uee91" - + "\uefd3\uee7d\uee25\uee27\uef65\uefdd\uee96\uefd3\uefe1\uef69\udf88" - + "\udf68\udf48\ued2b\ued3d\ued19\uef1c\uef08\ued47\ued3d\ued33\uec2b" - + "\uec0b\uebeb\uebcb\uebce\uea7c\ueb69\ueb6c\ue9b6\ueb0b\ueaeb\ue9e9" - + "\udca8\udc88\udc68\udc48\ue910\uea23\ueb58\ueb4f\ueb45\ueae5\udb68" - + "\udb48\ue92b\ue90b\ue8eb\ue8cb\ue8ab\ue88b\ue86b\ue84b\uda28\uda08" - + "\ud9e8\ud9c8\ud9a8\ud988\ud968\ud948\ud928\ud908\ud8e8\ud8c8\ud8a8" - + "\ud888\ud868\ud848\ud828\ud808\ud7e8\ud7c8\ud7a8\ud788\ud768\ud748" - + "\ud728\ud708\ud6e8\ud6c8\ud6a8\ud688\ud668\ud648\ud628\ud608\ud5e8" - + "\ud5c8\ud5a8\ud588\ud568\ud548\ud528\ud508\ud4e8\ud4c8\ue2b1\ue28b" - + "\ue26b\ue270\ue22b\ue20b\ue1eb\ue1cb\ue1ab\ue18b\ue18e\udd8f\ue3a8" - + "\udfd3\ud929\ud90a\ue348\ud8c9\ud8aa\udcd7\udcb2\ud681\ud82a\ud80a" - + "\ue268\ucede\ud168\ud148\ue116\ue0e9\ue1cb\ue0b7\ue0b7\ue15e\udf17" - + "\ue034\ue013\udff3\udfd3\ude6c\udf93\udf73\udf55\udf34\ud56a\ud54a" - + "\ud52a\ud50a\ud4ea\ud4ca\ud4aa\ud48a\ud46a\ud44a\ud42a\ud40a\ud3ea" - + "\ud3ca\ud3aa\ud38a\ud36a\ud34a\ud32a\ud30a\ud2ea\ud2ca\ud2aa\ud28a" - + "\ud26a\ud24a\ud22a\ud20a\ud1ea\ud1ca\ud1aa\ud18a\ud16a\ud14a\ud12a" - + "\ud10a\ud0ea\ud0ca\ud0aa\ud08a\ud06a\ud04a\ud02a\ud00a\ucfea\ucfca" - + "\ucfaa\ucf8a\ucf6a\ucf4a\ucf2a\ucf0a\uceea\uceca\uceaa\uce8a\uce6a" - + "\uce4a\uce2a\uce0a\ucdea\ucdca\ucdaa\ucd8a\ucd6a\ucd4a\ucd2a\ucd0a" - + "\uccea\uccca\uccaa\ucc8a\ucc6a\ucc4a\ucc2a\ucc0a\ucbea\ucbca\ucbaa" - + "\ucb8a\ucb6a\ucb4a\ucb2a\ucb0a\ucaea\ucaca\ucaaa\uca8a\uca6a\uca4a" - + "\uca2a\uca0a\uc9ea\uc9ca\uc9aa\uc98a\uc96a\uc94a\uc92a\uc90a\uc8ea" - + "\uc8ca\uc8aa\uc88a\uc86a\uc84a\uc82a\uc80a\uc7ea\uc7ca\uc7aa\uc78a" - + "\uc76a\uc74a\uc72a\uc70a\uc6ea\uc6ca\uc6aa\uc68a\uc66a\uc64a\uc62a" - + "\uc60a\uc5ea\uc5ca\uc5aa\uc58a\uc56a\uc54a\uc52a\uc50a\uc4ea\uc4ca" - + "\uc4aa\uc48a\uc46a\uc44a\uc42a\uc40a\uc3ea\uc3ca\uc3aa\uc38a\uc36a" - + "\uc34a\uc32a\uc30a\uc2ea\uc2ca\uc2aa\uc28a\uc26a\uc24a\uc22a\uc20a" - + "\uc1ea\uc1ca\uc1aa\uc18a\uc16a\uc14a\uc12a\uc10a\uc0ea\uc0ca\uc0aa" - + "\uc08a\uc06a\uc04a\uc02a\uc00a\ubfea\ubfca\ubfaa\ubf8a\ubf6a\ubf4a" - + "\ubf2a\ubf0a\ubeea\ubeca\ubeaa\ube8a\ube6a\ube4a\ube2a\ube0a\ubdea" - + "\ubdca\ubdaa\ubd8a\ubd6a\ubd4a\ubd2a\ubd0a\ubcea\ubcca\ubcaa\ubc8a" - + "\ubc6a\ubc4a\ubc2a\ubc0a\ubbea\ub2e0\ub568\ub548\ubb6a\ubb4a\ubb2a" - + "\ubb0a\ubaea\ubaca\ubaaa\uba8a\uba6a\uba4a\uba2a\uba0a\ub9ea\ub9ca" - + "\ub9aa\ub98a\ub96a\ub94a\ub92a\ub90a\ub8ea\ub8ca\ub8aa\ub88a\ub86a" - + "\ub84a\ub82a\ub80a\ub7ea\ub7ca\ub7aa\ub78a\ub76a\ub74a\ub72a\ub70a" - + "\ub6ea\ub6ca\ub6aa\ub68a\ub66a\ub64a\ub62a\ub60a\ub5ea\ub5ca\ub5aa" - + "\ub58a\ub56a\ub54a\ub52a\ub50a\ub4ea\ub4ca\ub4aa\ub48a\ub46a\ub44a" - + "\ub42a\ub40a\ub3ea\ub3ca\ub3aa\ub38a\ub36a\ub34a\ub32a\ub30a\ub2ea" - + "\ub2ca\ub2aa\ub28a\ub26a\ub24a\ub22a\ub20a\ub1ea\ub1ca\ub1aa\ub18a" - + "\ub16a\ub14a\ub12a\ub10a\ub0ea\ub0ca\ub0aa\ub08a\ub06a\ub04a\ub02a" - + "\ub00a\uafea\uafca\uafaa\uaf8a\uaf6a\uaf4a\uaf2a\uaf0a\uaeea\uaeca" - + "\uaeaa\uae8a\uae6a\uae4a\uae2a\uae0a\uadea\uadca\uadaa\uad8a\uad6a" - + "\uad4a\uad2a\uad0a\uacea\uacca\uacaa\uac8a\uac6a\uac4a\uac2a\uac0a" - + "\uabea\uabca\uabaa\uab8a\uab6a\uab4a\uab2a\uab0a\uaaea\uaaca\uaaaa" - + "\uaa8a\uaa6a\uaa4a\uaa2a\uaa0a\ua9ea\ua9ca\ua9aa\ua98a\ua96a\ua94a" - + "\ua92a\ua90a\ua8ea\ua8ca\ua8aa\ua88a\ua86a\ua84a\ua82a\ua80a\ua7ea" - + "\ua7ca\ua7aa\ua78a\ua76a\ua74a\ua72a\ua70a\ua6ea\ua6ca\ua6aa\ua68a" - + "\ua66a\ua64a\ua62a\ua60a\ua5ea\ua5ca\ua5aa\ua58a\ua56a\ua54a\ua52a" - + "\ua50a\ua4ea\ua4ca\ua4aa\ua48a\ua46a\ua44a\ua42a\ua40a\ua3ea\ua3ca" - + "\ua3aa\ua38a\ua36a\ua34a\ua32a\ua30a\ua2ea\ua2ca\ua2aa\ua28a\ua26a" - + "\ua24a\ua22a\ua20a\ua1ea\ua1ca\ua1aa\ua18a\ua16a\ua14a\ua12a\ua10a" - + "\ua0ea\ua0ca\ua0aa\ua08a\ua06a\ua04a\ua02a\ua00a\u9fea\u9fca\u9faa" - + "\u9f8a\u9f6a\u9f4a\u9f2a\u9f0a\u9eea\u9eca\u9eaa\u9e8a\u9e6a\u9e4a" - + "\u9e2a\u9e0a\u9dea\u9dca\u9daa\u9d8a\u9d6a\u9d4a\u9d2a\u9d0a\u9cea" - + "\u9cca\u9caa\u9c8a\u9c6a\u9c4a\u9c2a\u9c0a\u9bea\u9bca\u9baa\u9b8a" - + "\u9b6a\u9b4a\u9b2a\u9b0a\u9aea\u9aca\u9aaa\u9a8a\u9a6a\u9a4a\u9a2a" - + "\u9a0a\u99ea\u99ca\u99aa\u998a\u996a\u994a\u992a\u990a\u98ea\u98ca" - + "\u98aa\u988a\u986a\u984a\u982a\u980a\u97ea\u97ca\u97aa\u978a\u976a" - + "\u974a\u972a\u970a\u96ea\u96ca\u96aa\u968a\u966a\u964a\u962a\u960a" - + "\u95ea\u95ca\u95aa\u958a\u956a\u954a\u952a\u950a\u94ea\u94ca\u94aa" - + "\u948a\u946a\u944a\u942a\u940a\u93ea\u93ca\u93aa\u938a\u936a\u934a" - + "\u932a\u930a\u92ea\u92ca\u92aa\u928a\u926a\u924a\u922a\u920a\u91ea" - + "\u91ca\u91aa\u918a\u916a\u914a\u912a\u910a\u90ea\u90ca\u90aa\u908a" - + "\u906a\u904a\u902a\u900a\u8fea\u8fca\u8faa\u8f8a\u8f6a\u8f4a\u8f2a" - + "\u8f0a\u8eea\u8eca\u8eaa\u8e8a\u8e6a\u8e4a\u8e2a\u8e0a\u8dea\u8dca" - + "\u8daa\u8d8a\u8d6a\u8d4a\u8d2a\u8d0a\u8cea\u8cca\u8caa\u8c8a\u8c6a" - + "\u8c4a\u8c2a\u8c0a\u8bea\u8bca\u8baa\u8b8a\u8b6a\u8b4a\u8b2a\u8b0a" - + "\u8aea\u8aca\u8aaa\u8a8a\u8a6a\u8a4a\u8a2a\u8a0a\u89ea\u89ca\u89aa" - + "\u898a\u896a\u894a\u892a\u890a\u88ea\u88ca\u88aa\u888a\u886a\u884a" - + "\u882a\u880a\u87ea\u87ca\u87aa\u878a\u876a\u874a\u872a\u870a\u86ea" - + "\u86ca\u86aa\u868a\u866a\u864a\u862a\u860a\u85ea\u85ca\u85aa\u858a" - + "\u856a\u854a\u852a\u850a\u84ea\u84ca\u84aa\u848a\u846a\u844a\u842a" - + "\u840a\u83ea\u83ca\u83aa\u838a\u836a\u834a\u832a\u830a\u82ea\u82ca" - + "\u82aa\u828a\u826a\u824a\u822a\u820a\u81ea\u81ca\u81aa\u818a\u816a" - + "\u814a\u812a\u810a\u80ea\u80ca\u80aa\u808a\u806a\u804a\u802a\u800a" - + "\u7fea\u7fca\u7faa\u7f8a\u7f6a\u7f4a\u7f2a\u7f0a\u7eea\u7eca\u7eaa" - + "\u7e8a\u7e6a\u7e4a\u7e2a\u7e0a\u7dea\u7dca\u7daa\u7d8a\u7d6a\u7d4a" - + "\u7d2a\u7d0a\u7cea\u7cca\u7caa\u7c8a\u7c6a\u7c4a\u7c2a\u7c0a\u7bea" - + "\u7bca\u7baa\u7b8a\u7b6a\u7b4a\u7b2a\u7b0a\u7aea\u7aca\u7aaa\u7a8a" - + "\u7a6a\u7a4a\u7a2a\u7a0a\u79ea\u79ca\u79aa\u798a\u796a\u794a\u792a" - + "\u790a\u78ea\u78ca\u78aa\u788a\u786a\u784a\u782a\u780a\u77ea\u77ca" - + "\u77aa\u778a\u776a\u774a\u772a\u770a\u76ea\u76ca\u76aa\u768a\u766a" - + "\u764a\u762a\u760a\u75ea\u75ca\u75aa\u758a\u756a\u754a\u752a\u750a" - + "\u74ea\u74ca\u74aa\u748a\u746a\u744a\u742a\u740a\u73ea\u73ca\u73aa" - + "\u738a\u736a\u734a\u732a\u730a\u72ea\u72ca\u72aa\u728a\u726a\u724a" - + "\u722a\u720a\u71ea\u71ca\u71aa\u718a\u716a\u714a\u712a\u710a\u70ea" - + "\u70ca\u70aa\u708a\u706a\u704a\u702a\u700a\u6fea\u6fca\u6faa\u6f8a" - + "\u6f6a\u6f4a\u6f2a\u6f0a\u6eea\u6eca\u6eaa\u6e8a\u6e6a\u6e4a\u6e2a" - + "\u6e0a\u6dea\u6dca\u6daa\u6d8a\u6d6a\u6d4a\u6d2a\u6d0a\u6cea\u6cca" - + "\u6caa\u6c8a\u6c6a\u6c4a\u6c2a\u6c0a\u6bea\u6bca\u6baa\u6b8a\u6b6a" - + "\u6b4a\u6b2a\u6b0a\u6aea\u6aca\u6aaa\u6a8a\u6a6a\u6a4a\u6a2a\u6a0a" - + "\u69ea\u60f0\u6368\u6348\u696a\u694a\u692a\u690a\u68ea\u68ca\u68aa" - + "\u688a\u686a\u684a\u682a\u680a\u67ea\u67ca\u67aa\u678a\u676a\u674a" - + "\u672a\u670a\u66ea\u66ca\u66aa\u668a\u666a\u664a\u662a\u660a\u65ea" - + "\u65ca\u65aa\u658a\u656a\u654a\u652a\u650a\u6b26\u6de1\u6e9c\u5e48" - + "\u5e28\u5e08\u5de8\u5dc8\u5da8\u5d88\u5d68\u5d48\u5d28\u5d08\u5ce8" - + "\u5cc8\u5ca8\u5c88\u5c68\u5c48\u5c28\u5c08\u5be8\u5bc8\u5ba8\u5b88" - + "\u5b68\u5b48\u5b28\u5b08\u5ae8\u5ac8\u5aa8\u5a88\u5a68\u5a48\u5a28" - + "\u5a08\u59e8\u59c8\u59a8\u5988\u5968\u5948\u5928\u5908\u58e8\u58c8" - + "\u58a8\u5888\u5868\u5848\u5828\u5808\u57e8\u57c8\u57a8\u5788\u5768" - + "\u5748\u5d6a\u5d4a\u5d2a\u5d0a\u5cea\u5cca\u5caa\u5c8a\u5c6a\u5c4a" - + "\u5c2a\u5c0a\u5bea\u5bca\u5baa\u5b8a\u5b6a\u5b4a\u5b2a\u5b0a\u5aea" - + "\u5aca\u5aaa\u5a8a\u5a6a\u5a4a\u5a2a\u5a0a\u59ea\u59ca\u59aa\u598a" - + "\u596a\u594a\u592a\u590a\u58ea\u58ca\u58aa\u588a\u586a\u584a\u582a" - + "\u580a\u57ea\u57ca\u57aa\u578a\u576a\u574a\u572a\u570a\u56ea\u56ca" - + "\u56aa\u568a\u566a\u564a\u562a\u560a\u55ea\u55ca\u55aa\u558a\u556a" - + "\u554a\u552a\u550a\u54ea\u54ca\u54aa\u548a\u546a\u544a\u542a\u540a" - + "\u53ea\u53ca\u53aa\u538a\u536a\u534a\u532a\u530a\u52ea\u52ca\u52aa" - + "\u528a\u526a\u524a\u522a\u520a\u51ea\u51ca\u51aa\u518a\u516a\u514a" - + "\u512a\u510a\u50ea\u50ca\u50aa\u508a\u506a\u504a\u502a\u500a\u4fea" - + "\u4fca\u4faa\u4f8a\u4f6a\u4f4a\u4f2a\u4f0a\u4eea\u4eca\u4eaa\u4e8a" - + "\u4e6a\u4e4a\u4e2a\u4e0a\u4dea\u4dca\u4daa\u4d8a\u4d6a\u4d4a\u4d2a" - + "\u4d0a\u4cea\u4cca\u4caa\u4c8a\u4c6a\u4c4a\u4c2a\u4c0a\u4bea\u4bca" - + "\u4baa\u4b8a\u4b6a\u4b4a\u4b2a\u4b0a\u4aea\u4aca\u4aaa\u4a8a\u4a6a" - + "\u4a4a\u4a2a\u4a0a\u49ea\u49ca\u49aa\u498a\u496a\u494a\u492a\u490a" - + "\u48ea\u48ca\u48aa\u488a\u486a\u484a\u482a\u480a\u47ea\u47ca\u47aa" - + "\u478a\u476a\u474a\u472a\u470a\u46ea\u46ca\u46aa\u468a\u466a\u464a" - + "\u462a\u460a\u45ea\u45ca\u45aa\u458a\u456a\u454a\u452a\u450a\u44ea" - + "\u44ca\u44aa\u448a\u446a\u444a\u442a\u440a\u43ea\u43ca\u43aa\u438a" - + "\u436a\u434a\u432a\u430a\u42ea\u42ca\u42aa\u428a\u426a\u424a\u422a" - + "\u420a\u41ea\u41ca\u41aa\u418a\u416a\u414a\u412a\u410a\u40ea\u40ca" - + "\u40aa\u408a\u406a\u404a\u402a\u400a\u3fea\u3fca\u3faa\u3f8a\u3f6a" - + "\u3f4a\u3f2a\u3f0a\u3eea\u3eca\u3eaa\u3e8a\u3e6a\u3e4a\u3e2a\u3e0a" - + "\u3dea\u3dca\u3daa\u3d8a\u3d6a\u3d4a\u3d2a\u3d0a\u3cea\u3cca\u3caa" - + "\u3c8a\u3c6a\u3c4a\u3c2a\u3c0a\u3bea\u3bca\u3baa\u3b8a\u3b6a\u3b4a" - + "\u3b2a\u3b0a\u3aea\u3aca\u3aaa\u3a8a\u3a6a\u3a4a\u3a2a\u3a0a\u39ea" - + "\u39ca\u39aa\u398a\u396a\u394a\u392a\u390a\u38ea\u38ca\u38aa\u388a" - + "\u386a\u384a\u382a\u380a\u37ea\u37ca\u37aa\u378a\u376a\u374a\u372a" - + "\u370a\u36ea\u36ca\u36aa\u368a\u366a\u364a\u362a\u360a\u35ea\u35ca" - + "\u35aa\u358a\u356a\u354a\u352a\u350a\u34ea\u34ca\u34aa\u348a\u346a" - + "\u344a\u342a\u340a\u33ea\u33ca\u33aa\u338a\u336a\u334a\u332a\u330a" - + "\u32ea\u32ca\u32aa\u328a\u326a\u324a\u322a\u320a\u31ea\u28f2\u2b68" - + "\u2b48\u3c2b\u3c0b\u3beb\u3bcb\u3bab\u3b8b\u3b6b\u3b4b\u3b2b\u3b0b" - + "\u3aeb\u3acb\u3aab\u3a8b\u3a6b\u3a4b\u3a2b\u3a0b\u39eb\u39cb\u39ab" - + "\u398b\u396b\u394b\u392b\u390b\u38eb\u38cb\u38ab\u388b\u386b\u384b" - + "\u382b\u380b\u37eb\u37cb\u37ab\u378b\u376b\u374b\u372b\u370b\u36eb" - + "\u36cb\u36ab\u368b\u366b\u364b\u362b\u360b\u35eb\u35cb\u35ab\u358b" - + "\u356b\u354b\u352b\u350b\u34eb\u34cb\u34ab\u348b\u346b\u344b\u344b" - + "\u342b\u340b\u33eb\u33cb\u33ab\u338b\u336b\u334b\u332b\u330b\u32eb" - + "\u32cb\u32ab\u328b\u326b\u324b\u322b\u320b\u31eb\u31cb\u31ab\u318b" - + "\u316b\u314b\u312b\u310b\u30eb\u30cb\u30ab\u308b\u306b\u304b\u302b" - + "\u300b\u2feb\u2fcb\u2fab\u2f8b\u2f6b\u2f4b\u2f2b\u2f0b\u2eeb\u2ecb" - + "\u2eab\u2e8b\u2e6b\u2e4b\u2e2b\u2e0b\u2deb\u2dcb\u2dab\u2d8b\u2d6b" - + "\u2d4b\u2d2b\u2d0b\u2ceb\u2ccb\u2cab\u2c8b\u2c6b\u2c4b\u2c2b\u2c0b" - + "\u2beb\u2bcb\u2bab\u2b8b\u2b6b\u2b4b\u2b2b\u2b0b\u2aeb\u2acb\u2aab" - + "\u2a8b\u2a6b\u2a4b\u2a2b\u2a0b\u29eb\u29cb\u29ab\u298b\u296b\u294b" - + "\u292b\u290b\u28eb\u28cb\u28ab\u288b\u286b\u284b\u282b\u280b\u27eb" - + "\u27cb\u27ab\u278b\u276b\u274b\u272b\u270b\u26eb\u26cb\u26ab\u268b" - + "\u266b\u264b\u262b\u260b\u25eb\u25cb\u25ab\u258b\u256b\u254b\u252b" - + "\u250b\u24eb\u24cb\u24ab\u248b\u246b\u244b\u242b\u240b\u23eb\u23cb" - + "\u23ab\u238b\u236b\u234b\u232b\u230b\u22eb\u22cb\u22ab\u228b\u226b" - + "\u224b\u222b\u220b\u21eb\u21cb\u21ab\u218b\u216b\u214b\u212b\u210b" - + "\u20eb\u20cb\u20ab\u208b\u206b\u204b\u202b\u200b\u1feb\u1fcb\u1fab" - + "\u1f8b\u1f6b\u1f4b\u1f2b\u1f0b\u1eeb\u1ecb\u1eab\u1e8b\u1e6b\u1e4b" - + "\u1e2b\u1e0b\u1deb\u1dcb\u1dab\u1d8b\u1d6b\u1d4b\u1d2b\u1d0b\u1ceb" - + "\u1ccb\u1cab\u1c8b\u1c6b\u1c4b\u1c2b\u1c0b\u1beb\u1bcb\u1bab\u1b8b" - + "\u1b6b\u106a\u104a\u102a\u100a\u0fea\u0fca\u0faa\u0f8a\u0f6a\u0668" - + "\u08e8\u08c8\u08a8\u0888\u0868\u0848\u07d7\u194b\u07b6\u0d1c\u0cfc" - + "\u0cb2\u0ca9\u0c9c\u0c7c\u0c5c\u0c3c\u0c1c\u0bfc\u0bdc\u0bbc\u0b9c" - + "\u0b7c\u0b5e\u0b2c\u0b1c\u0ab8\u0adc\u0a9c\u02c2\u0528\u166b\u1667" - + "\u03ff\u09fc\u09dc\u09bc\u0659\u0bb8\u15a7\u0fc6\u01c0\u01b1\u09cb" - + "\u082c\u1285"; - - /** - * Information about each character. The low order 5 bits form the - * character type, the next bit is a flag for non-breaking spaces, and the - * next bit is a flag for mirrored directionality. The high order 9 bits - * form the offset into the attribute tables. Note that this limits the - * number of unique character attributes to 512, which is not a problem - * as of Unicode version 3.2.0, but may soon become one. - */ - String DATA - = "\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001" - + "\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082" - + "\u3e80\u3e80\u3001\u3082\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3a85" - + "\u3a85\u3e80\u3e80\u3e80\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85\u3a85\u3a85" - + "\u3e80\u3e80\u3e80\u3e80\u5b88\u5b88\u3e80\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85\u3a85\u3a85\u3e80\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80" - + "\u3e80\u3e80\u3e80\u5198\u3e80\u3e80\u3e80\u3e80\u4606\u3e80\u3e80" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80\u3e80\u3a85" - + "\u3a85\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u5405\u3e80\u3e80\u3e80\u3e80\u5202\u5202\u5202\u5202" - + "\u5202\u5202\u5202\u5202\u5202\u5202\u5202\u5202\u5202\u5202\u5202" - + "\u5202\u5202\u5202\u5202\u5202\u5202\u5202\u5202\u5202\u5202\u5202" - + "\u5202\u5202\u5202\u5202\u5202\u2e82\u3e80\u5198\u2a14\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u4606\u4606\u4606\u4606\u4606\u4606\u4606" - + "\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4686\u4606\u4606" - + "\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u1a1b\u1a1b\u3e80\u3e80\u3e80\u3e80\u4584\u3e80\u3e80" - + "\u3e80\u0298\u3e80\u0298\u6615\u6696\u0298\u1a97\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u4584\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u4584\u4584\u1a1b\u1a1b\u1a1b\u1a1b" - + "\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b\u4584" - + "\u4584\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b" - + "\u1a1b\u1a1b\u1a1b\u1a1b\u2e82\u7282\u2e82\u3e80\u2e82\u4902\u7481" - + "\u7481\u7481\u7481\u7383\u1a1b\u1a1b\u1a1b\u6d82\u6d82\u4902\u4902" - + "\u3e80\u3e80\u2e82\u4902\u6e01\u6e01\u7501\u7501\u3e80\u1a1b\u1a1b" - + "\u1a1b\u1b02\u1b82\u1c02\u1c82\u1d02\u1d82\u1e02\u1e82\u1f02\u1f82" - + "\u2002\u2082\u2102\u2182\u2202\u2282\u2302\u2382\u2402\u2482\u2502" - + "\u2582\u2602\u2682\u2702\u2782\u0455\u0c99\u04d6\u0c99\017\017" - + "\017\017\017\u010f\017\017\017\017\017\017\017" - + "\017\017\017\017\017\017\017\017\017\017\017" - + "\017\017\017\017\017\017\017\017\u008f\u010f\u008f" - + "\u018f\u010f\017\017\017\017\017\017\017\017\017" - + "\017\017\017\017\017\u010f\u010f\u010f\u008f\u020c\u0298" - + "\u0298\u0318\u039a\u0318\u0298\u0298\u0455\u04d6\u0298\u0519\u0598" - + "\u0614\u0598\u0698\u0709\u0789\u0809\u0889\u0909\u0989\u0a09\u0a89" - + "\u0b09\u0b89\u0598\u0298\u0c59\u0c99\u0c59\u0298\u0d01\u0d81\u0e01" - + "\u0e81\u0f01\u0f81\u1001\u1081\u1101\u1181\u1201\u1281\u1301\u1381" - + "\u1401\u1481\u1501\u1581\u1601\u1681\u1701\u1781\u1801\u1881\u1901" - + "\u1981\u0455\u0298\u04d6\u1a1b\u1a97\u0298\u0298\u0298\u0c99\u0455" - + "\u04d6\u3e80\u0298\u0298\u0298\u0298\u0298\u0298\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u282c\u0298\u039a\u039a\u039a\u039a\u289c" - + "\u289c\u1a1b\u289c\u2902\u29dd\u0c99\u2a14\u289c\u1a1b\u2a9c\u0519" - + "\u2b0b\u2b8b\u1a1b\u2c02\u289c\u0298\u1a1b\u2c8b\u2902\u2d5e\u2d8b" - + "\u2d8b\u2d8b\u0298\u0298\u0519\u0614\u0c99\u0c99\u0c99\u3e80\u0298" - + "\u039a\u0318\u0298\u3e80\u3e80\u3e80\u3e80\u5405\u5405\u5405\u3e80" - + "\u5405\u3e80\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u5405\u5405\u3e80\u3e80\u3e80\u4606\u4606\u4606\u4606" - + "\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606" - + "\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606" - + "\u4606\u4606\u4606\u4606\u4606\u4606\u3e80\u501c\u501c\u4f81\u4f81" - + "\u4f81\u4f81\u4f81\u4f81\u4f81\u4f81\u4f81\u4f81\u4f81\u4f81\u4f81" - + "\u4f81\u4f81\u4f81\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01" - + "\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01" - + "\u2e01\u2e01\u2e01\u2e01\u0c99\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01" - + "\u2e01\u2e82\u2e82\u2e82\u4902\u4902\u2e82\u2e82\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u2e82\u2e82" - + "\u2e82\u2e82\u2e82\u3e80\u3e80\u3e80\u3e80\u3e80\u5305\u4606\u5305" - + "\u5305\u3e80\u5305\u5305\u3e80\u5305\u5305\u5305\u5305\u5305\u5305" - + "\u5305\u5305\u5305\u5305\u5405\u5405\u5405\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u5398\u5405\u4606\u4606\u4606\u4606\u4606\u4606\u4606" - + "\u5087\u5087\u4606\u5087\u5087\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u2d8b\u2d8b\u2d8b\u2d8b\u2d8b\u2d8b\u2d8b" - + "\u2d8b\u2d8b\u2d8b\u2d8b\u2d8b\u840b\u3082\u3001\u3082\u3001\u3082" - + "\u3001\u3082\u3001\u3082\u2e82\u3001\u3082\u3001\u3082\u3001\u3082" - + "\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001" - + "\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082" - + "\u3001\u3082\u3001\u3082\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u5c09" - + "\u5c89\u5d09\u5d89\u5e09\u5e89\u5f09\u5f89\u6009\u6089\u4606\u4606" - + "\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u1a1b\u1a1b\u4701\u0298\u4781\u4781\u4781\u3e80" - + "\u4801\u3e80\u4881\u4881\u4902\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01" - + "\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2f02" - + "\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02" - + "\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02" - + "\u0c99\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f82\u2f02\u2f02" - + "\u4a82\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u4b02" - + "\u4b82\u4b82\u3e80\u4c02\u4c82\u4d01\u4d01\u4d01\u4d82\u4e02\u2902" - + "\u3e80\u3e80\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001" - + "\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u2e82\u3b81\u3c03\u3c82" - + "\u3001\u3082\u3d81\u3e01\u3001\u3082\u3001\u3082\u3001\u3082\u3001" - + "\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3101\u3182" - + "\u3001\u3082\u3001\u3082\u3001\u3082\u2902\u3001\u3082\u3001\u3082" - + "\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001" - + "\u3082\u4e82\u4f02\u3d02\u2902\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u5b10\u5b10\u5b10\u5b10\u5b10" - + "\u5b10\u7f0b\u3e80\u3e80\u3e80\u7f8b\u800b\u808b\u810b\u818b\u820b" - + "\u0519\u0519\u0c99\u0455\u04d6\u2902\u3301\u3001\u3082\u3001\u3082" - + "\u3381\u3001\u3082\u3401\u3401\u3001\u3082\u2902\u3481\u3501\u3581" - + "\u3001\u3082\u3401\u3601\u3682\u3701\u3781\u3001\u3082\u2902\u2902" - + "\u3701\u3801\u2902\u3881\u3a85\u3a85\u3a85\u3a85\u3b81\u3c03\u3c82" - + "\u3b81\u3c03\u3c82\u3b81\u3c03\u3c82\u3001\u3082\u3001\u3082\u3001" - + "\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082" - + "\u3d02\u3001\u3082\u501c\u4606\u4606\u4606\u4606\u3e80\u5087\u5087" - + "\u3e80\u3e80\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001" - + "\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082" - + "\u3001\u3082\u3001\u3082\u3201\u3001\u3082\u3001\u3082\u3001\u3082" - + "\u3282\u3001\u3082\u3001\u3082\u3001\u3082\u3901\u3001\u3082\u3901" - + "\u2902\u2902\u3001\u3082\u3901\u3001\u3082\u3981\u3981\u3001\u3082" - + "\u3001\u3082\u3a01\u3001\u3082\u2902\u3a85\u3001\u3082\u2902\u3b02" - + "\u4d01\u3001\u3082\u3001\u3082\u3e80\u3e80\u3001\u3082\u3e80\u3e80" - + "\u3001\u3082\u3e80\u3e80\u3e80\u3001\u3082\u3001\u3082\u3001\u3082" - + "\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001" - + "\u3082\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u0598\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u5398\u3e80\u3e80\u3e80\u5398" - + "\u5398\u5398\u5398\u5398\u5398\u5398\u5398\u5398\u5398\u5398\u5398" - + "\u5398\u5398\u3e80\u5b10\u5405\u4606\u5405\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u3e80\u3e80\u5b10\u4d01\u4d01\u4d01\u4d01\u4d01\u4d01" - + "\u4d01\u4d01\u4d01\u4d01\u4d01\u4d01\u4d01\u4d01\u4d01\u4d01\u4d01" - + "\u4d01\u4d01\u4d01\u4d01\u4d01\u4d01\u4d01\u4d01\u4d01\u4d01\u4d01" - + "\u4d01\u4d01\u4d01\u4d01\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u5c09\u5c89\u5d09\u5d89\u5e09\u5e89" - + "\u5f09\u5f89\u6009\u6089\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u2902\u2902\u2902\u3f02\u3f82\u2902\u4002" - + "\u4002\u2902\u4082\u2902\u4102\u2902\u2902\u2902\u2902\u4002\u2902" - + "\u2902\u4182\u2902\u2902\u2902\u2902\u4202\u4282\u2902\u2902\u2902" - + "\u2902\u2902\u4282\u2902\u2902\u4302\u2902\u2902\u4382\u2902\u2902" - + "\u2902\u2902\u2902\u2902\u2902\u2902\u2902\u2902\u4402\u2902\u2902" - + "\u4402\u2902\u2902\u2902\u2902\u4402\u2902\u4482\u4482\u2902\u2902" - + "\u2902\u2902\u2902\u2902\u4502\u2902\u2902\u2902\u2902\u2902\u2902" - + "\u2902\u2902\u2902\u2902\u2902\u2902\u2902\u2902\u3e80\u3e80\u4584" - + "\u4584\u4584\u4584\u4584\u4584\u4584\u4584\u4584\u1a1b\u1a1b\u4584" - + "\u4584\u4584\u4584\u4584\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b\u1a1b" - + "\u1a1b\u1a1b\u4584\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u5101\u5101" - + "\u5101\u5101\u5101\u5101\u5101\u5101\u5101\u5101\u5101\u5101\u5101" - + "\u5101\u5101\u5101\u5101\u5101\u5101\u5101\u5101\u5101\u5101\u3e80" - + "\u3e80\u4584\u5198\u5198\u5198\u5198\u5198\u5198\u2e01\u2e01\u3e80" - + "\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u2e01\u4982\u4a02" - + "\u4a02\u4a02\u4902\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02" - + "\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u2f02\u4f02\u4f02\u4f02" - + "\u4f02\u4f02\u4f02\u4f02\u4f02\u4f02\u4f02\u4f02\u4f02\u4f02\u4f02" - + "\u4f02\u4f02\u4606\u4606\u4606\u4606\u4606\u5198\u4606\u4606\u3a85" - + "\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80\u3e80\u4606\u4606\u4606\u4606" - + "\u4606\u4606\u4606\u4606\u3e80\u4606\u4606\u4606\u4606\u4606\u4606" - + "\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606" - + "\u4606\u4606\u4606\u4606\u4606\u4606\u3e80\u4606\u4606\u4606\u5298" - + "\u4606\u4606\u5298\u4606\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u5305\u5305\u5305\u5305\u5305\u5305\u5305" - + "\u5305\u5305\u5305\u5305\u5305\u5305\u5305\u5305\u5305\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u5305\u5305\u5305\u5298\u5298\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u5c89\u5d09\u5d89" - + "\u5e09\u5e89\u5f09\u5f89\u6009\u6089\u640b\u648b\u650b\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u4606\u5b88\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80" - + "\u3e80\u3a85\u3a85\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80" - + "\u3e80\u3a85\u3a85\u3e80\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85\u3e80" - + "\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u4606\u4606" - + "\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606" - + "\u4606\u5b88\u5b88\u5b88\u5b88\u3e80\u4606\u4606\u4606\u3e80\u4606" - + "\u4606\u4606\u4606\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u4606" - + "\u4606\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u4606" - + "\u5b88\u5b88\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3e80\u3e80\u3a85\u3a85\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80" - + "\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3e80\u3e80\u3e80\u3e80\u5b88\u5b88\u3e80\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80\u3a85\u3a85\u3a85" - + "\u3e80\u3e80\u3e80\u3e80\u5c09\u5c89\u5d09\u5d89\u5e09\u5e89\u5f09" - + "\u5f89\u6009\u6089\u501c\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u5509\u5589\u5609" - + "\u5689\u5709\u5789\u5809\u5889\u5909\u5989\u0318\u5a18\u5a18\u5398" - + "\u3e80\u3e80\u4606\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u3e80\u3e80\u5405" - + "\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u5405\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u5405\u5405\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u5405\u5405\u6615\u6696\u5484\u5405\u5405\u5405\u5405" - + "\u5405\u5405\u5405\u5405\u5405\u5405\u4606\u4606\u4606\u4606\u4606" - + "\u4606\u4606\u4606\u4606\u4606\u4606\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u5b88\u5b88\u5198\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u4606\u4606\u5b88" - + "\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85\u3e80" - + "\u3a85\u3a85\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u5198\u5198\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u4606\u4606\u4606\u4606\u4606\u5484\u5484\u4606" - + "\u4606\u289c\u4606\u4606\u4606\u4606\u3e80\u3e80\u0709\u0789\u0809" - + "\u0889\u0909\u0989\u0a09\u0a89\u0b09\u0b89\u5405\u5405\u5405\u5a9c" - + "\u5a9c\u3e80\u3a85\u3a85\u3a85\u3e80\u3a85\u3e80\u3a85\u3e80\u3e80" - + "\u3a85\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85\u4606\u3a85\u3a85\u4606" - + "\u4606\u4606\u4606\u4606\u4606\u3e80\u4606\u4606\u3a85\u3e80\u3e80" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80\u3e80\u4606\u4606\u5b88" - + "\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3e80\u3e80\u4606\u3a85\u5b88\u5b88\u5b88\u5b88\u5b88\u3e80\u4606" - + "\u5b88\u5b88\u3e80\u5b88\u5b88\u4606\u4606\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u5b88\u5b88\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3a85\u3e80\u5198\u5198\u5198\u5198\u5198\u5198\u5198\u5198" - + "\u5c89\u5d09\u5d89\u5e09\u5e89\u5f09\u5f89\u6009\u6089\u640b\u670b" - + "\u678b\u680b\u688b\u690b\u698b\u6a0b\u6a8b\u648b\u6b0b\u3e80\u3e80" - + "\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85\u3a85\u3e80" - + "\u3e80\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80\u4606\u3a85\u5b88\u4606" - + "\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u5b88\u5b88\u5b88\u5b88" - + "\u4606\u3e80\u3e80\u3a85\u4606\u4606\u4606\u4606\u3e80\u3e80\u3e80" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85\u3e80\u3e80\u3e80" - + "\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80\u4606\u3e80\u5b88\u5b88\u5b88" - + "\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85" - + "\u3a85\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85\u3e80\u3a85" - + "\u3a85\u3a85\u3a85\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3e80\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u4606\u3a85\u3a85\u4606\u4606\u4606" - + "\u4606\u4606\u4606\u4606\u3e80\u3e80\u3e80\u3e80\u039a\u039a\u039a" - + "\u039a\u039a\u039a\u039a\u039a\u039a\u039a\u039a\u039a\u039a\u039a" - + "\u039a\u039a\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3a85\u3a85\u4606\u4606" - + "\u5198\u5198\u5c09\u5c89\u5d09\u5d89\u5e09\u5e89\u5f09\u5f89\u6009" - + "\u6089\u5198\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u0298\u0298\u0318\u039a\u0318" - + "\u0298\u0298\u6615\u6696\u0298\u0519\u0598\u0614\u0598\u0698\u0709" - + "\u0789\u0809\u0889\u0909\u0989\u0a09\u0a89\u0b09\u0b89\u0598\u0298" - + "\u0c99\u0c99\u0c99\u0298\u0298\u0298\u0298\u0298\u0298\u2a14\u0298" - + "\u0298\u0298\u0298\u5b10\u5b10\u5b10\u5b10\u3e80\u5c09\u5c89\u5d09" - + "\u5d89\u5e09\u5e89\u5f09\u5f89\u6009\u6089\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80\u3e80\u5b88" - + "\u4606\u4606\u4606\u4606\u3e80\u3e80\u5b88\u5b88\u3e80\u3e80\u5b88" - + "\u5b88\u4606\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u5b88\u3e80\u3e80\u3e80\u3e80\u3a85\u3a85\u3e80\u3a85\u3e80\u3e80" - + "\u3a85\u3a85\u3e80\u3a85\u3e80\u3e80\u3a85\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3e80\u3a85\u3a85\u3e80\u3a85\u3a85\u3e80\u3a85\u3a85" - + "\u3e80\u3e80\u4606\u3e80\u5b88\u5b88\u4606\u4606\u3e80\u3e80\u3e80" - + "\u3e80\u4606\u4606\u3e80\u3e80\u4606\u4606\u4606\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3a85\u3a85\u3a85" - + "\u3a85\u3e80\u3a85\u3e80\u3a85\u3a85\u4606\u4606\u3e80\u3e80\u5c09" - + "\u5c89\u5d09\u5d89\u5e09\u5e89\u5f09\u5f89\u6009\u6089\u3a85\u3a85" - + "\u039a\u039a\u610b\u618b\u620b\u628b\u630b\u638b\u501c\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3a85" - + "\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80\u4606\u3a85" - + "\u5b88\u5b88\u4606\u4606\u4606\u4606\u4606\u3e80\u4606\u4606\u5b88" - + "\u3e80\u5b88\u5b88\u4606\u3e80\u3e80\u3a85\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u5c09\u5c89\u5d09\u5d89\u5e09\u5e89\u5f09\u5f89\u6009\u6089\u630b" - + "\u630b\u630b\u630b\u630b\u630b\u630b\u630b\u630b\u630b\u501c\u4606" - + "\u501c\u4606\u501c\u4606\u6615\u6696\u6615\u6696\u5b88\u5b88\u4606" - + "\u4606\u4606\u3e80\u3e80\u3e80\u5b88\u5b88\u3e80\u3e80\u5b88\u5b88" - + "\u4606\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u4606\u5b88" - + "\u3e80\u3e80\u3e80\u3e80\u3a85\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3e80\u3a85\u3a85\u3e80\u5b88\u4606\u4606\u4606\u4606\u5b88" - + "\u4606\u3e80\u3e80\u3e80\u4606\u4606\u5b88\u4606\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u5b88\u5b88\u5b88\u4606\u4606\u4606\u4606\u4606\u4606\u4606" - + "\u5b88\u5b88\u3e80\u3e80\u3e80\u5b88\u5b88\u5b88\u3e80\u5b88\u5b88" - + "\u5b88\u4606\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u5b88\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3e80\u4584\u3e80\u4606\u4606\u4606\u4606\u4606" - + "\u4606\u3e80\u3e80\u5c09\u5c89\u5d09\u5d89\u5e09\u5e89\u5f09\u5f89" - + "\u6009\u6089\u3e80\u3e80\u3a85\u3a85\u3e80\u3e80\u3e80\u3e80\u5c09" - + "\u5c89\u5d09\u5d89\u5e09\u5e89\u5f09\u5f89\u6009\u6089\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606" - + "\u4606\u4606\u4606\u4606\u4606\u5087\u5087\u5087\u5b88\u4606\u4606" - + "\u4606\u3e80\u3e80\u5b88\u5b88\u5b88\u3e80\u5b88\u5b88\u5b88\u4606" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u5b88\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80\u4606\u3e80\u3e80\u3e80\u3e80" - + "\u5b88\u5b88\u5b88\u4606\u4606\u4606\u3e80\u4606\u3e80\u5b88\u5b88" - + "\u5b88\u5b88\u5b88\u5b88\u5b88\u5b88\u4606\u5b88\u5b88\u4606\u4606" - + "\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u4606\u5198\u5198" - + "\u5198\u5198\u5198\u5198\u5198\u039a\u5198\u3e80\u3e80\u3e80\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u4584\u4606\u4606\u4606\u4606\u4606" - + "\u4606\u4606\u4606\u5198\u5c09\u5c89\u5d09\u5d89\u5e09\u5e89\u5f09" - + "\u5f89\u6009\u6089\u5198\u5198\u3e80\u3e80\u3e80\u3e80\u3a85\u501c" - + "\u501c\u501c\u5198\u5198\u5198\u5198\u5198\u5198\u5198\u5198\u65b8" - + "\u5198\u5198\u5198\u5198\u5198\u5198\u501c\u501c\u501c\u501c\u501c" - + "\u4606\u4606\u501c\u501c\u501c\u501c\u501c\u501c\u4606\u501c\u501c" - + "\u501c\u501c\u501c\u501c\u3e80\u3e80\u501c\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u3e80\u3e80\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u1a97\u4584\u4584\u4584" - + "\u3e80\u5c09\u5c89\u5d09\u5d89\u5e09\u5e89\u5f09\u5f89\u6009\u6089" - + "\u5198\u5198\u5198\u5198\u5198\u5198\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u5b88\u5b88\u4606\u4606\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u020c\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u6615\u6696\u3e80\u3e80\u3e80\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u5198" - + "\u5198\u5198\u6b8b\u6c0b\u6c8b\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u4606\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3001\u3082\u3001" - + "\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082" - + "\u3001\u3082\u3001\u3082\u3001\u3082\u3001\u3082\u2e82\u2e82\u2e82" - + "\u2e82\u2e82\u6d02\u3e80\u3e80\u3e80\u3e80\u6d82\u6d82\u6d82\u6d82" - + "\u6d82\u6d82\u6d82\u6d82\u6e01\u6e01\u6e01\u6e01\u6e01\u6e01\u6e01" - + "\u6e01\u6d82\u6d82\u6d82\u6d82\u6d82\u6d82\u6d82\u6d82\u6e01\u6e01" - + "\u6e01\u6e01\u6e01\u6e01\u6e01\u6e01\u6d82\u6d82\u6d82\u6d82\u6d82" - + "\u6d82\u3e80\u3e80\u6e01\u6e01\u6e01\u6e01\u6e01\u6e01\u3e80\u3e80" - + "\u2e82\u6d82\u4902\u6d82\u4902\u6d82\u4902\u6d82\u3e80\u6e01\u3e80" - + "\u6e01\u3e80\u6e01\u3e80\u6e01\u6d82\u6d82\u6d82\u6d82\u6d82\u6d82" - + "\u6d82\u6d82\u6e01\u6e01\u6e01\u6e01\u6e01\u6e01\u6e01\u6e01\u6e82" - + "\u6e82\u6f02\u6f02\u6f02\u6f02\u6f82\u6f82\u7002\u7002\u7082\u7082" - + "\u7102\u7102\u3e80\u3e80\u7182\u7182\u7182\u7182\u7182\u7182\u7182" - + "\u7182\u7203\u7203\u7203\u7203\u7203\u7203\u7203\u7203\u7182\u7182" - + "\u7182\u7182\u7182\u7182\u7182\u7182\u7203\u7203\u7203\u7203\u7203" - + "\u7203\u7203\u7203\u6d82\u6d82\u2e82\u7282\u2e82\u3e80\u2e82\u4902" - + "\u6e01\u6e01\u7301\u7301\u7383\u1a1b\u7402\u1a1b\u1b02\u1b82\u1c02" - + "\u1c82\u1d02\u1d82\u1e02\u1e82\u1f02\u1f82\u2002\u2082\u2102\u2182" - + "\u2202\u2282\u2302\u2382\u2402\u2482\u2502\u2582\u2602\u2682\u2702" - + "\u2782\u6615\u0c99\u6696\u0c99\u3e80\u6d82\u6d82\u4902\u4902\u2e82" - + "\u7582\u2e82\u4902\u6e01\u6e01\u7601\u7601\u7681\u1a1b\u1a1b\u1a1b" - + "\u3e80\u3e80\u2e82\u7282\u2e82\u3e80\u2e82\u4902\u7701\u7701\u7781" - + "\u7781\u7383\u1a1b\u1a1b\u3e80\u020c\u020c\u020c\u020c\u020c\u020c" - + "\u020c\u782c\u020c\u020c\u020c\u788c\u5b10\u5b10\u7910\u7990\u2a14" - + "\u7a34\u2a14\u2a14\u2a14\u2a14\u0298\u0298\u7a9d\u7b1e\u6615\u7a9d" - + "\u7a9d\u7b1e\u6615\u7a9d\u0298\u0298\u0298\u0298\u0298\u0298\u0298" - + "\u0298\u7b8d\u7c0e\u7c90\u7d10\u7d90\u7e10\u7e90\u782c\u0318\u0318" - + "\u0318\u0318\u0318\u0298\u0298\u0298\u0298\u29dd\u2d5e\u0298\u0298" - + "\u0298\u0298\u1a97\u7f0b\u2c8b\u2b0b\u2b8b\u7f8b\u800b\u808b\u810b" - + "\u818b\u820b\u0519\u0519\u0c99\u0455\u04d6\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u3e80\u3e80\u3e80\u3e80\u3e80\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u4d01\u289c\u289c\u289c\u289c" - + "\u4d01\u289c\u289c\u2902\u4d01\u4d01\u4d01\u2902\u2902\u4d01\u4d01" - + "\u4d01\u2902\u289c\u4d01\u289c\u289c\u289c\u4d01\u4d01\u4d01\u4d01" - + "\u4d01\u289c\u289c\ua20a\ua28a\ua30a\ua38a\ua40a\ua48a\ua50a\ua58a" - + "\ua60a\u4606\u4606\u4606\u4606\u4606\u4606\u2a14\u4584\u4584\u4584" - + "\u4584\u4584\u289c\u289c\ua68a\ua70a\ua78a\u3e80\u3e80\u3e80\u289c" - + "\u289c\u289c\u289c\u3e80\u289c\u289c\u289c\u289c\u3e80\u3e80\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u0c99\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u0c99\u0c99\u289c\u289c\u0c99\u289c\u0c99" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u0c99\u289c\u289c\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u948a" - + "\u950a\u958a\u960a\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u0c99\u0c99\u0c99\u0c99\u0c99\u289c\u289c" - + "\u289c\u289c\u289c\u0c99\u0c99\u289c\u289c\u289c\u289c\u4d01\u289c" - + "\u8281\u289c\u4d01\u289c\u8301\u8381\u4d01\u4d01\u2a9c\u2902\u4d01" - + "\u4d01\u289c\u4d01\u2902\u3a85\u3a85\u3a85\u3a85\u2902\u289c\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u848a\u850a\u858a\u860a\u868a\u870a\u878a" - + "\u880a\u888a\u890a\u898a\u8a0a\u8a8a\u8b0a\u8b8a\u8c0a\u8c8a\u8d0a" - + "\u8d8a\u8e0a\u8e8a\u8f0a\u8f8a\u900a\u908a\u910a\u918a\u920a\u928a" - + "\u930a\u938a\u940a\u0c99\u0c99\u0c59\u0c59\u0c99\u0c99\u0c59\u0c59" - + "\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59" - + "\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c99\u0c99\u0c99\u0c99\u0c99" - + "\u0c59\u0c59\u0c59\u0c59\u0c99\u0c99\u0c99\u0c99\u0c99\u0c99\u0c99" - + "\u0c99\u0c99\u0c59\u0c59\u0c59\u0c59\u0c59\u0c99\u0c99\u0c59\u0c59" - + "\u0c99\u0c99\u0c99\u0c99\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59" - + "\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c99\u0c99\u0c59\u0c59\u0c59" - + "\u0c59\u0c99\u0c99\u0c99\u0c99\u0c99\u0c59\u0c99\u0c99\u0c99\u0c99" - + "\u0c99\u0c99\u0c99\u289c\u289c\u0c99\u289c\u289c\u0c99\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u0c99\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u3e80\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u0c99\u0c59\u0c59\u0c59\u0c59\u0c99\u0c99\u0c99\u0c59\u0c59\u0c59" - + "\u0c59\u0c59\u0c59\u0c99\u0c99\u0c99\u0c59\u0519\u0519\u0c99\u0c59" - + "\u0c59\u0c99\u0c99\u0c99\u0c59\u0c59\u0c59\u0c59\u0c99\u0c59\u0c99" - + "\u0c59\u0c99\u0c99\u0c99\u0c99\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59" - + "\u0c59\u0c59\u0c59\u0c99\u0c99\u0c99\u0c99\u0c99\u0c59\u0c99\u0c59" - + "\u0c59\u0c59\u0c59\u0c59\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u0455\u04d6\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c" - + "\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c" - + "\u501c\u501c\u501c\u3e80\u3e80\u3e80\u3e80\u501c\u501c\u501c\u501c" - + "\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c" - + "\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u9c1c\u9c1c\u9c1c\u9c1c" - + "\u9c1c\u9c1c\u9c1c\u9c1c\u9c1c\u9c1c\u9c1c\u9c1c\u9c1c\u9c1c\u9c1c" - + "\u9c1c\u9c9c\u9c9c\u9c9c\u9c9c\u9c9c\u9c9c\u9c9c\u9c9c\u9c9c\u9c9c" - + "\u9c9c\u9c9c\u9c9c\u9c9c\u9c9c\u9c9c\u7f0b\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u0c59\u0c99\u0c59\u0c99\u0c59" - + "\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c99\u0c99\u0c59\u0c59" - + "\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59\u0c59" - + "\u0c59\u0c59\u0c59\u0c59\u0c59\u0c99\u0c99\u0c59\u0c59\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u039a\u039a\u0c99\u1a1b\u289c\u039a\u039a\u3e80\u289c\u0c99" - + "\u0c99\u0c99\u0c99\u289c\u289c\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u5b10\u5b10\u5b10\u289c\u289c\u3e80\u3e80" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u3e80\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u3e80\u289c" - + "\u3e80\u289c\u289c\u289c\u289c\u3e80\u3e80\u3e80\u289c\u3e80\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u840b\u9d0b" - + "\u9d8b\u9e0b\u9e8b\u9f0b\u9f8b\ua00b\ua08b\ua10b\u840b\u9d0b\u9d8b" - + "\u9e0b\u9e8b\u9f0b\u9f8b\ua00b\ua08b\ua10b\u289c\u3e80\u3e80\u3e80" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u0c59\u0c59\u0c59" - + "\u0c59\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c\u289c" - + "\u501c\u289c\u289c\u289c\u289c\u289c\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u630b\u630b\u630b\u630b\u630b\u630b\u630b\u630b\u630b\u630b\u501c" - + "\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c" - + "\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c" - + "\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u3e80\u3e80" - + "\u3e80\u501c\u610b\u618b\u620b\u628b\ua80b\ua88b\ua90b\ua98b\uaa0b" - + "\u640b\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c" - + "\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c" - + "\u501c\u501c\u501c\u501c\u501c\u501c\u289c\u3e80\u289c\u289c\u289c" - + "\u3e80\u289c\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u2c8b\u2b0b\u2b8b\u7f8b\u800b\u808b" - + "\u810b\u818b\u820b\u968b\u970b\u978b\u980b\u988b\u990b\u998b\u9a0b" - + "\u9a8b\u9b0b\u9b8b\u2c8b\u2b0b\u2b8b\u7f8b\u800b\u808b\u810b\u818b" - + "\u820b\u968b\u970b\u978b\u980b\u988b\u990b\u998b\u9a0b\u9a8b\u9b0b" - + "\u9b8b\u501c\u501c\u501c\u501c\u020c\u0298\u0298\u0298\u289c\u4584" - + "\u3a85\ua18a\u0455\u04d6\u0455\u04d6\u0455\u04d6\u0455\u04d6\u0455" - + "\u04d6\u289c\u289c\u0455\u04d6\u0455\u04d6\u0455\u04d6\u0455\u04d6" - + "\u2a14\u6615\u6696\u6696\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3e80\u3e80\u3e80\u3e80\u4606\u4606\u1a1b\u1a1b" - + "\u4584\u4584\u3e80\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85" - + "\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3a85\u3e80\u501c\u501c\u630b" - + "\u630b\u630b\u630b\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c" - + "\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u501c\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93" - + "\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93" - + "\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93\uaa93" - + "\uaa93\uaa93\uaa93\uab12\uab12\uab12\uab12\uab12\uab12\uab12\uab12" - + "\uab12\uab12\uab12\uab12\uab12\uab12\uab12\uab12\uab12\uab12\uab12" - + "\uab12\uab12\uab12\uab12\uab12\uab12\uab12\uab12\uab12\uab12\uab12" - + "\uab12\uab12\u5305\u5305\u5305\u5305\u5305\u5305\u5305\u5305\u5305" - + "\u0519\u5305\u5305\u5305\u5305\u5305\u5305\u5305\u5305\u5305\u5305" - + "\u5305\u5305\u5305\u3e80\u5305\u5305\u5305\u5305\u5305\u3e80\u5305" - + "\u3e80\u4606\u4606\u4606\u4606\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80" - + "\u3e80\u3e80\u3e80\u3e80\u3e80\u3e80\u0298\u2a14\u2a14\u1a97\u1a97" - + "\u6615\u6696\u6615\u6696\u6615\u6696\u6615\u6696\u6615\u6696\u6615" - + "\u6696\u3e80\u3e80\u3e80\u3e80\u0298\u0298\u0298\u0298\u1a97\u1a97" - + "\u1a97\u0598\u0298\u0598\u3e80\u0298\u0598\u0298\u0298\u2a14\u6615" - + "\u6696\u6615\u6696\u6615\u6696\u0318\u0298\u0d01\u0d81\u0e01\u0e81" - + "\u0f01\u0f81\u1001\u1081\u1101\u1181\u1201\u1281\u1301\u1381\u1401" - + "\u1481\u1501\u1581\u1601\u1681\u1701\u1781\u1801\u1881\u1901\u1981" - + "\u6615\u0298\u6696\u1a1b\u1a97"; - - /** - * This is the attribute table for computing the numeric value of a - * character. The value is -1 if Unicode does not define a value, -2 - * if the value is not a positive integer, otherwise it is the value. - * Note that this is a signed value, but stored as an unsigned char - * since this is a String literal. - */ - String NUM_VALUE - = "\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff" - + "\uffff\uffff\uffff\000\001\002\003\004\005\006\007" - + "\010\011\uffff\uffff\012\013\014\015\016\017\020" - + "\021\022\023\024\025\026\027\030\031\032\033" - + "\034\035\036\037 !\"#\uffff\uffff\012" - + "\013\014\015\016\017\020\021\022\023\024\025" - + "\026\027\030\031\032\033\034\035\036\037 " - + "!\"#\uffff\uffff\uffff\uffff\uffff\uffff\002\003" - + "\uffff\001\uffff\ufffe\uffff\uffff\uffff\uffff\uffff\uffff\uffff" - + "\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff" - + "\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff" - + "\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff" - + "\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff" - + "\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff" - + "\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff\uffff" - + "\uffff\uffff\uffff\uffff\uffff\000\001\002\003\004\005" - + "\006\007\010\011\uffff\uffff\uffff\uffff\000\001\002" - + "\003\004\005\006\007\010\011\001\002\003\004" - + "\uffff\020\012d\u03e8\uffff\uffff\uffff\024\036(" - + "2UPPER to determine their titlecase). The listing - * is a sorted sequence of character pairs; converting the first character - * of the pair to titlecase produces the second character. - */ - String TITLE - = "\u01c4\u01c5\u01c5\u01c5\u01c6\u01c5\u01c7\u01c8\u01c8\u01c8\u01c9" - + "\u01c8\u01ca\u01cb\u01cb\u01cb\u01cc\u01cb\u01f1\u01f2\u01f2\u01f2" - + "\u01f3\u01f2"; - - /** - * This is a listing of characters with multi-character uppercase sequences. - * A character appears in this list exactly when it has a non-zero entry - * in the low-order 2-bit field of DIRECTION. The listing is a sorted - * sequence of pairs (hence a binary search on the even elements is an - * efficient way to lookup a character). The first element of a pair is the - * character with the expansion, and the second is the index into - * UPPER_EXPAND where the expansion begins. Use the 2-bit field of - * DIRECTION to determine where the expansion ends. - */ - String UPPER_SPECIAL - = "\u00df\000\u0149\002\u01f0\004\u0390\006\u03b0\011" - + "\u0587\014\u1e96\016\u1e97\020\u1e98\022\u1e99\024" - + "\u1e9a\026\u1f50\030\u1f52\032\u1f54\035\u1f56 " - + "\u1f80#\u1f81%\u1f82'\u1f83)\u1f84+" - + "\u1f85-\u1f86/\u1f871\u1f883\u1f895" - + "\u1f8a7\u1f8b9\u1f8c;\u1f8d=\u1f8e?" - + "\u1f8fA\u1f90C\u1f91E\u1f92G\u1f93I" - + "\u1f94K\u1f95M\u1f96O\u1f97Q\u1f98S" - + "\u1f99U\u1f9aW\u1f9bY\u1f9c[\u1f9d]" - + "\u1f9e_\u1f9fa\u1fa0c\u1fa1e\u1fa2g" - + "\u1fa3i\u1fa4k\u1fa5m\u1fa6o\u1fa7q" - + "\u1fa8s\u1fa9u\u1faaw\u1faby\u1fac{" - + "\u1fad}\u1fae\u007f\u1faf\u0081\u1fb2\u0083\u1fb3\u0085" - + "\u1fb4\u0087\u1fb6\u0089\u1fb7\u008b\u1fbc\u008e\u1fc2\u0090" - + "\u1fc3\u0092\u1fc4\u0094\u1fc6\u0096\u1fc7\u0098\u1fcc\u009b" - + "\u1fd2\u009d\u1fd3\u00a0\u1fd6\u00a3\u1fd7\u00a5\u1fe2\u00a8" - + "\u1fe3\u00ab\u1fe4\u00ae\u1fe6\u00b0\u1fe7\u00b2\u1ff2\u00b5" - + "\u1ff3\u00b7\u1ff4\u00b9\u1ff6\u00bb\u1ff7\u00bd\u1ffc\u00c0" - + "\ufb00\u00c2\ufb01\u00c4\ufb02\u00c6\ufb03\u00c8\ufb04\u00cb" - + "\ufb05\u00ce\ufb06\u00d0\ufb13\u00d2\ufb14\u00d4\ufb15\u00d6" - + "\ufb16\u00d8\ufb17\u00da"; - - /** - * This is the listing of special case multi-character uppercase sequences. - * Characters listed in UPPER_SPECIAL index into this table to find their - * uppercase expansion. Remember that you must also perform special-casing - * on two single-character sequences in the Turkish locale, which are not - * covered here in CharData. - */ - String UPPER_EXPAND - = "SS\u02bcNJ\u030c\u0399\u0308\u0301\u03a5\u0308" - + "\u0301\u0535\u0552H\u0331T\u0308W\u030aY\u030a" - + "A\u02be\u03a5\u0313\u03a5\u0313\u0300\u03a5\u0313\u0301\u03a5" - + "\u0313\u0342\u1f08\u0399\u1f09\u0399\u1f0a\u0399\u1f0b\u0399\u1f0c" - + "\u0399\u1f0d\u0399\u1f0e\u0399\u1f0f\u0399\u1f08\u0399\u1f09\u0399" - + "\u1f0a\u0399\u1f0b\u0399\u1f0c\u0399\u1f0d\u0399\u1f0e\u0399\u1f0f" - + "\u0399\u1f28\u0399\u1f29\u0399\u1f2a\u0399\u1f2b\u0399\u1f2c\u0399" - + "\u1f2d\u0399\u1f2e\u0399\u1f2f\u0399\u1f28\u0399\u1f29\u0399\u1f2a" - + "\u0399\u1f2b\u0399\u1f2c\u0399\u1f2d\u0399\u1f2e\u0399\u1f2f\u0399" - + "\u1f68\u0399\u1f69\u0399\u1f6a\u0399\u1f6b\u0399\u1f6c\u0399\u1f6d" - + "\u0399\u1f6e\u0399\u1f6f\u0399\u1f68\u0399\u1f69\u0399\u1f6a\u0399" - + "\u1f6b\u0399\u1f6c\u0399\u1f6d\u0399\u1f6e\u0399\u1f6f\u0399\u1fba" - + "\u0399\u0391\u0399\u0386\u0399\u0391\u0342\u0391\u0342\u0399\u0391" - + "\u0399\u1fca\u0399\u0397\u0399\u0389\u0399\u0397\u0342\u0397\u0342" - + "\u0399\u0397\u0399\u0399\u0308\u0300\u0399\u0308\u0301\u0399\u0342" - + "\u0399\u0308\u0342\u03a5\u0308\u0300\u03a5\u0308\u0301\u03a1\u0313" - + "\u03a5\u0342\u03a5\u0308\u0342\u1ffa\u0399\u03a9\u0399\u038f\u0399" - + "\u03a9\u0342\u03a9\u0342\u0399\u03a9\u0399FFFI" - + "FLFFIFFLSTS" - + "T\u0544\u0546\u0544\u0535\u0544\u053b\u054e\u0546\u0544\u053d"; -} diff --git a/libjava/gnu/java/lang/ClassHelper.java b/libjava/gnu/java/lang/ClassHelper.java deleted file mode 100644 index 14c8a39c478..00000000000 --- a/libjava/gnu/java/lang/ClassHelper.java +++ /dev/null @@ -1,177 +0,0 @@ -/* ClassHelper.java -- Utility methods to augment java.lang.Class - Copyright (C) 1998, 2002 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.java.lang; - -import java.lang.reflect.Field; -import java.lang.reflect.Method; -import java.util.Arrays; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; -import java.util.Map; -import java.util.Set; - -/** - * ClassHelper has various methods that ought to have been in Class. - * - * @author John Keiser - * @author Eric Blake (ebb9@email.byu.edu) - */ -public class ClassHelper -{ - /** - * Strip the package part from the class name. - * - * @param clazz the class to get the truncated name from - * @return the truncated class name - */ - public static String getTruncatedClassName(Class clazz) - { - return getTruncatedName(clazz.getName()); - } - - /** - * Strip the package part from the class name, or the class part from - * the method or field name. - * - * @param name the name to truncate - * @return the truncated name - */ - public static String getTruncatedName(String name) - { - int lastInd = name.lastIndexOf('.'); - if (lastInd == -1) - return name; - return name.substring(lastInd + 1); - } - - /** Cache of methods found in getAllMethods(). */ - private static Map allMethods = new HashMap(); - - /** - * Get all the methods, public, private and otherwise, from the class, - * getting them from the most recent class to find them. This may not - * be quite the correct approach, as this includes methods that are not - * inherited or accessible from clazz, so beware. - * - * @param clazz the class to start at - * @return all methods declared or inherited in clazz - */ - public static Method[] getAllMethods(Class clazz) - { - Method[] retval = (Method[]) allMethods.get(clazz); - if (retval == null) - { - Set methods = new HashSet(); - Class c = clazz; - while (c != null) - { - Method[] currentMethods = c.getDeclaredMethods(); - loop: - for (int i = 0; i < currentMethods.length; i++) - { - Method current = currentMethods[i]; - int size = methods.size(); - Iterator iter = methods.iterator(); - while (--size >= 0) - { - Method override = (Method) iter.next(); - if (current.getName().equals(override.getName()) - && Arrays.equals(current.getParameterTypes(), - override.getParameterTypes()) - && current.getReturnType() == override.getReturnType()) - continue loop; - } - methods.add(current); - } - c = c.getSuperclass(); - } - retval = new Method[methods.size()]; - methods.toArray(retval); - allMethods.put(clazz, retval); - } - return retval; - } - - /** Cache of fields found in getAllFields(). */ - private static Map allFields = new HashMap(); - - /** - * Get all the fields, public, private and otherwise, from the class, - * getting them from the most recent class to find them. This may not - * be quite the correct approach, as this includes fields that are not - * inherited or accessible from clazz, so beware. - * - * @param clazz the class to start at - * @return all fields declared or inherited in clazz - */ - public static Field[] getAllFields(Class clazz) - { - Field[] retval = (Field[]) allFields.get(clazz); - if (retval == null) - { - Set fields = new HashSet(); - Class c = clazz; - while (c != null) - { - Field[] currentFields = c.getDeclaredFields(); - loop: - for (int i = 0; i < currentFields.length; i++) - { - Field current = currentFields[i]; - int size = fields.size(); - Iterator iter = fields.iterator(); - while (--size >= 0) - { - Field override = (Field) iter.next(); - if (current.getName().equals(override.getName()) - && current.getType() == override.getType()) - continue loop; - } - fields.add(current); - } - c = c.getSuperclass(); - } - retval = new Field[fields.size()]; - fields.toArray(retval); - allFields.put(clazz, retval); - } - return retval; - } -} diff --git a/libjava/gnu/java/lang/reflect/TypeSignature.java b/libjava/gnu/java/lang/reflect/TypeSignature.java deleted file mode 100644 index 842e5bdf0f0..00000000000 --- a/libjava/gnu/java/lang/reflect/TypeSignature.java +++ /dev/null @@ -1,288 +0,0 @@ -/* TypeSignature.java -- Class used to compute type signatures - Copyright (C) 1998, 2000, 2002 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.java.lang.reflect; - -import java.lang.reflect.Constructor; -import java.lang.reflect.Field; -import java.lang.reflect.Member; -import java.lang.reflect.Method; - -/** - * This class provides static methods that can be used to compute - * type-signatures of Classs or Members. - * More specific methods are also provided for computing the - * type-signature of Constructors and - * Methods. Methods are also provided to go in the - * reverse direction. - * - * @author Eric Blake (ebb9@email.byu.edu) - */ -public class TypeSignature -{ - /** - * Returns a String representing the type-encoding of a class. - * The .class file format has different encodings for classes, depending - * on whether it must be disambiguated from primitive types or not; hence - * the descriptor parameter to choose between them. If you are planning - * on decoding primitive types along with classes, then descriptor should - * be true for correct results. Type-encodings are computed as follows: - * - *

-   * boolean -> "Z"
-   * byte    -> "B"
-   * char    -> "C"
-   * double  -> "D"
-   * float   -> "F"
-   * int     -> "I"
-   * long    -> "J"
-   * short   -> "S"
-   * void    -> "V"
-   * arrays  -> "[" + descriptor format of component type
-   * object  -> class format: fully qualified name with '.' replaced by '/'
-   *            descriptor format: "L" + class format + ";"
-   * 
- * - * @param type the class name to encode - * @param descriptor true to return objects in descriptor format - * @return the class name, as it appears in bytecode constant pools - * @see #getClassForEncoding(String) - */ - public static String getEncodingOfClass(String type, boolean descriptor) - { - if (! descriptor || type.charAt(0) == '[') - return type.replace('.', '/'); - if (type.equals("boolean")) - return "Z"; - if (type.equals("byte")) - return "B"; - if (type.equals("short")) - return "S"; - if (type.equals("char")) - return "C"; - if (type.equals("int")) - return "I"; - if (type.equals("long")) - return "J"; - if (type.equals("float")) - return "F"; - if (type.equals("double")) - return "D"; - if (type.equals("void")) - return "V"; - return 'L' + type.replace('.', '/') + ';'; - } - - /** - * Gets the descriptor encoding for a class. - * - * @param clazz the class to encode - * @param descriptor true to return objects in descriptor format - * @return the class name, as it appears in bytecode constant pools - * @see #getEncodingOfClass(String, boolean) - */ - public static String getEncodingOfClass(Class clazz, boolean descriptor) - { - return getEncodingOfClass(clazz.getName(), descriptor); - } - - /** - * Gets the descriptor encoding for a class. - * - * @param clazz the class to encode - * @return the class name, as it appears in bytecode constant pools - * @see #getEncodingOfClass(String, boolean) - */ - public static String getEncodingOfClass(Class clazz) - { - return getEncodingOfClass(clazz.getName(), true); - } - - - /** - * This function is the inverse of getEncodingOfClass. This - * accepts both object and descriptor formats, but must know which style - * of string is being passed in (usually, descriptor should be true). In - * descriptor format, "I" is treated as int.class, in object format, it - * is treated as a class named I in the unnamed package. This method is - * strictly equivalent to {@link #getClassForEncoding(java.lang.String, boolean, java.lang.ClassLoader)} - * with a class loader equal to null. In that case, it - * uses the default class loader on the calling stack. - * - * @param type_code the class name to decode - * @param descriptor if the string is in descriptor format - * @return the corresponding Class object - * @throws ClassNotFoundException if the class cannot be located - * @see #getEncodingOfClass(Class, boolean) - */ - public static Class getClassForEncoding(String type_code, boolean descriptor) - throws ClassNotFoundException - { - return getClassForEncoding(type_code, descriptor, null); - } - - /** - * This function is the inverse of getEncodingOfClass. This - * accepts both object and descriptor formats, but must know which style - * of string is being passed in (usually, descriptor should be true). In - * descriptor format, "I" is treated as int.class, in object format, it - * is treated as a class named I in the unnamed package. - * - * @param type_code The class name to decode. - * @param descriptor If the string is in descriptor format. - * @param loader The class loader when resolving generic object name. If - * loader is null then it uses the default class loader on the - * calling stack. - * @return the corresponding Class object. - * @throws ClassNotFoundException if the class cannot be located. - * @see #getEncodingOfClass(Class, boolean) - * @see #getClassForEncoding(String, boolean) - */ - public static Class getClassForEncoding(String type_code, boolean descriptor, - ClassLoader loader) - throws ClassNotFoundException - { - if (descriptor) - { - switch (type_code.charAt(0)) - { - case 'B': - return byte.class; - case 'C': - return char.class; - case 'D': - return double.class; - case 'F': - return float.class; - case 'I': - return int.class; - case 'J': - return long.class; - case 'S': - return short.class; - case 'V': - return void.class; - case 'Z': - return boolean.class; - default: - throw new ClassNotFoundException("Invalid class name: " - + type_code); - case 'L': - type_code = type_code.substring(1, type_code.length() - 1); - // Fallthrough. - case '[': - } - } - return Class.forName(type_code.replace('/', '.'), true, loader); - } - - /** - * Gets the Class object for a type name. - * - * @param type_code the class name to decode - * @return the corresponding Class object - * @throws ClassNotFoundException if the class cannot be located - * @see #getClassForEncoding(String, boolean) - */ - public static Class getClassForEncoding(String type_code) - throws ClassNotFoundException - { - return getClassForEncoding(type_code, true); - } - - /** - * Returns a String representing the type-encoding of a - * method. The type-encoding of a method is: - * - * "(" + parameter type descriptors + ")" + return type descriptor - * - * XXX This could be faster if it were implemented natively. - * - * @param m the method to encode - * @return the encoding - */ - public static String getEncodingOfMethod(Method m) - { - Class[] paramTypes = m.getParameterTypes(); - StringBuffer buf = new StringBuffer().append('('); - for (int i = 0; i < paramTypes.length; i++) - buf.append(getEncodingOfClass(paramTypes[i].getName(), true)); - buf.append(')').append(getEncodingOfClass(m.getReturnType().getName(), - true)); - return buf.toString(); - } - - /** - * Returns a String representing the type-encoding of a - * constructor. The type-encoding of a method is: - * - * "(" + parameter type descriptors + ")V" - * - * XXX This could be faster if it were implemented natively. - * - * @param c the constructor to encode - * @return the encoding - */ - public static String getEncodingOfConstructor(Constructor c) - { - Class[] paramTypes = c.getParameterTypes(); - StringBuffer buf = new StringBuffer().append('('); - for (int i = 0; i < paramTypes.length; i++) - buf.append(getEncodingOfClass(paramTypes[i].getName(), true)); - buf.append(")V"); - return buf.toString(); - } - - /** - * Returns a String representing the type-encoding of a - * class member. This appropriately handles Constructors, Methods, and - * Fields. - * - * @param mem the member to encode - * @return the encoding - */ - public static String getEncodingOfMember(Member mem) - { - if (mem instanceof Constructor) - return getEncodingOfConstructor((Constructor) mem); - if (mem instanceof Method) - return getEncodingOfMethod((Method) mem); - else // Field - return getEncodingOfClass(((Field) mem).getType().getName(), true); - } -} // class TypeSignature diff --git a/libjava/gnu/java/math/MPN.java b/libjava/gnu/java/math/MPN.java deleted file mode 100644 index 05491bb7e84..00000000000 --- a/libjava/gnu/java/math/MPN.java +++ /dev/null @@ -1,771 +0,0 @@ -/* gnu.java.math.MPN - Copyright (C) 1999, 2000, 2001, 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. */ - -// Included from Kawa 1.6.62 with permission of the author, -// Per Bothner . - -package gnu.java.math; - -/** This contains various low-level routines for unsigned bigints. - * The interfaces match the mpn interfaces in gmp, - * so it should be easy to replace them with fast native functions - * that are trivial wrappers around the mpn_ functions in gmp - * (at least on platforms that use 32-bit "limbs"). - */ - -public class MPN -{ - /** Add x[0:size-1] and y, and write the size least - * significant words of the result to dest. - * Return carry, either 0 or 1. - * All values are unsigned. - * This is basically the same as gmp's mpn_add_1. */ - public static int add_1 (int[] dest, int[] x, int size, int y) - { - long carry = (long) y & 0xffffffffL; - for (int i = 0; i < size; i++) - { - carry += ((long) x[i] & 0xffffffffL); - dest[i] = (int) carry; - carry >>= 32; - } - return (int) carry; - } - - /** Add x[0:len-1] and y[0:len-1] and write the len least - * significant words of the result to dest[0:len-1]. - * All words are treated as unsigned. - * @return the carry, either 0 or 1 - * This function is basically the same as gmp's mpn_add_n. - */ - public static int add_n (int dest[], int[] x, int[] y, int len) - { - long carry = 0; - for (int i = 0; i < len; i++) - { - carry += ((long) x[i] & 0xffffffffL) - + ((long) y[i] & 0xffffffffL); - dest[i] = (int) carry; - carry >>>= 32; - } - return (int) carry; - } - - /** Subtract Y[0:size-1] from X[0:size-1], and write - * the size least significant words of the result to dest[0:size-1]. - * Return borrow, either 0 or 1. - * This is basically the same as gmp's mpn_sub_n function. - */ - - public static int sub_n (int[] dest, int[] X, int[] Y, int size) - { - int cy = 0; - for (int i = 0; i < size; i++) - { - int y = Y[i]; - int x = X[i]; - y += cy; /* add previous carry to subtrahend */ - // Invert the high-order bit, because: (unsigned) X > (unsigned) Y - // iff: (int) (X^0x80000000) > (int) (Y^0x80000000). - cy = (y^0x80000000) < (cy^0x80000000) ? 1 : 0; - y = x - y; - cy += (y^0x80000000) > (x ^ 0x80000000) ? 1 : 0; - dest[i] = y; - } - return cy; - } - - /** Multiply x[0:len-1] by y, and write the len least - * significant words of the product to dest[0:len-1]. - * Return the most significant word of the product. - * All values are treated as if they were unsigned - * (i.e. masked with 0xffffffffL). - * OK if dest==x (not sure if this is guaranteed for mpn_mul_1). - * This function is basically the same as gmp's mpn_mul_1. - */ - - public static int mul_1 (int[] dest, int[] x, int len, int y) - { - long yword = (long) y & 0xffffffffL; - long carry = 0; - for (int j = 0; j < len; j++) - { - carry += ((long) x[j] & 0xffffffffL) * yword; - dest[j] = (int) carry; - carry >>>= 32; - } - return (int) carry; - } - - /** - * Multiply x[0:xlen-1] and y[0:ylen-1], and - * write the result to dest[0:xlen+ylen-1]. - * The destination has to have space for xlen+ylen words, - * even if the result might be one limb smaller. - * This function requires that xlen >= ylen. - * The destination must be distinct from either input operands. - * All operands are unsigned. - * This function is basically the same gmp's mpn_mul. */ - - public static void mul (int[] dest, - int[] x, int xlen, - int[] y, int ylen) - { - dest[xlen] = MPN.mul_1 (dest, x, xlen, y[0]); - - for (int i = 1; i < ylen; i++) - { - long yword = (long) y[i] & 0xffffffffL; - long carry = 0; - for (int j = 0; j < xlen; j++) - { - carry += ((long) x[j] & 0xffffffffL) * yword - + ((long) dest[i+j] & 0xffffffffL); - dest[i+j] = (int) carry; - carry >>>= 32; - } - dest[i+xlen] = (int) carry; - } - } - - /* Divide (unsigned long) N by (unsigned int) D. - * Returns (remainder << 32)+(unsigned int)(quotient). - * Assumes (unsigned int)(N>>32) < (unsigned int)D. - * Code transcribed from gmp-2.0's mpn_udiv_w_sdiv function. - */ - public static long udiv_qrnnd (long N, int D) - { - long q, r; - long a1 = N >>> 32; - long a0 = N & 0xffffffffL; - if (D >= 0) - { - if (a1 < ((D - a1 - (a0 >>> 31)) & 0xffffffffL)) - { - /* dividend, divisor, and quotient are nonnegative */ - q = N / D; - r = N % D; - } - else - { - /* Compute c1*2^32 + c0 = a1*2^32 + a0 - 2^31*d */ - long c = N - ((long) D << 31); - /* Divide (c1*2^32 + c0) by d */ - q = c / D; - r = c % D; - /* Add 2^31 to quotient */ - q += 1 << 31; - } - } - else - { - long b1 = D >>> 1; /* d/2, between 2^30 and 2^31 - 1 */ - //long c1 = (a1 >> 1); /* A/2 */ - //int c0 = (a1 << 31) + (a0 >> 1); - long c = N >>> 1; - if (a1 < b1 || (a1 >> 1) < b1) - { - if (a1 < b1) - { - q = c / b1; - r = c % b1; - } - else /* c1 < b1, so 2^31 <= (A/2)/b1 < 2^32 */ - { - c = ~(c - (b1 << 32)); - q = c / b1; /* (A/2) / (d/2) */ - r = c % b1; - q = (~q) & 0xffffffffL; /* (A/2)/b1 */ - r = (b1 - 1) - r; /* r < b1 => new r >= 0 */ - } - r = 2 * r + (a0 & 1); - if ((D & 1) != 0) - { - if (r >= q) { - r = r - q; - } else if (q - r <= ((long) D & 0xffffffffL)) { - r = r - q + D; - q -= 1; - } else { - r = r - q + D + D; - q -= 2; - } - } - } - else /* Implies c1 = b1 */ - { /* Hence a1 = d - 1 = 2*b1 - 1 */ - if (a0 >= ((long)(-D) & 0xffffffffL)) - { - q = -1; - r = a0 + D; - } - else - { - q = -2; - r = a0 + D + D; - } - } - } - - return (r << 32) | (q & 0xFFFFFFFFl); - } - - /** Divide divident[0:len-1] by (unsigned int)divisor. - * Write result into quotient[0:len-1. - * Return the one-word (unsigned) remainder. - * OK for quotient==dividend. - */ - - public static int divmod_1 (int[] quotient, int[] dividend, - int len, int divisor) - { - int i = len - 1; - long r = dividend[i]; - if ((r & 0xffffffffL) >= ((long)divisor & 0xffffffffL)) - r = 0; - else - { - quotient[i--] = 0; - r <<= 32; - } - - for (; i >= 0; i--) - { - int n0 = dividend[i]; - r = (r & ~0xffffffffL) | (n0 & 0xffffffffL); - r = udiv_qrnnd (r, divisor); - quotient[i] = (int) r; - } - return (int)(r >> 32); - } - - /* Subtract x[0:len-1]*y from dest[offset:offset+len-1]. - * All values are treated as if unsigned. - * @return the most significant word of - * the product, minus borrow-out from the subtraction. - */ - public static int submul_1 (int[] dest, int offset, int[] x, int len, int y) - { - long yl = (long) y & 0xffffffffL; - int carry = 0; - int j = 0; - do - { - long prod = ((long) x[j] & 0xffffffffL) * yl; - int prod_low = (int) prod; - int prod_high = (int) (prod >> 32); - prod_low += carry; - // Invert the high-order bit, because: (unsigned) X > (unsigned) Y - // iff: (int) (X^0x80000000) > (int) (Y^0x80000000). - carry = ((prod_low ^ 0x80000000) < (carry ^ 0x80000000) ? 1 : 0) - + prod_high; - int x_j = dest[offset+j]; - prod_low = x_j - prod_low; - if ((prod_low ^ 0x80000000) > (x_j ^ 0x80000000)) - carry++; - dest[offset+j] = prod_low; - } - while (++j < len); - return carry; - } - - /** Divide zds[0:nx] by y[0:ny-1]. - * The remainder ends up in zds[0:ny-1]. - * The quotient ends up in zds[ny:nx]. - * Assumes: nx>ny. - * (int)y[ny-1] < 0 (i.e. most significant bit set) - */ - - public static void divide (int[] zds, int nx, int[] y, int ny) - { - // This is basically Knuth's formulation of the classical algorithm, - // but translated from in scm_divbigbig in Jaffar's SCM implementation. - - // Correspondance with Knuth's notation: - // Knuth's u[0:m+n] == zds[nx:0]. - // Knuth's v[1:n] == y[ny-1:0] - // Knuth's n == ny. - // Knuth's m == nx-ny. - // Our nx == Knuth's m+n. - - // Could be re-implemented using gmp's mpn_divrem: - // zds[nx] = mpn_divrem (&zds[ny], 0, zds, nx, y, ny). - - int j = nx; - do - { // loop over digits of quotient - // Knuth's j == our nx-j. - // Knuth's u[j:j+n] == our zds[j:j-ny]. - int qhat; // treated as unsigned - if (zds[j]==y[ny-1]) - qhat = -1; // 0xffffffff - else - { - long w = (((long)(zds[j])) << 32) + ((long)zds[j-1] & 0xffffffffL); - qhat = (int) udiv_qrnnd (w, y[ny-1]); - } - if (qhat != 0) - { - int borrow = submul_1 (zds, j - ny, y, ny, qhat); - int save = zds[j]; - long num = ((long)save&0xffffffffL) - ((long)borrow&0xffffffffL); - while (num != 0) - { - qhat--; - long carry = 0; - for (int i = 0; i < ny; i++) - { - carry += ((long) zds[j-ny+i] & 0xffffffffL) - + ((long) y[i] & 0xffffffffL); - zds[j-ny+i] = (int) carry; - carry >>>= 32; - } - zds[j] += carry; - num = carry - 1; - } - } - zds[j] = qhat; - } while (--j >= ny); - } - - /** Number of digits in the conversion base that always fits in a word. - * For example, for base 10 this is 9, since 10**9 is the - * largest number that fits into a words (assuming 32-bit words). - * This is the same as gmp's __mp_bases[radix].chars_per_limb. - * @param radix the base - * @return number of digits */ - public static int chars_per_word (int radix) - { - if (radix < 10) - { - if (radix < 8) - { - if (radix <= 2) - return 32; - else if (radix == 3) - return 20; - else if (radix == 4) - return 16; - else - return 18 - radix; - } - else - return 10; - } - else if (radix < 12) - return 9; - else if (radix <= 16) - return 8; - else if (radix <= 23) - return 7; - else if (radix <= 40) - return 6; - // The following are conservative, but we don't care. - else if (radix <= 256) - return 4; - else - return 1; - } - - /** Count the number of leading zero bits in an int. */ - public static int count_leading_zeros (int i) - { - if (i == 0) - return 32; - int count = 0; - for (int k = 16; k > 0; k = k >> 1) { - int j = i >>> k; - if (j == 0) - count += k; - else - i = j; - } - return count; - } - - public static int set_str (int dest[], byte[] str, int str_len, int base) - { - int size = 0; - if ((base & (base - 1)) == 0) - { - // The base is a power of 2. Read the input string from - // least to most significant character/digit. */ - - int next_bitpos = 0; - int bits_per_indigit = 0; - for (int i = base; (i >>= 1) != 0; ) bits_per_indigit++; - int res_digit = 0; - - for (int i = str_len; --i >= 0; ) - { - int inp_digit = str[i]; - res_digit |= inp_digit << next_bitpos; - next_bitpos += bits_per_indigit; - if (next_bitpos >= 32) - { - dest[size++] = res_digit; - next_bitpos -= 32; - res_digit = inp_digit >> (bits_per_indigit - next_bitpos); - } - } - - if (res_digit != 0) - dest[size++] = res_digit; - } - else - { - // General case. The base is not a power of 2. - int indigits_per_limb = MPN.chars_per_word (base); - int str_pos = 0; - - while (str_pos < str_len) - { - int chunk = str_len - str_pos; - if (chunk > indigits_per_limb) - chunk = indigits_per_limb; - int res_digit = str[str_pos++]; - int big_base = base; - - while (--chunk > 0) - { - res_digit = res_digit * base + str[str_pos++]; - big_base *= base; - } - - int cy_limb; - if (size == 0) - cy_limb = res_digit; - else - { - cy_limb = MPN.mul_1 (dest, dest, size, big_base); - cy_limb += MPN.add_1 (dest, dest, size, res_digit); - } - if (cy_limb != 0) - dest[size++] = cy_limb; - } - } - return size; - } - - /** Compare x[0:size-1] with y[0:size-1], treating them as unsigned integers. - * @result -1, 0, or 1 depending on if x<y, x==y, or x>y. - * This is basically the same as gmp's mpn_cmp function. - */ - public static int cmp (int[] x, int[] y, int size) - { - while (--size >= 0) - { - int x_word = x[size]; - int y_word = y[size]; - if (x_word != y_word) - { - // Invert the high-order bit, because: - // (unsigned) X > (unsigned) Y iff - // (int) (X^0x80000000) > (int) (Y^0x80000000). - return (x_word ^ 0x80000000) > (y_word ^0x80000000) ? 1 : -1; - } - } - return 0; - } - - /** - * Compare x[0:xlen-1] with y[0:ylen-1], treating them as unsigned integers. - * - * @return -1, 0, or 1 depending on if x<y, x==y, or x>y. - */ - public static int cmp (int[] x, int xlen, int[] y, int ylen) - { - return xlen > ylen ? 1 : xlen < ylen ? -1 : cmp (x, y, xlen); - } - - /** - * Shift x[x_start:x_start+len-1] count bits to the "right" - * (i.e. divide by 2**count). - * Store the len least significant words of the result at dest. - * The bits shifted out to the right are returned. - * OK if dest==x. - * Assumes: 0 < count < 32 - */ - public static int rshift (int[] dest, int[] x, int x_start, - int len, int count) - { - int count_2 = 32 - count; - int low_word = x[x_start]; - int retval = low_word << count_2; - int i = 1; - for (; i < len; i++) - { - int high_word = x[x_start+i]; - dest[i-1] = (low_word >>> count) | (high_word << count_2); - low_word = high_word; - } - dest[i-1] = low_word >>> count; - return retval; - } - - /** - * Shift x[x_start:x_start+len-1] count bits to the "right" - * (i.e. divide by 2**count). - * Store the len least significant words of the result at dest. - * OK if dest==x. - * Assumes: 0 <= count < 32 - * Same as rshift, but handles count==0 (and has no return value). - */ - public static void rshift0 (int[] dest, int[] x, int x_start, - int len, int count) - { - if (count > 0) - rshift(dest, x, x_start, len, count); - else - for (int i = 0; i < len; i++) - dest[i] = x[i + x_start]; - } - - /** Return the long-truncated value of right shifting. - * @param x a two's-complement "bignum" - * @param len the number of significant words in x - * @param count the shift count - * @return (long)(x[0..len-1] >> count). - */ - public static long rshift_long (int[] x, int len, int count) - { - int wordno = count >> 5; - count &= 31; - int sign = x[len-1] < 0 ? -1 : 0; - int w0 = wordno >= len ? sign : x[wordno]; - wordno++; - int w1 = wordno >= len ? sign : x[wordno]; - if (count != 0) - { - wordno++; - int w2 = wordno >= len ? sign : x[wordno]; - w0 = (w0 >>> count) | (w1 << (32-count)); - w1 = (w1 >>> count) | (w2 << (32-count)); - } - return ((long)w1 << 32) | ((long)w0 & 0xffffffffL); - } - - /* Shift x[0:len-1] left by count bits, and store the len least - * significant words of the result in dest[d_offset:d_offset+len-1]. - * Return the bits shifted out from the most significant digit. - * Assumes 0 < count < 32. - * OK if dest==x. - */ - - public static int lshift (int[] dest, int d_offset, - int[] x, int len, int count) - { - int count_2 = 32 - count; - int i = len - 1; - int high_word = x[i]; - int retval = high_word >>> count_2; - d_offset++; - while (--i >= 0) - { - int low_word = x[i]; - dest[d_offset+i] = (high_word << count) | (low_word >>> count_2); - high_word = low_word; - } - dest[d_offset+i] = high_word << count; - return retval; - } - - /** Return least i such that word & (1<<i). Assumes word!=0. */ - - public static int findLowestBit (int word) - { - int i = 0; - while ((word & 0xF) == 0) - { - word >>= 4; - i += 4; - } - if ((word & 3) == 0) - { - word >>= 2; - i += 2; - } - if ((word & 1) == 0) - i += 1; - return i; - } - - /** Return least i such that words & (1<<i). Assumes there is such an i. */ - - public static int findLowestBit (int[] words) - { - for (int i = 0; ; i++) - { - if (words[i] != 0) - return 32 * i + findLowestBit (words[i]); - } - } - - /** Calculate Greatest Common Divisior of x[0:len-1] and y[0:len-1]. - * Assumes both arguments are non-zero. - * Leaves result in x, and returns len of result. - * Also destroys y (actually sets it to a copy of the result). */ - - public static int gcd (int[] x, int[] y, int len) - { - int i, word; - // Find sh such that both x and y are divisible by 2**sh. - for (i = 0; ; i++) - { - word = x[i] | y[i]; - if (word != 0) - { - // Must terminate, since x and y are non-zero. - break; - } - } - int initShiftWords = i; - int initShiftBits = findLowestBit (word); - // Logically: sh = initShiftWords * 32 + initShiftBits - - // Temporarily devide both x and y by 2**sh. - len -= initShiftWords; - MPN.rshift0 (x, x, initShiftWords, len, initShiftBits); - MPN.rshift0 (y, y, initShiftWords, len, initShiftBits); - - int[] odd_arg; /* One of x or y which is odd. */ - int[] other_arg; /* The other one can be even or odd. */ - if ((x[0] & 1) != 0) - { - odd_arg = x; - other_arg = y; - } - else - { - odd_arg = y; - other_arg = x; - } - - for (;;) - { - // Shift other_arg until it is odd; this doesn't - // affect the gcd, since we divide by 2**k, which does not - // divide odd_arg. - for (i = 0; other_arg[i] == 0; ) i++; - if (i > 0) - { - int j; - for (j = 0; j < len-i; j++) - other_arg[j] = other_arg[j+i]; - for ( ; j < len; j++) - other_arg[j] = 0; - } - i = findLowestBit(other_arg[0]); - if (i > 0) - MPN.rshift (other_arg, other_arg, 0, len, i); - - // Now both odd_arg and other_arg are odd. - - // Subtract the smaller from the larger. - // This does not change the result, since gcd(a-b,b)==gcd(a,b). - i = MPN.cmp(odd_arg, other_arg, len); - if (i == 0) - break; - if (i > 0) - { // odd_arg > other_arg - MPN.sub_n (odd_arg, odd_arg, other_arg, len); - // Now odd_arg is even, so swap with other_arg; - int[] tmp = odd_arg; odd_arg = other_arg; other_arg = tmp; - } - else - { // other_arg > odd_arg - MPN.sub_n (other_arg, other_arg, odd_arg, len); - } - while (odd_arg[len-1] == 0 && other_arg[len-1] == 0) - len--; - } - if (initShiftWords + initShiftBits > 0) - { - if (initShiftBits > 0) - { - int sh_out = MPN.lshift (x, initShiftWords, x, len, initShiftBits); - if (sh_out != 0) - x[(len++)+initShiftWords] = sh_out; - } - else - { - for (i = len; --i >= 0;) - x[i+initShiftWords] = x[i]; - } - for (i = initShiftWords; --i >= 0; ) - x[i] = 0; - len += initShiftWords; - } - return len; - } - - public static int intLength (int i) - { - return 32 - count_leading_zeros (i < 0 ? ~i : i); - } - - /** Calcaulte the Common Lisp "integer-length" function. - * Assumes input is canonicalized: len==BigInteger.wordsNeeded(words,len) */ - public static int intLength (int[] words, int len) - { - len--; - return intLength (words[len]) + 32 * len; - } - - /* DEBUGGING: - public static void dprint (BigInteger x) - { - if (x.words == null) - System.err.print(Long.toString((long) x.ival & 0xffffffffL, 16)); - else - dprint (System.err, x.words, x.ival); - } - public static void dprint (int[] x) { dprint (System.err, x, x.length); } - public static void dprint (int[] x, int len) { dprint (System.err, x, len); } - public static void dprint (java.io.PrintStream ps, int[] x, int len) - { - ps.print('('); - for (int i = 0; i < len; i++) - { - if (i > 0) - ps.print (' '); - ps.print ("#x" + Long.toString ((long) x[i] & 0xffffffffL, 16)); - } - ps.print(')'); - } - */ -} diff --git a/libjava/gnu/java/net/BASE64.java b/libjava/gnu/java/net/BASE64.java deleted file mode 100644 index 901aa0c35fc..00000000000 --- a/libjava/gnu/java/net/BASE64.java +++ /dev/null @@ -1,190 +0,0 @@ -/* BASE.java -- - Copyright (C) 2003, 2004, 2005 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.java.net; - -/** - * Encodes and decodes text according to the BASE64 encoding. - * - * @author Chris Burdess (dog@gnu.org) - */ -public final class BASE64 -{ - private static final byte[] src = { - 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, - 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, - 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x61, 0x62, 0x63, 0x64, - 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, - 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, - 0x79, 0x7a, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, - 0x38, 0x39, 0x2b, 0x2f - }; - - private static final byte[] dst; - static - { - dst = new byte[0x100]; - for (int i = 0x0; i < 0xff; i++) - { - dst[i] = -1; - } - for (int i = 0; i < src.length; i++) - { - dst[src[i]] = (byte) i; - } - } - - private BASE64() - { - } - - /** - * Encode the specified byte array using the BASE64 algorithm. - * - * @param bs the source byte array - */ - public static byte[] encode(byte[] bs) - { - int si = 0, ti = 0; // source/target array indices - byte[] bt = new byte[((bs.length + 2) * 4) / 3]; // target byte array - for (; si < bs.length; si += 3) - { - int buflen = bs.length - si; - if (buflen == 1) - { - byte b = bs[si]; - int i = 0; - bt[ti++] = src[b >>> 2 & 0x3f]; - bt[ti++] = src[(b << 4 & 0x30) + (i >>> 4 & 0xf)]; - } - else if (buflen == 2) - { - byte b1 = bs[si], b2 = bs[si + 1]; - int i = 0; - bt[ti++] = src[b1 >>> 2 & 0x3f]; - bt[ti++] = src[(b1 << 4 & 0x30) + (b2 >>> 4 & 0xf)]; - bt[ti++] = src[(b2 << 2 & 0x3c) + (i >>> 6 & 0x3)]; - } - else - { - byte b1 = bs[si], b2 = bs[si + 1], b3 = bs[si + 2]; - bt[ti++] = src[b1 >>> 2 & 0x3f]; - bt[ti++] = src[(b1 << 4 & 0x30) + (b2 >>> 4 & 0xf)]; - bt[ti++] = src[(b2 << 2 & 0x3c) + (b3 >>> 6 & 0x3)]; - bt[ti++] = src[b3 & 0x3f]; - } - } - if (ti < bt.length) - { - byte[] tmp = new byte[ti]; - System.arraycopy(bt, 0, tmp, 0, ti); - bt = tmp; - } - /*while (ti < bt.length) - { - bt[ti++] = 0x3d; - }*/ - return bt; - } - - /** - * Decode the specified byte array using the BASE64 algorithm. - * - * @param bs the source byte array - */ - public static byte[] decode(byte[] bs) - { - int srclen = bs.length; - while (srclen > 0 && bs[srclen - 1] == 0x3d) - { - srclen--; /* strip padding character */ - } - byte[] buffer = new byte[srclen]; - int buflen = 0; - int si = 0; - int len = srclen - si; - while (len > 0) - { - byte b0 = dst[bs[si++] & 0xff]; - byte b2 = dst[bs[si++] & 0xff]; - buffer[buflen++] = (byte) (b0 << 2 & 0xfc | b2 >>> 4 & 0x3); - if (len > 2) - { - b0 = b2; - b2 = dst[bs[si++] & 0xff]; - buffer[buflen++] = (byte) (b0 << 4 & 0xf0 | b2 >>> 2 & 0xf); - if (len > 3) - { - b0 = b2; - b2 = dst[bs[si++] & 0xff]; - buffer[buflen++] = (byte) (b0 << 6 & 0xc0 | b2 & 0x3f); - } - } - len = srclen - si; - } - byte[] bt = new byte[buflen]; - System.arraycopy(buffer, 0, bt, 0, buflen); - return bt; - } - - public static void main(String[] args) - { - boolean decode = false; - for (int i = 0; i < args.length; i++) - { - if (args[i].equals("-d")) - { - decode = true; - } - else - { - try - { - byte[] in = args[i].getBytes("US-ASCII"); - byte[] out = decode ? decode(in) : encode(in); - System.out.println(args[i] + " = " + - new String(out, "US-ASCII")); - } - catch (java.io.UnsupportedEncodingException e) - { - e.printStackTrace(System.err); - } - } - } - } -} diff --git a/libjava/gnu/java/net/CRLFInputStream.java b/libjava/gnu/java/net/CRLFInputStream.java deleted file mode 100644 index d0f9e8c4130..00000000000 --- a/libjava/gnu/java/net/CRLFInputStream.java +++ /dev/null @@ -1,174 +0,0 @@ -/* CRLFInputStream.java -- - Copyright (C) 2002, 2003, 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.java.net; - -import java.io.BufferedInputStream; -import java.io.FilterInputStream; -import java.io.IOException; -import java.io.InputStream; - -/** - * An input stream that filters out CR/LF pairs into LFs. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class CRLFInputStream - extends FilterInputStream -{ - /** - * The CR octet. - */ - public static final int CR = 13; - - /** - * The LF octet. - */ - public static final int LF = 10; - - private boolean doReset; - - /** - * Constructs a CR/LF input stream connected to the specified input - * stream. - */ - public CRLFInputStream(InputStream in) - { - super(in.markSupported() ? in : new BufferedInputStream(in)); - } - - /** - * Reads the next byte of data from this input stream. - * Returns -1 if the end of the stream has been reached. - * @exception IOException if an I/O error occurs - */ - public int read() - throws IOException - { - int c = in.read(); - if (c == CR) - { - in.mark(1); - int d = in.read(); - if (d == LF) - { - c = d; - } - else - { - in.reset(); - } - } - return c; - } - - /** - * Reads up to b.length bytes of data from this input stream into - * an array of bytes. - * Returns -1 if the end of the stream has been reached. - * @exception IOException if an I/O error occurs - */ - public int read(byte[] b) - throws IOException - { - return read(b, 0, b.length); - } - - /** - * Reads up to len bytes of data from this input stream into an - * array of bytes, starting at the specified offset. - * Returns -1 if the end of the stream has been reached. - * @exception IOException if an I/O error occurs - */ - public int read(byte[] b, int off, int len) - throws IOException - { - in.mark(len + 1); - int l = in.read(b, off, len); - if (l > 0) - { - int i = indexOfCRLF(b, off, l); - if (doReset) - { - in.reset(); - if (i != -1) - { - l = in.read(b, off, i + 1); // read to CR - in.read(); // skip LF - b[i] = LF; // fix CR as LF - } - else - { - l = in.read(b, off, len); // CR(s) but no LF - } - } - } - return l; - } - - private int indexOfCRLF(byte[] b, int off, int len) - throws IOException - { - doReset = false; - int lm1 = len - 1; - for (int i = off; i < len; i++) - { - if (b[i] == CR) - { - int d; - if (i == lm1) - { - d = in.read(); - doReset = true; - } - else - { - d = b[i + 1]; - } - if (d == LF) - { - doReset = true; - return i; - } - } - } - return -1; - } - -} - diff --git a/libjava/gnu/java/net/CRLFOutputStream.java b/libjava/gnu/java/net/CRLFOutputStream.java deleted file mode 100644 index f27e0f218ad..00000000000 --- a/libjava/gnu/java/net/CRLFOutputStream.java +++ /dev/null @@ -1,183 +0,0 @@ -/* CRLFOutputStream.java -- - Copyright (C) 2002, 2003, 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.java.net; - -import java.io.FilterOutputStream; -import java.io.IOException; -import java.io.OutputStream; -import java.io.UnsupportedEncodingException; - -/** - * An output stream that filters LFs into CR/LF pairs. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class CRLFOutputStream - extends FilterOutputStream -{ - static final String US_ASCII = "US-ASCII"; - - /** - * The CR octet. - */ - public static final int CR = 13; - - /** - * The LF octet. - */ - public static final int LF = 10; - - /** - * The CR/LF pair. - */ - public static final byte[] CRLF = { CR, LF }; - - /** - * The last byte read. - */ - protected int last; - - /** - * Constructs a CR/LF output stream connected to the specified output stream. - */ - public CRLFOutputStream(OutputStream out) - { - super(out); - last = -1; - } - - /** - * Writes a character to the underlying stream. - * @exception IOException if an I/O error occurred - */ - public void write(int ch) throws IOException - { - if (ch == CR) - { - out.write(CRLF); - } - else if (ch == LF) - { - if (last != CR) - { - out.write(CRLF); - } - } - else - { - out.write(ch); - } - last = ch; - } - - /** - * Writes a byte array to the underlying stream. - * @exception IOException if an I/O error occurred - */ - public void write(byte[] b) - throws IOException - { - write(b, 0, b.length); - } - - /** - * Writes a portion of a byte array to the underlying stream. - * @exception IOException if an I/O error occurred - */ - public void write(byte[] b, int off, int len) - throws IOException - { - int d = off; - len += off; - for (int i = off; i < len; i++) - { - switch (b[i]) - { - case CR: - out.write (b, d, i - d); - out.write (CRLF, 0, 2); - d = i + 1; - break; - case LF: - if (last != CR) - { - out.write (b, d, i - d); - out.write (CRLF, 0, 2); - } - d = i + 1; - break; - } - last = b[i]; - } - if (len - d > 0) - { - out.write (b, d, len - d); - } - } - - /** - * Writes the specified ASCII string to the underlying stream. - * @exception IOException if an I/O error occurred - */ - public void write(String text) - throws IOException - { - try - { - byte[] bytes = text.getBytes(US_ASCII); - write(bytes, 0, bytes.length); - } - catch (UnsupportedEncodingException e) - { - throw new IOException("The US-ASCII encoding is not supported " + - "on this system"); - } - } - - /** - * Writes a newline to the underlying stream. - * @exception IOException if an I/O error occurred - */ - public void writeln() - throws IOException - { - out.write(CRLF, 0, 2); - } -} - diff --git a/libjava/gnu/java/net/EmptyX509TrustManager.java b/libjava/gnu/java/net/EmptyX509TrustManager.java deleted file mode 100644 index b8faf41add7..00000000000 --- a/libjava/gnu/java/net/EmptyX509TrustManager.java +++ /dev/null @@ -1,70 +0,0 @@ -/* EmptyX509TrustManager.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., 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.java.net; - -import java.security.cert.CertificateException; -import java.security.cert.X509Certificate; - -import javax.net.ssl.X509TrustManager; - -/** - * Empty implementation of an X509 trust manager. - * This implementation does not check any certificates in the chain. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class EmptyX509TrustManager - implements X509TrustManager -{ - public void checkClientTrusted(X509Certificate[] chain, String authType) - throws CertificateException - { - } - - public void checkServerTrusted(X509Certificate[] chain, String authType) - throws CertificateException - { - } - - public X509Certificate[] getAcceptedIssuers() - { - return new X509Certificate[0]; - } -} - diff --git a/libjava/gnu/java/net/GetLocalHostAction.java b/libjava/gnu/java/net/GetLocalHostAction.java deleted file mode 100644 index 7483b025773..00000000000 --- a/libjava/gnu/java/net/GetLocalHostAction.java +++ /dev/null @@ -1,65 +0,0 @@ -/* GetLocalHostAction.java -- - Copyright (C) 2003, 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.java.net; - -import java.net.InetAddress; -import java.net.UnknownHostException; -import java.security.PrivilegedAction; - -/** - * Privileged action to retrieve the local host InetAddress. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class GetLocalHostAction - implements PrivilegedAction -{ - public Object run() - { - try - { - return InetAddress.getLocalHost(); - } - catch (UnknownHostException e) - { - return null; - } - } -} - diff --git a/libjava/gnu/java/net/HeaderFieldHelper.java b/libjava/gnu/java/net/HeaderFieldHelper.java deleted file mode 100644 index 0fb8d953d21..00000000000 --- a/libjava/gnu/java/net/HeaderFieldHelper.java +++ /dev/null @@ -1,138 +0,0 @@ -/* HeaderFieldHelper.java -- Helps manage headers fields - Copyright (C) 1998, 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., 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.java.net; - -import java.util.HashMap; -import java.util.Map; -import java.util.Vector; - -/** - * This class manages header field keys and values. - * - * @author Aaron M. Renn (arenn@urbanophile.com) - */ -public class HeaderFieldHelper -{ - private Vector headerFieldKeys; - private Vector headerFieldValues; - - public HeaderFieldHelper() - { - this (10); - } - - public HeaderFieldHelper (int size) - { - headerFieldKeys = new Vector (size); - headerFieldValues = new Vector (size); - } - - public void addHeaderField (String key, String value) - { - headerFieldKeys.addElement (key); - headerFieldValues.addElement (value); - } - - public String getHeaderFieldKeyByIndex (int index) - { - String key = null; - - try - { - key = (String) headerFieldKeys.elementAt (index); - } - catch (ArrayIndexOutOfBoundsException e) - { - } - - return key; - } - - public String getHeaderFieldValueByIndex(int index) - { - String value = null; - - try - { - value = (String) headerFieldValues.elementAt (index); - } - catch (ArrayIndexOutOfBoundsException e) - { - } - - return value; - } - - public String getHeaderFieldValueByKey(String key) - { - String value = null; - - try - { - value = (String) headerFieldValues.elementAt - (headerFieldKeys.indexOf(key)); - } - catch (ArrayIndexOutOfBoundsException e) - { - } - - return value; - } - - public Map getHeaderFields() - { - HashMap headers = new HashMap(); - int max = headerFieldKeys.size(); - - for (int index = 0; index < max; index++) - { - headers.put(headerFieldKeys.elementAt(index), - headerFieldValues.elementAt(index)); - } - - return headers; - } - - public int getNumberOfEntries() - { - return headerFieldKeys.size(); - } - -} // class HeaderFieldHelper - diff --git a/libjava/gnu/java/net/LineInputStream.java b/libjava/gnu/java/net/LineInputStream.java deleted file mode 100644 index 5ca068618da..00000000000 --- a/libjava/gnu/java/net/LineInputStream.java +++ /dev/null @@ -1,198 +0,0 @@ -/* LineInputStream.java -- - Copyright (C) 2002, 2003, 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.java.net; - -import java.io.ByteArrayOutputStream; -import java.io.FilterInputStream; -import java.io.IOException; -import java.io.InputStream; - -/** - * An input stream that can read lines of input. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class LineInputStream - extends FilterInputStream -{ - /* - * Line buffer. - */ - private ByteArrayOutputStream buf; - - /* - * Encoding to use when translating bytes to characters. - */ - private String encoding; - - /* - * End-of-stream flag. - */ - private boolean eof; - - /** - * Whether we can use block reads. - */ - private final boolean blockReads; - - /** - * Constructor using the US-ASCII character encoding. - * @param in the underlying input stream - */ - public LineInputStream(InputStream in) - { - this(in, "US-ASCII"); - } - - /** - * Constructor. - * @param in the underlying input stream - * @param encoding the character encoding to use - */ - public LineInputStream(InputStream in, String encoding) - { - super(in); - buf = new ByteArrayOutputStream(); - this.encoding = encoding; - eof = false; - blockReads = in.markSupported(); - } - - /** - * Read a line of input. - */ - public String readLine() - throws IOException - { - if (eof) - { - return null; - } - do - { - if (blockReads) - { - // Use mark and reset to read chunks of bytes - final int MIN_LENGTH = 1024; - int len, pos; - - len = in.available(); - len = (len < MIN_LENGTH) ? MIN_LENGTH : len; - byte[] b = new byte[len]; - in.mark(len); - // Read into buffer b - len = in.read(b, 0, len); - // Handle EOF - if (len == -1) - { - eof = true; - if (buf.size() == 0) - { - return null; - } - else - { - // We don't care about resetting buf - return buf.toString(encoding); - } - } - // Get index of LF in b - pos = indexOf(b, len, (byte) 0x0a); - if (pos != -1) - { - // Write pos bytes to buf - buf.write(b, 0, pos); - // Reset stream, and read pos + 1 bytes - in.reset(); - pos += 1; - while (pos > 0) - { - len = in.read(b, 0, pos); - pos = (len == -1) ? -1 : pos - len; - } - // Return line - String ret = buf.toString(encoding); - buf.reset(); - return ret; - } - else - { - // Append everything to buf and fall through to re-read. - buf.write(b, 0, len); - } - } - else - { - // We must use character reads in order not to read too much - // from the underlying stream. - int c = in.read(); - switch (c) - { - case -1: - eof = true; - if (buf.size() == 0) - { - return null; - } - // Fall through and return contents of buffer. - case 0x0a: // LF - String ret = buf.toString(encoding); - buf.reset(); - return ret; - default: - buf.write(c); - } - } - } - while (true); - } - - private int indexOf(byte[] b, int len, byte c) - { - for (int pos = 0; pos < len; pos++) - { - if (b[pos] == c) - { - return pos; - } - } - return -1; - } -} - diff --git a/libjava/gnu/java/net/URLParseError.java b/libjava/gnu/java/net/URLParseError.java deleted file mode 100644 index 90907480f11..00000000000 --- a/libjava/gnu/java/net/URLParseError.java +++ /dev/null @@ -1,57 +0,0 @@ -/* URLParseError.java -- Helps bypassing the exception limitation for - URLStreamHandler.parseURL(). - 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., 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.java.net; - -/** - * This class helps the people writing protocols to report URL parse - * errors in parseUrl as this method cannot report other exceptions - * than Errors. - * - * The main drawback is that it uses the Error mechanism which should not - * be used for that type of error reporting. - * - * @author Guilhem Lavaux (guilhem@kaffe.org) - */ -public class URLParseError extends Error -{ - public URLParseError(String msg) - { - super(msg); - } -} diff --git a/libjava/gnu/java/net/protocol/ftp/ActiveModeDTP.java b/libjava/gnu/java/net/protocol/ftp/ActiveModeDTP.java deleted file mode 100644 index 3755e8beb8d..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/ActiveModeDTP.java +++ /dev/null @@ -1,251 +0,0 @@ -/* ActiveModeDTP.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.net.InetAddress; -import java.net.ServerSocket; -import java.net.Socket; - -/** - * An active mode FTP data transfer process. - * This starts a server on the specified port listening for a data - * connection. It converts the socket input into a file stream for reading. - * - * @author Chris Burdess (dog@gnu.org) - */ -final class ActiveModeDTP - implements DTP, Runnable -{ - - ServerSocket server; - Socket socket; - DTPInputStream in; - DTPOutputStream out; - boolean completed; - boolean inProgress; - int transferMode; - IOException exception; - Thread acceptThread; - int connectionTimeout; - - ActiveModeDTP(InetAddress localhost, int port, - int connectionTimeout, int timeout) - throws IOException - { - completed = false; - inProgress = false; - server = new ServerSocket(port, 1, localhost); - if (timeout > 0) - { - server.setSoTimeout(timeout); - } - if (connectionTimeout <= 0) - { - connectionTimeout = 20000; - } - this.connectionTimeout = connectionTimeout; - acceptThread = new Thread(this, "ActiveModeDTP"); - acceptThread.start(); - } - - /** - * Start listening. - */ - public void run() - { - try - { - socket = server.accept(); - //System.err.println("Accepted connection from "+socket.getInetAddress()+":"+socket.getPort()); - } - catch (IOException e) - { - exception = e; - } - } - - /** - * Waits until a client has connected. - */ - public void waitFor() - throws IOException - { - try - { - acceptThread.join(connectionTimeout); - } - catch (InterruptedException e) - { - } - if (exception != null) - { - throw exception; - } - if (socket == null) - { - server.close(); - throw new IOException("client did not connect before timeout"); - } - acceptThread = null; - } - - /** - * Returns an input stream from which a remote file can be read. - */ - public InputStream getInputStream() - throws IOException - { - if (inProgress) - { - throw new IOException("Transfer in progress"); - } - if (acceptThread != null) - { - waitFor(); - } - switch (transferMode) - { - case FTPConnection.MODE_STREAM: - in = new StreamInputStream(this, socket.getInputStream()); - break; - case FTPConnection.MODE_BLOCK: - in = new BlockInputStream(this, socket.getInputStream()); - break; - case FTPConnection.MODE_COMPRESSED: - in = new CompressedInputStream(this, socket.getInputStream()); - break; - default: - throw new IllegalStateException("invalid transfer mode"); - } - in.setTransferComplete(false); - return in; - } - - /** - * Returns an output stream to which a local file can be written for - * upload. - */ - public OutputStream getOutputStream() throws IOException - { - if (inProgress) - { - throw new IOException("Transfer in progress"); - } - if (acceptThread != null) - { - waitFor(); - } - switch (transferMode) - { - case FTPConnection.MODE_STREAM: - out = new StreamOutputStream(this, socket.getOutputStream()); - break; - case FTPConnection.MODE_BLOCK: - out = new BlockOutputStream(this, socket.getOutputStream()); - break; - case FTPConnection.MODE_COMPRESSED: - out = new CompressedOutputStream(this, socket.getOutputStream()); - break; - default: - throw new IllegalStateException("invalid transfer mode"); - } - out.setTransferComplete(false); - return out; - } - - public void setTransferMode(int mode) - { - transferMode = mode; - } - - public void complete() - { - completed = true; - if (!inProgress) - { - transferComplete(); - } - } - - public boolean abort() - { - completed = true; - transferComplete(); - return inProgress; - } - - public void transferComplete() - { - if (socket == null) - { - return; - } - if (in != null) - { - in.setTransferComplete(true); - } - if (out != null) - { - out.setTransferComplete(true); - } - completed = completed || (transferMode == FTPConnection.MODE_STREAM); - if (completed && socket != null) - { - try - { - socket.close(); - } - catch (IOException e) - { - } - try - { - server.close(); - } - catch (IOException e) - { - } - } - } - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/BlockInputStream.java b/libjava/gnu/java/net/protocol/ftp/BlockInputStream.java deleted file mode 100644 index 63897f1d6db..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/BlockInputStream.java +++ /dev/null @@ -1,150 +0,0 @@ -/* BlockInputStream.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import java.io.IOException; -import java.io.InputStream; - -/** - * A DTP input stream that implements the FTP block transfer mode. - * - * @author Chris Burdess (dog@gnu.org) - */ -class BlockInputStream - extends DTPInputStream -{ - - static final int EOF = 64; - - int descriptor; - int max = -1; - int count = -1; - - BlockInputStream(DTP dtp, InputStream in) - { - super(dtp, in); - } - - public int read() - throws IOException - { - if (transferComplete) - { - return -1; - } - if (count == -1) - { - readHeader(); - } - if (max < 1) - { - close(); - return -1; - } - int c = in.read(); - if (c == -1) - { - dtp.transferComplete(); - } - count++; - if (count >= max) - { - count = -1; - if (descriptor == EOF) - { - close(); - } - } - return c; - } - - public int read(byte[] buf) - throws IOException - { - return read(buf, 0, buf.length); - } - - public int read(byte[] buf, int off, int len) - throws IOException - { - if (transferComplete) - { - return -1; - } - if (count == -1) - { - readHeader(); - } - if (max < 1) - { - close(); - return -1; - } - int l = in.read(buf, off, len); - if (l == -1) - { - dtp.transferComplete(); - } - count += l; - if (count >= max) - { - count = -1; - if (descriptor == EOF) - { - close(); - } - } - return l; - } - - /** - * Reads the block header. - */ - void readHeader() - throws IOException - { - descriptor = in.read(); - int max_hi = in.read(); - int max_lo = in.read(); - max = (max_hi << 8) | max_lo; - count = 0; - } - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/BlockOutputStream.java b/libjava/gnu/java/net/protocol/ftp/BlockOutputStream.java deleted file mode 100644 index 85481c95bd5..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/BlockOutputStream.java +++ /dev/null @@ -1,111 +0,0 @@ -/* BlockOutputStream.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import java.io.IOException; -import java.io.OutputStream; - -/** - * A DTP output stream that implements the FTP block transfer mode. - * - * @author Chris Burdess (dog@gnu.org) - */ -class BlockOutputStream - extends DTPOutputStream -{ - - static final byte RECORD = -128; // 0x80 - static final byte EOF = 64; // 0x40 - - BlockOutputStream(DTP dtp, OutputStream out) - { - super(dtp, out); - } - - public void write(int c) - throws IOException - { - if (transferComplete) - { - return; - } - byte[] buf = new byte[] - { - RECORD, /* record descriptor */ - 0x00, 0x01, /* one byte */ - (byte) c /* the byte */ - }; - out.write(buf, 0, 4); - } - - public void write(byte[] b) - throws IOException - { - write(b, 0, b.length); - } - - public void write(byte[] b, int off, int len) - throws IOException - { - if (transferComplete) - { - return; - } - byte[] buf = new byte[len + 3]; - buf[0] = RECORD; /* record descriptor */ - buf[1] = (byte) ((len & 0x00ff) >> 8); /* high byte of bytecount */ - buf[2] = (byte) (len & 0xff00); /* low byte of bytecount */ - System.arraycopy(b, off, buf, 3, len); - out.write(buf, 0, len); - } - - public void close() - throws IOException - { - byte[] buf = new byte[] - { - EOF, /* eof descriptor */ - 0x00, 0x00 /* no bytes */ - }; - out.write(buf, 0, 3); - super.close(); - } - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/CompressedInputStream.java b/libjava/gnu/java/net/protocol/ftp/CompressedInputStream.java deleted file mode 100644 index f2e65b7d37e..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/CompressedInputStream.java +++ /dev/null @@ -1,215 +0,0 @@ -/* CompressedInputStream.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import java.io.IOException; -import java.io.InputStream; -import java.net.ProtocolException; - -/** - * A DTP input stream that implements the FTP compressed transfer mode. - * - * @author Chris Burdess (dog@gnu.org) - */ -class CompressedInputStream - extends DTPInputStream -{ - - static final int EOF = 64; - - static final int RAW = 0x00; - static final int COMPRESSED = 0x80; - static final int FILLER = 0xc0; - - int descriptor; - int max = -1; - int count = -1; - - int state = RAW; // RAW | STATE | FILLER - int rep; // the compressed byte - int n = 0; // the number of compressed or raw bytes - - CompressedInputStream(DTP dtp, InputStream in) - { - super(dtp, in); - } - - public int read() - throws IOException - { - if (transferComplete) - { - return -1; - } - if (count == -1) - { - readHeader(); - } - if (max < 1) - { - close(); - return -1; - } - if (n > 0 && (state == COMPRESSED || state == FILLER)) - { - n--; - return rep; - } - int c = in.read(); - if (c == -1) - { - close(); - } - count++; - if (count >= max) - { - count = -1; - if (descriptor == EOF) - { - close(); - } - } - if (c == -1) - { - return c; - } - while (n == 0) // read code header - { - state = (c & 0xc0); - n = (c & 0x3f); - c = in.read(); - if (c == -1) - { - return -1; - } - } - switch (state) - { - case RAW: - break; - case COMPRESSED: - case FILLER: - rep = c; - break; - default: - throw new ProtocolException("Illegal state: " + state); - } - n--; - return c; - } - - public int read(byte[] buf) - throws IOException - { - return read(buf, 0, buf.length); - } - - public int read(byte[] buf, int off, int len) - throws IOException - { - if (transferComplete) - { - return -1; - } - if (count == -1) - { - readHeader(); - } - if (max < 1) - { - close(); - return -1; - } - // TODO improve performance - for (int i = off; i < len; i++) - { - int c = read(); - if (c == -1) - { - close(); - return i; - } - buf[i] = (byte) c; - } - return len; - /* - int l = in.read (buf, off, len); - if (l==-1) - { - close (); - } - count += l; - if (count>=max) - { - count = -1; - if (descriptor==EOF) - { - close (); - } - } - return l; - */ - } - - /** - * Reads the block header. - */ - void readHeader() - throws IOException - { - descriptor = in.read(); - int max_hi = in.read(); - int max_lo = in.read(); - max = (max_hi << 8) | max_lo; - count = 0; - } - - /** - * Reads the code header. - */ - void readCodeHeader() - throws IOException - { - int code = in.read(); - state = (code & 0xc0); - n = (code & 0x3f); - } - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/CompressedOutputStream.java b/libjava/gnu/java/net/protocol/ftp/CompressedOutputStream.java deleted file mode 100644 index b960fb3afe8..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/CompressedOutputStream.java +++ /dev/null @@ -1,228 +0,0 @@ -/* CompressedOutputStream.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import java.io.IOException; -import java.io.OutputStream; - -/** - * A DTP output stream that implements the FTP compressed transfer mode. - * - * @author Chris Burdess (dog@gnu.org) - */ -class CompressedOutputStream - extends DTPOutputStream -{ - - static final byte RECORD = -128; // 0x80 - static final byte EOF = 64; // 0x40 - - CompressedOutputStream(DTP dtp, OutputStream out) - { - super(dtp, out); - } - - /** - * Just one byte cannot be compressed. - * It takes 5 bytes to transmit - hardly very compressed! - */ - public void write(int c) - throws IOException - { - if (transferComplete) - { - return; - } - byte[] buf = new byte[] - { - RECORD, /* record descriptor */ - 0x00, 0x01, /* one byte */ - 0x01, /* one uncompressed byte */ - (byte) c /* the byte */ - }; - out.write(buf, 0, 5); - } - - public void write(byte[] b) - throws IOException - { - write(b, 0, b.length); - } - - /** - * The larger len is, the better. - */ - public void write(byte[] b, int off, int len) - throws IOException - { - if (transferComplete) - { - return; - } - byte[] buf = compress(b, off, len); - len = buf.length; - buf[0] = RECORD; /* record descriptor */ - buf[1] = (byte) ((len & 0x00ff) >> 8); /* high byte of bytecount */ - buf[2] = (byte) (len & 0xff00); /* low byte of bytecount */ - out.write(buf, 0, len); - } - - /** - * Returns the compressed form of the given byte array. - * The first 3 bytes are left free for header information. - */ - byte[] compress(byte[] b, int off, int len) - { - byte[] buf = new byte[len]; - byte last = 0; - int pos = 0, raw_count = 0, rep_count = 1; - for (int i = off; i < len; i++) - { - byte c = b[i]; - if (i > off && c == last) // compress - { - if (raw_count > 0) // flush raw bytes to buf - { - // need to add raw_count+1 bytes - if (pos + (raw_count + 1) > buf.length) - { - buf = realloc(buf, len); - } - pos = flush_raw(buf, pos, b, (i - raw_count) - 1, - raw_count); - raw_count = 0; - } - rep_count++; // keep looking for same byte - } - else - { - if (rep_count > 1) // flush compressed bytes to buf - { - // need to add 2 bytes - if (pos + 2 > buf.length) - { - buf = realloc(buf, len); - } - pos = flush_compressed(buf, pos, rep_count, last); - rep_count = 1; - } - raw_count++; // keep looking for raw bytes - } - if (rep_count == 127) // flush compressed bytes - { - // need to add 2 bytes - if (pos + 2 > buf.length) - { - buf = realloc(buf, len); - } - pos = flush_compressed(buf, pos, rep_count, last); - rep_count = 1; - } - if (raw_count == 127) // flush raw bytes - { - // need to add raw_count+1 bytes - if (pos + (raw_count + 1) > buf.length) - { - buf = realloc(buf, len); - } - pos = flush_raw(buf, pos, b, (i - raw_count), raw_count); - raw_count = 0; - } - last = c; - } - if (rep_count > 1) // flush compressed bytes - { - // need to add 2 bytes - if (pos + 2 > buf.length) - { - buf = realloc(buf, len); - } - pos = flush_compressed(buf, pos, rep_count, last); - rep_count = 1; - } - if (raw_count > 0) // flush raw bytes - { - // need to add raw_count+1 bytes - if (pos + (raw_count + 1) > buf.length) - { - buf = realloc(buf, len); - } - pos = flush_raw(buf, pos, b, (len - raw_count), raw_count); - raw_count = 0; - } - byte[] ret = new byte[pos + 3]; - System.arraycopy(buf, 0, ret, 3, pos); - return ret; - } - - int flush_compressed(byte[] buf, int pos, int count, byte c) - { - buf[pos++] = (byte) (0x80 | count); - buf[pos++] = c; - return pos; - } - - int flush_raw(byte[] buf, int pos, byte[] src, int off, int len) - { - buf[pos++] = (byte) len; - System.arraycopy(src, off, buf, pos, len); - return pos + len; - } - - byte[] realloc(byte[] buf, int len) - { - byte[] ret = new byte[buf.length + len]; - System.arraycopy(buf, 0, ret, 0, buf.length); - return ret; - } - - public void close() - throws IOException - { - byte[] buf = new byte[] - { - EOF, /* eof descriptor */ - 0x00, 0x00 /* no bytes */ - }; - out.write(buf, 0, 3); - out.close(); - } - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/DTP.java b/libjava/gnu/java/net/protocol/ftp/DTP.java deleted file mode 100644 index 25580af403a..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/DTP.java +++ /dev/null @@ -1,92 +0,0 @@ -/* DTP.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; - -/** - * An FTP data transfer process. - * - * @author Chris Burdess (dog@gnu.org) - */ -interface DTP -{ - - /** - * Returns an input stream from which a remote file can be read. - */ - InputStream getInputStream() - throws IOException; - - /** - * Returns an output stream to which a local file can be written for - * upload. - */ - OutputStream getOutputStream() - throws IOException; - - /** - * Sets the transfer mode to be used with this DTP. - */ - void setTransferMode(int mode); - - /** - * Marks this DTP completed. - * When the current transfer has finished, any resources will be released. - */ - void complete(); - - /** - * Aborts any current transfer and releases all resources held by this - * DTP. - * @return true if a transfer was interrupted, false otherwise - */ - boolean abort(); - - /** - * Used to notify the DTP that its current transfer is complete. - * This occurs either when end-of-stream is reached or a 226 response is - * received. - */ - void transferComplete(); - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/DTPInputStream.java b/libjava/gnu/java/net/protocol/ftp/DTPInputStream.java deleted file mode 100644 index 363a5590fbb..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/DTPInputStream.java +++ /dev/null @@ -1,88 +0,0 @@ -/* DTPInputStream.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import java.io.FilterInputStream; -import java.io.IOException; -import java.io.InputStream; - -/** - * An input stream that notifies a DTP on completion. - * - * @author Chris Burdess (dog@gnu.org) - */ -abstract class DTPInputStream - extends FilterInputStream -{ - - DTP dtp; - boolean transferComplete; - - /** - * Constructor. - * @param dtp the controlling data transfer process - * @param in the underlying socket stream - */ - DTPInputStream (DTP dtp, InputStream in) - { - super(in); - this.dtp = dtp; - transferComplete = false; - } - - /** - * Marks this input stream complete. - * This is called by the DTP. - */ - void setTransferComplete(boolean flag) - { - transferComplete = flag; - } - - /** - * Notifies the controlling DTP that this stream has completed transfer. - */ - public void close() - throws IOException - { - dtp.transferComplete(); - } - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/DTPOutputStream.java b/libjava/gnu/java/net/protocol/ftp/DTPOutputStream.java deleted file mode 100644 index 83f0be1e30d..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/DTPOutputStream.java +++ /dev/null @@ -1,85 +0,0 @@ -/* DTPOutputStream.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import java.io.FilterOutputStream; -import java.io.IOException; -import java.io.OutputStream; - -/** - * An output stream that notifies a DTP on end of stream. - * - * @author Chris Burdess (dog@gnu.org) - */ -abstract class DTPOutputStream extends FilterOutputStream -{ - - DTP dtp; - boolean transferComplete; - - /** - * Constructor. - * @param dtp the controlling data transfer process - * @param out the socket output stream - */ - DTPOutputStream (DTP dtp, OutputStream out) - { - super (out); - this.dtp = dtp; - transferComplete = false; - } - - /** - * Tells this stream whether transfer has completed or not. - * @param flag true if the process has completed, false otherwise - */ - void setTransferComplete (boolean flag) - { - transferComplete = flag; - } - - /** - * Notifies the controlling DTP that this stream has been terminated. - */ - public void close () throws IOException - { - dtp.transferComplete (); - } - -} diff --git a/libjava/gnu/java/net/protocol/ftp/FTPConnection.java b/libjava/gnu/java/net/protocol/ftp/FTPConnection.java deleted file mode 100644 index d0f48727cfa..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/FTPConnection.java +++ /dev/null @@ -1,1348 +0,0 @@ -/* FTPConnection.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import gnu.java.net.CRLFInputStream; -import gnu.java.net.CRLFOutputStream; -import gnu.java.net.EmptyX509TrustManager; -import gnu.java.net.LineInputStream; - -import java.io.BufferedInputStream; -import java.io.BufferedOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.net.BindException; -import java.net.InetAddress; -import java.net.InetSocketAddress; -import java.net.ProtocolException; -import java.net.Socket; -import java.net.UnknownHostException; -import java.security.GeneralSecurityException; -import java.util.ArrayList; -import java.util.List; - -import javax.net.ssl.SSLContext; -import javax.net.ssl.SSLSocket; -import javax.net.ssl.SSLSocketFactory; -import javax.net.ssl.TrustManager; - -/** - * An FTP client connection, or PI. - * This implements RFC 959, with the following exceptions: - *
    - *
  • STAT, HELP, SITE, SMNT, and ACCT commands are not supported.
  • - *
  • the TYPE command does not allow alternatives to the default bytesize - * (Non-print), and local bytesize is not supported.
  • - *
- * - * @author Chris Burdess (dog@gnu.org) - */ -public class FTPConnection -{ - - /** - * The default FTP transmission control port. - */ - public static final int FTP_PORT = 21; - - /** - * The FTP data port. - */ - public static final int FTP_DATA_PORT = 20; - - // -- FTP vocabulary -- - protected static final String USER = "USER"; - protected static final String PASS = "PASS"; - protected static final String ACCT = "ACCT"; - protected static final String CWD = "CWD"; - protected static final String CDUP = "CDUP"; - protected static final String SMNT = "SMNT"; - protected static final String REIN = "REIN"; - protected static final String QUIT = "QUIT"; - - protected static final String PORT = "PORT"; - protected static final String PASV = "PASV"; - protected static final String TYPE = "TYPE"; - protected static final String STRU = "STRU"; - protected static final String MODE = "MODE"; - - protected static final String RETR = "RETR"; - protected static final String STOR = "STOR"; - protected static final String STOU = "STOU"; - protected static final String APPE = "APPE"; - protected static final String ALLO = "ALLO"; - protected static final String REST = "REST"; - protected static final String RNFR = "RNFR"; - protected static final String RNTO = "RNTO"; - protected static final String ABOR = "ABOR"; - protected static final String DELE = "DELE"; - protected static final String RMD = "RMD"; - protected static final String MKD = "MKD"; - protected static final String PWD = "PWD"; - protected static final String LIST = "LIST"; - protected static final String NLST = "NLST"; - protected static final String SITE = "SITE"; - protected static final String SYST = "SYST"; - protected static final String STAT = "STAT"; - protected static final String HELP = "HELP"; - protected static final String NOOP = "NOOP"; - - protected static final String AUTH = "AUTH"; - protected static final String PBSZ = "PBSZ"; - protected static final String PROT = "PROT"; - protected static final String CCC = "CCC"; - protected static final String TLS = "TLS"; - - public static final int TYPE_ASCII = 1; - public static final int TYPE_EBCDIC = 2; - public static final int TYPE_BINARY = 3; - - public static final int STRUCTURE_FILE = 1; - public static final int STRUCTURE_RECORD = 2; - public static final int STRUCTURE_PAGE = 3; - - public static final int MODE_STREAM = 1; - public static final int MODE_BLOCK = 2; - public static final int MODE_COMPRESSED = 3; - - // -- Telnet constants -- - private static final String US_ASCII = "US-ASCII"; - - /** - * The socket used to communicate with the server. - */ - protected Socket socket; - - /** - * The socket input stream. - */ - protected LineInputStream in; - - /** - * The socket output stream. - */ - protected CRLFOutputStream out; - - /** - * The timeout when attempting to connect a socket. - */ - protected int connectionTimeout; - - /** - * The read timeout on sockets. - */ - protected int timeout; - - /** - * If true, print debugging information. - */ - protected boolean debug; - - /** - * The current data transfer process in use by this connection. - */ - protected DTP dtp; - - /** - * The current representation type. - */ - protected int representationType = TYPE_ASCII; - - /** - * The current file structure type. - */ - protected int fileStructure = STRUCTURE_FILE; - - /** - * The current transfer mode. - */ - protected int transferMode = MODE_STREAM; - - /** - * If true, use passive mode. - */ - protected boolean passive = false; - - /** - * Creates a new connection to the server using the default port. - * @param hostname the hostname of the server to connect to - */ - public FTPConnection(String hostname) - throws UnknownHostException, IOException - { - this(hostname, -1, 0, 0, false); - } - - /** - * Creates a new connection to the server. - * @param hostname the hostname of the server to connect to - * @param port the port to connect to(if <=0, use default port) - */ - public FTPConnection(String hostname, int port) - throws UnknownHostException, IOException - { - this(hostname, port, 0, 0, false); - } - - /** - * Creates a new connection to the server. - * @param hostname the hostname of the server to connect to - * @param port the port to connect to(if <=0, use default port) - * @param connectionTimeout the connection timeout, in milliseconds - * @param timeout the I/O timeout, in milliseconds - * @param debug print debugging information - */ - public FTPConnection(String hostname, int port, - int connectionTimeout, int timeout, boolean debug) - throws UnknownHostException, IOException - { - this.connectionTimeout = connectionTimeout; - this.timeout = timeout; - this.debug = debug; - if (port <= 0) - { - port = FTP_PORT; - } - - // Set up socket - socket = new Socket(); - InetSocketAddress address = new InetSocketAddress(hostname, port); - if (connectionTimeout > 0) - { - socket.connect(address, connectionTimeout); - } - else - { - socket.connect(address); - } - if (timeout > 0) - { - socket.setSoTimeout(timeout); - } - - InputStream in = socket.getInputStream(); - in = new BufferedInputStream(in); - in = new CRLFInputStream(in); - this.in = new LineInputStream(in); - OutputStream out = socket.getOutputStream(); - out = new BufferedOutputStream(out); - this.out = new CRLFOutputStream(out); - - // Read greeting - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 220: // hello - break; - default: - throw new FTPException(response); - } - } - - /** - * Authenticate using the specified username and password. - * If the username suffices for the server, the password will not be used - * and may be null. - * @param username the username - * @param password the optional password - * @return true on success, false otherwise - */ - public boolean authenticate(String username, String password) - throws IOException - { - String cmd = USER + ' ' + username; - send(cmd); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 230: // User logged in - return true; - case 331: // User name okay, need password - break; - case 332: // Need account for login - case 530: // No such user - return false; - default: - throw new FTPException(response); - } - cmd = PASS + ' ' + password; - send(cmd); - response = getResponse(); - switch (response.getCode()) - { - case 230: // User logged in - case 202: // Superfluous - return true; - case 332: // Need account for login - case 530: // Bad password - return false; - default: - throw new FTPException(response); - } - } - - /** - * Negotiates TLS over the current connection. - * See IETF draft-murray-auth-ftp-ssl-15.txt for details. - * @param confidential whether to provide confidentiality for the - * connection - */ - public boolean starttls(boolean confidential) - throws IOException - { - return starttls(confidential, new EmptyX509TrustManager()); - } - - /** - * Negotiates TLS over the current connection. - * See IETF draft-murray-auth-ftp-ssl-15.txt for details. - * @param confidential whether to provide confidentiality for the - * connection - * @param tm the trust manager used to validate the server certificate. - */ - public boolean starttls(boolean confidential, TrustManager tm) - throws IOException - { - try - { - // Use SSLSocketFactory to negotiate a TLS session and wrap the - // current socket. - SSLContext context = SSLContext.getInstance("TLS"); - // We don't require strong validation of the server certificate - TrustManager[] trust = new TrustManager[] { tm }; - context.init(null, trust, null); - SSLSocketFactory factory = context.getSocketFactory(); - - send(AUTH + ' ' + TLS); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 500: - case 502: - case 504: - case 534: - case 431: - return false; - case 234: - break; - default: - throw new FTPException(response); - } - - String hostname = socket.getInetAddress().getHostName(); - int port = socket.getPort(); - SSLSocket ss = - (SSLSocket) factory.createSocket(socket, hostname, port, true); - String[] protocols = { "TLSv1", "SSLv3" }; - ss.setEnabledProtocols(protocols); - ss.setUseClientMode(true); - ss.startHandshake(); - - // PBSZ:PROT sequence - send(PBSZ + ' ' + Integer.MAX_VALUE); - response = getResponse(); - switch (response.getCode()) - { - case 501: // syntax error - case 503: // not authenticated - return false; - case 200: - break; - default: - throw new FTPException(response); - } - send(PROT + ' ' +(confidential ? 'P' : 'C')); - response = getResponse(); - switch (response.getCode()) - { - case 503: // not authenticated - case 504: // invalid level - case 536: // level not supported - return false; - case 200: - break; - default: - throw new FTPException(response); - } - - if (confidential) - { - // Set up streams - InputStream in = ss.getInputStream(); - in = new BufferedInputStream(in); - in = new CRLFInputStream(in); - this.in = new LineInputStream(in); - OutputStream out = ss.getOutputStream(); - out = new BufferedOutputStream(out); - this.out = new CRLFOutputStream(out); - } - return true; - } - catch (GeneralSecurityException e) - { - return false; - } - } - - /** - * Changes directory to the specified path. - * @param path an absolute or relative pathname - * @return true on success, false if the specified path does not exist - */ - public boolean changeWorkingDirectory(String path) - throws IOException - { - String cmd = CWD + ' ' + path; - send(cmd); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 250: - return true; - case 550: - return false; - default: - throw new FTPException(response); - } - } - - /** - * Changes directory to the parent of the current working directory. - * @return true on success, false otherwise - */ - public boolean changeToParentDirectory() - throws IOException - { - send(CDUP); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 250: - return true; - case 550: - return false; - default: - throw new FTPException(response); - } - } - - /** - * Terminates an authenticated login. - * If file transfer is in progress, it remains active for result response - * only. - */ - public void reinitialize() - throws IOException - { - send(REIN); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 220: - if (dtp != null) - { - dtp.complete(); - dtp = null; - } - break; - default: - throw new FTPException(response); - } - } - - /** - * Terminates the control connection. - * The file transfer connection remains open for result response only. - * This connection is invalid and no further commands may be issued. - */ - public void logout() - throws IOException - { - send(QUIT); - try - { - getResponse(); // not required - } - catch (IOException e) - { - } - if (dtp != null) - { - dtp.complete(); - dtp = null; - } - try - { - socket.close(); - } - catch (IOException e) - { - } - } - - /** - * Initialise the data transfer process. - */ - protected void initialiseDTP() - throws IOException - { - if (dtp != null) - { - dtp.complete(); - dtp = null; - } - - InetAddress localhost = socket.getLocalAddress(); - if (passive) - { - send(PASV); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 227: - String message = response.getMessage(); - try - { - int start = message.indexOf(','); - char c = message.charAt(start - 1); - while (c >= 0x30 && c <= 0x39) - { - c = message.charAt((--start) - 1); - } - int mid1 = start; - for (int i = 0; i < 4; i++) - { - mid1 = message.indexOf(',', mid1 + 1); - } - int mid2 = message.indexOf(',', mid1 + 1); - if (mid1 == -1 || mid2 < mid1) - { - throw new ProtocolException("Malformed 227: " + - message); - } - int end = mid2; - c = message.charAt(end + 1); - while (c >= 0x30 && c <= 0x39) - { - c = message.charAt((++end) + 1); - } - - String address = - message.substring(start, mid1).replace(',', '.'); - int port_hi = - Integer.parseInt(message.substring(mid1 + 1, mid2)); - int port_lo = - Integer.parseInt(message.substring(mid2 + 1, end + 1)); - int port = (port_hi << 8) | port_lo; - - /*System.out.println("Entering passive mode: " + address + - ":" + port);*/ - dtp = new PassiveModeDTP(address, port, localhost, - connectionTimeout, timeout); - break; - } - catch (ArrayIndexOutOfBoundsException e) - { - throw new ProtocolException(e.getMessage() + ": " + - message); - } - catch (NumberFormatException e) - { - throw new ProtocolException(e.getMessage() + ": " + - message); - } - default: - throw new FTPException(response); - } - } - else - { - // Get the local port - int port = socket.getLocalPort() + 1; - int tries = 0; - // Bind the active mode DTP - while (dtp == null) - { - try - { - dtp = new ActiveModeDTP(localhost, port, - connectionTimeout, timeout); - /*System.out.println("Listening on: " + port);*/ - } - catch (BindException e) - { - port++; - tries++; - if (tries > 9) - { - throw e; - } - } - } - - // Send PORT command - StringBuffer buf = new StringBuffer(PORT); - buf.append(' '); - // Construct the address/port string form - byte[] address = localhost.getAddress(); - for (int i = 0; i < address.length; i++) - { - int a =(int) address[i]; - if (a < 0) - { - a += 0x100; - } - buf.append(a); - buf.append(','); - } - int port_hi =(port & 0xff00) >> 8; - int port_lo =(port & 0x00ff); - buf.append(port_hi); - buf.append(','); - buf.append(port_lo); - send(buf.toString()); - // Get response - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 200: // OK - break; - default: - dtp.abort(); - dtp = null; - throw new FTPException(response); - } - } - dtp.setTransferMode(transferMode); - } - - /** - * Set passive mode. - * @param flag true if we should use passive mode, false otherwise - */ - public void setPassive(boolean flag) - throws IOException - { - if (passive != flag) - { - passive = flag; - initialiseDTP(); - } - } - - /** - * Returns the current representation type of the transfer data. - * @return TYPE_ASCII, TYPE_EBCDIC, or TYPE_BINARY - */ - public int getRepresentationType() - { - return representationType; - } - - /** - * Sets the desired representation type of the transfer data. - * @param type TYPE_ASCII, TYPE_EBCDIC, or TYPE_BINARY - */ - public void setRepresentationType(int type) - throws IOException - { - StringBuffer buf = new StringBuffer(TYPE); - buf.append(' '); - switch (type) - { - case TYPE_ASCII: - buf.append('A'); - break; - case TYPE_EBCDIC: - buf.append('E'); - break; - case TYPE_BINARY: - buf.append('I'); - break; - default: - throw new IllegalArgumentException(Integer.toString(type)); - } - //buf.append(' '); - //buf.append('N'); - send(buf.toString()); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 200: - representationType = type; - break; - default: - throw new FTPException(response); - } - } - - /** - * Returns the current file structure type. - * @return STRUCTURE_FILE, STRUCTURE_RECORD, or STRUCTURE_PAGE - */ - public int getFileStructure() - { - return fileStructure; - } - - /** - * Sets the desired file structure type. - * @param structure STRUCTURE_FILE, STRUCTURE_RECORD, or STRUCTURE_PAGE - */ - public void setFileStructure(int structure) - throws IOException - { - StringBuffer buf = new StringBuffer(STRU); - buf.append(' '); - switch (structure) - { - case STRUCTURE_FILE: - buf.append('F'); - break; - case STRUCTURE_RECORD: - buf.append('R'); - break; - case STRUCTURE_PAGE: - buf.append('P'); - break; - default: - throw new IllegalArgumentException(Integer.toString(structure)); - } - send(buf.toString()); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 200: - fileStructure = structure; - break; - default: - throw new FTPException(response); - } - } - - /** - * Returns the current transfer mode. - * @return MODE_STREAM, MODE_BLOCK, or MODE_COMPRESSED - */ - public int getTransferMode() - { - return transferMode; - } - - /** - * Sets the desired transfer mode. - * @param mode MODE_STREAM, MODE_BLOCK, or MODE_COMPRESSED - */ - public void setTransferMode(int mode) - throws IOException - { - StringBuffer buf = new StringBuffer(MODE); - buf.append(' '); - switch (mode) - { - case MODE_STREAM: - buf.append('S'); - break; - case MODE_BLOCK: - buf.append('B'); - break; - case MODE_COMPRESSED: - buf.append('C'); - break; - default: - throw new IllegalArgumentException(Integer.toString(mode)); - } - send(buf.toString()); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 200: - transferMode = mode; - if (dtp != null) - { - dtp.setTransferMode(mode); - } - break; - default: - throw new FTPException(response); - } - } - - /** - * Retrieves the specified file. - * @param filename the filename of the file to retrieve - * @return an InputStream containing the file content - */ - public InputStream retrieve(String filename) - throws IOException - { - if (dtp == null || transferMode == MODE_STREAM) - { - initialiseDTP(); - } - /* - int size = -1; - String cmd = SIZE + ' ' + filename; - send(cmd); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 213: - size = Integer.parseInt(response.getMessage()); - break; - case 550: // File not found - default: - throw new FTPException(response); - } - */ - String cmd = RETR + ' ' + filename; - send(cmd); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 125: // Data connection already open; transfer starting - case 150: // File status okay; about to open data connection - return dtp.getInputStream(); - default: - throw new FTPException(response); - } - } - - /** - * Returns a stream for uploading a file. - * If a file with the same filename already exists on the server, it will - * be overwritten. - * @param filename the name of the file to save the content as - * @return an OutputStream to write the file data to - */ - public OutputStream store(String filename) - throws IOException - { - if (dtp == null || transferMode == MODE_STREAM) - { - initialiseDTP(); - } - String cmd = STOR + ' ' + filename; - send(cmd); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 125: // Data connection already open; transfer starting - case 150: // File status okay; about to open data connection - return dtp.getOutputStream(); - default: - throw new FTPException(response); - } - } - - /** - * Returns a stream for uploading a file. - * If a file with the same filename already exists on the server, the - * content specified will be appended to the existing file. - * @param filename the name of the file to save the content as - * @return an OutputStream to write the file data to - */ - public OutputStream append(String filename) - throws IOException - { - if (dtp == null || transferMode == MODE_STREAM) - { - initialiseDTP(); - } - String cmd = APPE + ' ' + filename; - send(cmd); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 125: // Data connection already open; transfer starting - case 150: // File status okay; about to open data connection - return dtp.getOutputStream(); - default: - throw new FTPException(response); - } - } - - /** - * This command may be required by some servers to reserve sufficient - * storage to accommodate the new file to be transferred. - * It should be immediately followed by a store or - * append. - * @param size the number of bytes of storage to allocate - */ - public void allocate(long size) - throws IOException - { - String cmd = ALLO + ' ' + size; - send(cmd); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 200: // OK - case 202: // Superfluous - break; - default: - throw new FTPException(response); - } - } - - /** - * Renames a file. - * @param oldName the current name of the file - * @param newName the new name - * @return true if successful, false otherwise - */ - public boolean rename(String oldName, String newName) - throws IOException - { - String cmd = RNFR + ' ' + oldName; - send(cmd); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 450: // File unavailable - case 550: // File not found - return false; - case 350: // Pending - break; - default: - throw new FTPException(response); - } - cmd = RNTO + ' ' + newName; - send(cmd); - response = getResponse(); - switch (response.getCode()) - { - case 250: // OK - return true; - case 450: - case 550: - return false; - default: - throw new FTPException(response); - } - } - - /** - * Aborts the transfer in progress. - * @return true if a transfer was in progress, false otherwise - */ - public boolean abort() - throws IOException - { - send(ABOR); - FTPResponse response = getResponse(); - // Abort client DTP - if (dtp != null) - { - dtp.abort(); - } - switch (response.getCode()) - { - case 226: // successful abort - return false; - case 426: // interrupted - response = getResponse(); - if (response.getCode() == 226) - { - return true; - } - // Otherwise fall through to throw exception - default: - throw new FTPException(response); - } - } - - /** - * Causes the file specified to be deleted at the server site. - * @param filename the file to delete - */ - public boolean delete(String filename) - throws IOException - { - String cmd = DELE + ' ' + filename; - send(cmd); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 250: // OK - return true; - case 450: // File unavailable - case 550: // File not found - return false; - default: - throw new FTPException(response); - } - } - - /** - * Causes the directory specified to be deleted. - * This may be an absolute or relative pathname. - * @param pathname the directory to delete - */ - public boolean removeDirectory(String pathname) - throws IOException - { - String cmd = RMD + ' ' + pathname; - send(cmd); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 250: // OK - return true; - case 550: // File not found - return false; - default: - throw new FTPException(response); - } - } - - /** - * Causes the directory specified to be created at the server site. - * This may be an absolute or relative pathname. - * @param pathname the directory to create - */ - public boolean makeDirectory(String pathname) - throws IOException - { - String cmd = MKD + ' ' + pathname; - send(cmd); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 257: // Directory created - return true; - case 550: // File not found - return false; - default: - throw new FTPException(response); - } - } - - /** - * Returns the current working directory. - */ - public String getWorkingDirectory() - throws IOException - { - send(PWD); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 257: - String message = response.getMessage(); - if (message.charAt(0) == '"') - { - int end = message.indexOf('"', 1); - if (end == -1) - { - throw new ProtocolException(message); - } - return message.substring(1, end); - } - else - { - int end = message.indexOf(' '); - if (end == -1) - { - return message; - } - else - { - return message.substring(0, end); - } - } - default: - throw new FTPException(response); - } - } - - /** - * Returns a listing of information about the specified pathname. - * If the pathname specifies a directory or other group of files, the - * server should transfer a list of files in the specified directory. - * If the pathname specifies a file then the server should send current - * information on the file. A null argument implies the user's - * current working or default directory. - * @param pathname the context pathname, or null - */ - public InputStream list(String pathname) - throws IOException - { - if (dtp == null || transferMode == MODE_STREAM) - { - initialiseDTP(); - } - if (pathname == null) - { - send(LIST); - } - else - { - String cmd = LIST + ' ' + pathname; - send(cmd); - } - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 125: // Data connection already open; transfer starting - case 150: // File status okay; about to open data connection - return dtp.getInputStream(); - default: - throw new FTPException(response); - } - } - - /** - * Returns a directory listing. The pathname should specify a - * directory or other system-specific file group descriptor; a null - * argument implies the user's current working or default directory. - * @param pathname the directory pathname, or null - * @return a list of filenames(strings) - */ - public List nameList(String pathname) - throws IOException - { - if (dtp == null || transferMode == MODE_STREAM) - { - initialiseDTP(); - } - if (pathname == null) - { - send(NLST); - } - else - { - String cmd = NLST + ' ' + pathname; - send(cmd); - } - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 125: // Data connection already open; transfer starting - case 150: // File status okay; about to open data connection - InputStream in = dtp.getInputStream(); - in = new BufferedInputStream(in); - in = new CRLFInputStream(in); // TODO ensure that TYPE is correct - LineInputStream li = new LineInputStream(in); - List ret = new ArrayList(); - for (String line = li.readLine(); - line != null; - line = li.readLine()) - { - ret.add(line); - } - li.close(); - return ret; - default: - throw new FTPException(response); - } - } - - /** - * Returns the type of operating system at the server. - */ - public String system() - throws IOException - { - send(SYST); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 215: - String message = response.getMessage(); - int end = message.indexOf(' '); - if (end == -1) - { - return message; - } - else - { - return message.substring(0, end); - } - default: - throw new FTPException(response); - } - } - - /** - * Does nothing. - * This method can be used to ensure that the connection does not time - * out. - */ - public void noop() - throws IOException - { - send(NOOP); - FTPResponse response = getResponse(); - switch (response.getCode()) - { - case 200: - break; - default: - throw new FTPException(response); - } - } - - // -- I/O -- - - /** - * Sends the specified command line to the server. - * The CRLF sequence is automatically appended. - * @param cmd the command line to send - */ - protected void send(String cmd) - throws IOException - { - byte[] data = cmd.getBytes(US_ASCII); - out.write(data); - out.writeln(); - out.flush(); - } - - /** - * Reads the next response from the server. - * If the server sends the "transfer complete" code, this is handled here, - * and the next response is passed to the caller. - */ - protected FTPResponse getResponse() - throws IOException - { - FTPResponse response = readResponse(); - if (response.getCode() == 226) - { - if (dtp != null) - { - dtp.transferComplete(); - } - response = readResponse(); - } - return response; - } - - /** - * Reads and parses the next response from the server. - */ - protected FTPResponse readResponse() - throws IOException - { - String line = in.readLine(); - if (line == null) - { - throw new ProtocolException( "EOF"); - } - if (line.length() < 4) - { - throw new ProtocolException(line); - } - int code = parseCode(line); - if (code == -1) - { - throw new ProtocolException(line); - } - char c = line.charAt(3); - if (c == ' ') - { - return new FTPResponse(code, line.substring(4)); - } - else if (c == '-') - { - StringBuffer buf = new StringBuffer(line.substring(4)); - buf.append('\n'); - while(true) - { - line = in.readLine(); - if (line == null) - { - throw new ProtocolException("EOF"); - } - if (line.length() >= 4 && - line.charAt(3) == ' ' && - parseCode(line) == code) - { - return new FTPResponse(code, line.substring(4), - buf.toString()); - } - else - { - buf.append(line); - buf.append('\n'); - } - } - } - else - { - throw new ProtocolException(line); - } - } - - /* - * Parses the 3-digit numeric code at the beginning of the given line. - * Returns -1 on failure. - */ - static final int parseCode(String line) - { - char[] c = { line.charAt(0), line.charAt(1), line.charAt(2) }; - int ret = 0; - for (int i = 0; i < 3; i++) - { - int digit =((int) c[i]) - 0x30; - if (digit < 0 || digit > 9) - { - return -1; - } - // Computing integer powers is way too expensive in Java! - switch (i) - { - case 0: - ret +=(100 * digit); - break; - case 1: - ret +=(10 * digit); - break; - case 2: - ret += digit; - break; - } - } - return ret; - } - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/FTPException.java b/libjava/gnu/java/net/protocol/ftp/FTPException.java deleted file mode 100644 index 14ad3813f85..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/FTPException.java +++ /dev/null @@ -1,76 +0,0 @@ -/* FTPException.java -- - Copyright (C) 2003. 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.java.net.protocol.ftp; - -import java.io.IOException; - -/** - * An FTP control exception. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class FTPException - extends IOException -{ - - /** - * The response that provoked this exception. - */ - protected final FTPResponse response; - - /** - * Constructs a new FTP exception. - * @param response the response that provoked this exception - */ - public FTPException(FTPResponse response) - { - super(response.getMessage()); - this.response = response; - } - - /** - * Returns the response that provoked this exception. - */ - public FTPResponse getResponse() - { - return response; - } - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/FTPResponse.java b/libjava/gnu/java/net/protocol/ftp/FTPResponse.java deleted file mode 100644 index ec72c732c1c..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/FTPResponse.java +++ /dev/null @@ -1,112 +0,0 @@ -/* FTPResponse.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -/** - * An FTP control response. - * - * @author Chris Burdess (dog@gnu.org) - */ -public final class FTPResponse -{ - - /** - * The 3-digit status code. - */ - protected final int code; - - /** - * The human-readable message. - */ - protected final String message; - - /** - * Multiline data, if present. - */ - protected final String data; - - /** - * Constructs a new FTP response. - * @param code the status code - * @param message the message - */ - public FTPResponse(int code, String message) - { - this(code, message, null); - } - - /** - * Constructs a new multiline FTP response. - * @param code the status code - * @param message the message - * @param data multiline data - */ - public FTPResponse(int code, String message, String data) - { - this.code = code; - this.message = message; - this.data = data; - } - - /** - * Returns the 3-digit status code. - */ - public int getCode() - { - return code; - } - - /** - * Returns the human-readable message. - */ - public String getMessage() - { - return message; - } - - /** - * Returns the multiline data, or null if there was no such data. - */ - public String getData() - { - return data; - } - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/FTPURLConnection.java b/libjava/gnu/java/net/protocol/ftp/FTPURLConnection.java deleted file mode 100644 index 62c40f19e04..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/FTPURLConnection.java +++ /dev/null @@ -1,398 +0,0 @@ -/* FTPURLConnection.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import gnu.java.net.GetLocalHostAction; -import gnu.java.security.action.GetPropertyAction; - -import java.io.FileNotFoundException; -import java.io.FilterInputStream; -import java.io.FilterOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.net.InetAddress; -import java.net.URL; -import java.net.URLConnection; -import java.security.AccessController; -import java.security.PrivilegedAction; -import java.util.HashMap; -import java.util.Map; - -/** - * An FTP URL connection. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class FTPURLConnection - extends URLConnection -{ - - /** - * The connection managing the protocol exchange. - */ - protected FTPConnection connection; - - protected boolean passive; - protected int representationType; - protected int fileStructure; - protected int transferMode; - - /** - * Constructs an FTP connection to the specified URL. - * @param url the URL - */ - public FTPURLConnection(URL url) - { - super(url); - passive = true; - representationType = FTPConnection.TYPE_BINARY; - fileStructure = -1; - transferMode = -1; - } - - /** - * Establishes the connection. - */ - public void connect() - throws IOException - { - if (connected) - { - return; - } - String host = url.getHost(); - int port = url.getPort(); - String username = url.getUserInfo(); - String password = null; - if (username != null) - { - int ci = username.indexOf(':'); - if (ci != -1) - { - password = username.substring(ci + 1); - username = username.substring(0, ci); - } - } - else - { - username = "anonymous"; - PrivilegedAction a = new GetPropertyAction("user.name"); - String systemUsername =(String) AccessController.doPrivileged(a); - a = new GetLocalHostAction(); - InetAddress localhost =(InetAddress) AccessController.doPrivileged(a); - password = systemUsername + "@" + - ((localhost == null) ? "localhost" : localhost.getHostName()); - } - connection = new FTPConnection(host, port); - if (!connection.authenticate(username, password)) - { - throw new SecurityException("Authentication failed"); - } - connection.setPassive(passive); - if (representationType != -1) - { - connection.setRepresentationType(representationType); - } - if (fileStructure != -1) - { - connection.setFileStructure(fileStructure); - } - if (transferMode != -1) - { - connection.setTransferMode(transferMode); - } - } - - /** - * This connection supports doInput. - */ - public void setDoInput(boolean doinput) - { - doInput = doinput; - } - - /** - * This connection supports doOutput. - */ - public void setDoOutput(boolean dooutput) - { - doOutput = dooutput; - } - - /** - * Returns an input stream that reads from this open connection. - */ - public InputStream getInputStream() - throws IOException - { - if (!connected) - { - connect(); - } - String path = url.getPath(); - String filename = null; - int lsi = path.lastIndexOf('/'); - if (lsi != -1) - { - filename = path.substring(lsi + 1); - path = path.substring(0, lsi); - if (!connection.changeWorkingDirectory(path)) - { - throw new FileNotFoundException(path); - } - } - if (filename != null && filename.length() > 0) - { - return this.new ClosingInputStream(connection.retrieve(filename)); - } - else - { - return this.new ClosingInputStream(connection.list(null)); - } - } - - /** - * Returns an output stream that writes to this connection. - */ - public OutputStream getOutputStream() - throws IOException - { - if (!connected) - { - connect(); - } - String dir = url.getPath(); - String filename = url.getFile(); - if (!connection.changeWorkingDirectory(dir)) - { - throw new FileNotFoundException(dir); - } - if (filename != null) - { - return this.new ClosingOutputStream(connection.store(filename)); - } - else - { - throw new FileNotFoundException(filename); - } - } - - public String getRequestProperty(String key) - { - if ("passive".equals(key)) - { - return Boolean.toString(passive); - } - else if ("representationType".equals(key)) - { - switch (representationType) - { - case FTPConnection.TYPE_ASCII: - return "ASCII"; - case FTPConnection.TYPE_EBCDIC: - return "EBCDIC"; - case FTPConnection.TYPE_BINARY: - return "BINARY"; - } - } - else if ("fileStructure".equals(key)) - { - switch (fileStructure) - { - case FTPConnection.STRUCTURE_FILE: - return "FILE"; - case FTPConnection.STRUCTURE_RECORD: - return "RECORD"; - case FTPConnection.STRUCTURE_PAGE: - return "PAGE"; - } - } - else if ("transferMode".equals(key)) - { - switch (transferMode) - { - case FTPConnection.MODE_STREAM: - return "STREAM"; - case FTPConnection.MODE_BLOCK: - return "BLOCK"; - case FTPConnection.MODE_COMPRESSED: - return "COMPRESSED"; - } - } - return null; - } - - public Map getRequestProperties() - { - Map map = new HashMap(); - addRequestPropertyValue(map, "passive"); - addRequestPropertyValue(map, "representationType"); - addRequestPropertyValue(map, "fileStructure"); - addRequestPropertyValue(map, "transferMode"); - return map; - } - - private void addRequestPropertyValue(Map map, String key) - { - String value = getRequestProperty(key); - map.put(key, value); - } - - public void setRequestProperty(String key, String value) - { - if (connected) - { - throw new IllegalStateException(); - } - if ("passive".equals(key)) - { - passive = Boolean.valueOf(value).booleanValue(); - } - else if ("representationType".equals(key)) - { - if ("A".equalsIgnoreCase(value) || - "ASCII".equalsIgnoreCase(value)) - { - representationType = FTPConnection.TYPE_ASCII; - } - else if ("E".equalsIgnoreCase(value) || - "EBCDIC".equalsIgnoreCase(value)) - { - representationType = FTPConnection.TYPE_EBCDIC; - } - else if ("I".equalsIgnoreCase(value) || - "BINARY".equalsIgnoreCase(value)) - { - representationType = FTPConnection.TYPE_BINARY; - } - else - { - throw new IllegalArgumentException(value); - } - } - else if ("fileStructure".equals(key)) - { - if ("F".equalsIgnoreCase(value) || - "FILE".equalsIgnoreCase(value)) - { - fileStructure = FTPConnection.STRUCTURE_FILE; - } - else if ("R".equalsIgnoreCase(value) || - "RECORD".equalsIgnoreCase(value)) - { - fileStructure = FTPConnection.STRUCTURE_RECORD; - } - else if ("P".equalsIgnoreCase(value) || - "PAGE".equalsIgnoreCase(value)) - { - fileStructure = FTPConnection.STRUCTURE_PAGE; - } - else - { - throw new IllegalArgumentException(value); - } - } - else if ("transferMode".equals(key)) - { - if ("S".equalsIgnoreCase(value) || - "STREAM".equalsIgnoreCase(value)) - { - transferMode = FTPConnection.MODE_STREAM; - } - else if ("B".equalsIgnoreCase(value) || - "BLOCK".equalsIgnoreCase(value)) - { - transferMode = FTPConnection.MODE_BLOCK; - } - else if ("C".equalsIgnoreCase(value) || - "COMPRESSED".equalsIgnoreCase(value)) - { - transferMode = FTPConnection.MODE_COMPRESSED; - } - else - { - throw new IllegalArgumentException(value); - } - } - } - - public void addRequestProperty(String key, String value) - { - setRequestProperty(key, value); - } - - class ClosingInputStream - extends FilterInputStream - { - - ClosingInputStream(InputStream in) - { - super(in); - } - - public void close() - throws IOException - { - super.close(); - connection.logout(); - } - - } - - class ClosingOutputStream - extends FilterOutputStream - { - - ClosingOutputStream(OutputStream out) - { - super(out); - } - - public void close() - throws IOException - { - super.close(); - connection.logout(); - } - - } - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/Handler.java b/libjava/gnu/java/net/protocol/ftp/Handler.java deleted file mode 100644 index 88491b3c15a..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/Handler.java +++ /dev/null @@ -1,70 +0,0 @@ -/* Handler.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import java.io.IOException; -import java.net.URL; -import java.net.URLConnection; -import java.net.URLStreamHandler; - -/** - * An FTP URL stream handler. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class Handler - extends URLStreamHandler -{ - - protected int getDefaultPort() - { - return FTPConnection.FTP_PORT; - } - - /** - * Returns an FTPURLConnection for the given URL. - */ - public URLConnection openConnection(URL url) - throws IOException - { - return new FTPURLConnection(url); - } - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/PassiveModeDTP.java b/libjava/gnu/java/net/protocol/ftp/PassiveModeDTP.java deleted file mode 100644 index 6f4fd634168..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/PassiveModeDTP.java +++ /dev/null @@ -1,201 +0,0 @@ -/* PassiveModeDTP.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.net.InetAddress; -import java.net.InetSocketAddress; -import java.net.Socket; - -/** - * A passive mode FTP data transfer process. - * This connects to the host specified and proxies the resulting socket's - * input and output streams. - * - * @author Chris Burdess (dog@gnu.org) - */ -final class PassiveModeDTP - implements DTP -{ - - final String address; - final int port; - Socket socket; - DTPInputStream in; - DTPOutputStream out; - boolean completed; - boolean inProgress; - int transferMode; - - PassiveModeDTP(String address, int port, InetAddress localhost, - int connectionTimeout, int timeout) - throws IOException - { - this.address = address; - this.port = port; - completed = false; - inProgress = false; - socket = new Socket(); - InetSocketAddress remote = new InetSocketAddress(address, port); - InetSocketAddress local = new InetSocketAddress(localhost, port + 1); - socket.bind(local); - if (connectionTimeout > 0) - { - socket.connect(remote, connectionTimeout); - } - else - { - socket.connect(remote); - } - if (timeout > 0) - { - socket.setSoTimeout(timeout); - } - } - - /** - * Returns an input stream from which a remote file can be read. - */ - public InputStream getInputStream() - throws IOException - { - if (inProgress) - { - throw new IOException("Transfer in progress"); - } - switch (transferMode) - { - case FTPConnection.MODE_STREAM: - in = new StreamInputStream(this, socket.getInputStream()); - break; - case FTPConnection.MODE_BLOCK: - in = new BlockInputStream(this, socket.getInputStream()); - break; - case FTPConnection.MODE_COMPRESSED: - in = new CompressedInputStream(this, socket.getInputStream()); - break; - default: - throw new IllegalStateException("Invalid transfer mode"); - } - in.setTransferComplete(false); - return in; - } - - /** - * Returns an output stream to which a local file can be written for - * upload. - */ - public OutputStream getOutputStream() - throws IOException - { - if (inProgress) - { - throw new IOException("Transfer in progress"); - } - switch (transferMode) - { - case FTPConnection.MODE_STREAM: - out = new StreamOutputStream(this, socket.getOutputStream()); - break; - case FTPConnection.MODE_BLOCK: - out = new BlockOutputStream(this, socket.getOutputStream()); - break; - case FTPConnection.MODE_COMPRESSED: - out = new CompressedOutputStream(this, socket.getOutputStream()); - break; - default: - throw new IllegalStateException("Invalid transfer mode"); - } - out.setTransferComplete(false); - return out; - } - - public void setTransferMode(int mode) - { - transferMode = mode; - } - - public void complete() - { - completed = true; - if (!inProgress) - { - transferComplete(); - } - } - - public boolean abort() - { - completed = true; - transferComplete(); - return inProgress; - } - - /* - * Called by DTPInputStream or DTPOutputStream when end of - * stream is reached. - */ - public void transferComplete() - { - if (in != null) - { - in.setTransferComplete(true); - } - if (out != null) - { - out.setTransferComplete(true); - } - inProgress = false; - completed = completed ||(transferMode == FTPConnection.MODE_STREAM); - if (completed && socket != null) - { - try - { - socket.close(); - } - catch (IOException e) - { - } - } - } - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/StreamInputStream.java b/libjava/gnu/java/net/protocol/ftp/StreamInputStream.java deleted file mode 100644 index 93eee4e1924..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/StreamInputStream.java +++ /dev/null @@ -1,95 +0,0 @@ -/* StreamInputStream.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import java.io.IOException; -import java.io.InputStream; - -/** - * A DTP input stream that implements the FTP stream data transfer mode. - * - * @author Chris Burdess (dog@gnu.org) - */ -class StreamInputStream - extends DTPInputStream -{ - - StreamInputStream(DTP dtp, InputStream in) - { - super(dtp, in); - } - - public int read() - throws IOException - { - if (transferComplete) - { - return -1; - } - int c = in.read(); - if (c == -1) - { - close(); - } - return c; - } - - public int read(byte[] buf) - throws IOException - { - return read(buf, 0, buf.length); - } - - public int read(byte[] buf, int off, int len) - throws IOException - { - if (transferComplete) - { - return -1; - } - int l = in.read(buf, off, len); - if (l == -1) - { - close(); - } - return l; - } - -} - diff --git a/libjava/gnu/java/net/protocol/ftp/StreamOutputStream.java b/libjava/gnu/java/net/protocol/ftp/StreamOutputStream.java deleted file mode 100644 index a6e28ece3d4..00000000000 --- a/libjava/gnu/java/net/protocol/ftp/StreamOutputStream.java +++ /dev/null @@ -1,85 +0,0 @@ -/* StreamOutputStream.java -- - Copyright (C) 2003, 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.java.net.protocol.ftp; - -import java.io.IOException; -import java.io.OutputStream; - -/** - * A DTP output stream that implements the FTP stream transfer mode. - * - * @author Chris Burdess (dog@gnu.org) - */ -class StreamOutputStream - extends DTPOutputStream -{ - - StreamOutputStream(DTP dtp, OutputStream out) - { - super(dtp, out); - } - - public void write(int c) - throws IOException - { - if (transferComplete) - { - return; - } - out.write(c); - } - - public void write(byte[] b) - throws IOException - { - write(b, 0, b.length); - } - - public void write(byte[] b, int off, int len) - throws IOException - { - if (transferComplete) - { - return; - } - out.write(b, off, len); - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/Authenticator.java b/libjava/gnu/java/net/protocol/http/Authenticator.java deleted file mode 100644 index 0d7c9881956..00000000000 --- a/libjava/gnu/java/net/protocol/http/Authenticator.java +++ /dev/null @@ -1,59 +0,0 @@ -/* Authenticator.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., 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.java.net.protocol.http; - -/** - * Callback interface for managing authentication. - * @see Request#setAuthenticator - * - * @author Chris Burdess (dog@gnu.org) - */ -public interface Authenticator -{ - - /** - * Returns the credentials to supply for the given realm. - * @param realm the authentication realm - * @param attempt zero on first authentication attempt, increments on each - * unsuccessful attempt - */ - Credentials getCredentials(String realm, int attempt); - -} - diff --git a/libjava/gnu/java/net/protocol/http/ByteArrayRequestBodyWriter.java b/libjava/gnu/java/net/protocol/http/ByteArrayRequestBodyWriter.java deleted file mode 100644 index 35ad2bccf45..00000000000 --- a/libjava/gnu/java/net/protocol/http/ByteArrayRequestBodyWriter.java +++ /dev/null @@ -1,107 +0,0 @@ -/* ByteArrayRequestBodyWriter.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., 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.java.net.protocol.http; - -/** - * A simple request body writer using a byte array. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class ByteArrayRequestBodyWriter - implements RequestBodyWriter -{ - - /** - * The content. - */ - protected byte[] content; - - /** - * The position within the content at which the next read will occur. - */ - protected int pos; - - /** - * Constructs a new byte array request body writer with the specified - * content. - * @param content the content buffer - */ - public ByteArrayRequestBodyWriter(byte[] content) - { - this.content = content; - pos = 0; - } - - /** - * Returns the total number of bytes that will be written in a single pass - * by this writer. - */ - public int getContentLength() - { - return content.length; - } - - /** - * Initialises the writer. - * This will be called before each pass. - */ - public void reset() - { - pos = 0; - } - - /** - * Writes body content to the supplied buffer. - * @param buffer the content buffer - * @return the number of bytes written - */ - public int write(byte[] buffer) - { - int len = content.length - pos; - len = (buffer.length < len) ? buffer.length : len; - if (len > -1) - { - System.arraycopy(content, pos, buffer, 0, len); - pos += len; - } - return len; - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/ByteArrayResponseBodyReader.java b/libjava/gnu/java/net/protocol/http/ByteArrayResponseBodyReader.java deleted file mode 100644 index 680e45d3e49..00000000000 --- a/libjava/gnu/java/net/protocol/http/ByteArrayResponseBodyReader.java +++ /dev/null @@ -1,123 +0,0 @@ -/* Authenticator.java --ByteArrayResponseBodyReader.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., 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.java.net.protocol.http; - -/** - * Simple response body reader that stores content in a byte array. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class ByteArrayResponseBodyReader - implements ResponseBodyReader -{ - - /** - * The content. - */ - protected byte[] content; - - /** - * The position in the content at which the next write will occur. - */ - protected int pos; - - /** - * The length of the buffer. - */ - protected int len; - - /** - * Constructs a new byte array response body reader. - */ - public ByteArrayResponseBodyReader() - { - this(4096); - } - - /** - * Constructs a new byte array response body reader with the specified - * initial buffer size. - * @param size the initial buffer size - */ - public ByteArrayResponseBodyReader(int size) - { - content = new byte[size]; - pos = len = 0; - } - - /** - * This reader accepts all responses. - */ - public boolean accept(Request request, Response response) - { - return true; - } - - public void read(byte[] buffer, int offset, int length) - { - int l = length - offset; - if (pos + l > content.length) - { - byte[] tmp = new byte[content.length * 2]; - System.arraycopy(content, 0, tmp, 0, pos); - content = tmp; - } - System.arraycopy(buffer, offset, content, pos, l); - pos += l; - len = pos; - } - - public void close() - { - pos = 0; - } - - /** - * Retrieves the content of this reader as a byte array. - * The size of the returned array is the number of bytes read. - */ - public byte[] toByteArray() - { - byte[] ret = new byte[len]; - System.arraycopy(content, 0, ret, 0, len); - return ret; - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/ChunkedInputStream.java b/libjava/gnu/java/net/protocol/http/ChunkedInputStream.java deleted file mode 100644 index c0706b70840..00000000000 --- a/libjava/gnu/java/net/protocol/http/ChunkedInputStream.java +++ /dev/null @@ -1,172 +0,0 @@ -/* ChunkedInputStream.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., 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.java.net.protocol.http; - -import java.io.FilterInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.net.ProtocolException; - -/** - * Input stream wrapper for the "chunked" transfer-coding. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class ChunkedInputStream - extends FilterInputStream -{ - - private static final byte CR = 0x0d; - private static final byte LF = 0x0a; - - int size; - int count; - boolean meta; - boolean eof; - Headers headers; - - /** - * Constructor. - * @param in the response socket input stream - * @param headers the headers to receive additional header lines - */ - public ChunkedInputStream(InputStream in, Headers headers) - { - super(in); - this.headers = headers; - size = -1; - count = 0; - meta = true; - } - - public int read() - throws IOException - { - byte[] buf = new byte[1]; - int len = read(buf, 0, 1); - if (len == -1) - { - return -1; - } - int ret = (int) buf[0]; - if (ret < 0) - { - ret += 0x100; - } - return ret; - } - - public int read(byte[] buffer) - throws IOException - { - return read(buffer, 0, buffer.length); - } - - public int read(byte[] buffer, int offset, int length) - throws IOException - { - if (eof) - { - return -1; - } - if (meta) - { - // Read chunk header - int c, last = 0; - boolean seenSemi = false; - StringBuffer buf = new StringBuffer(); - do - { - c = in.read(); - if (c == 0x3b) // ; - { - seenSemi = true; - } - else if (c == 0x0a && last == 0x0d) // CRLF - { - size = Integer.parseInt(buf.toString(), 16); - break; - } - else if (!seenSemi && c >= 0x30) - { - buf.append ((char) c); - } - last = c; - } - while(c != -1); - count = 0; - meta = false; - } - if (size == 0) - { - // Read trailer - headers.parse(in); - eof = true; - return -1; - } - else - { - int diff = length - offset; - int max = size - count; - max = (diff < max) ? diff : max; - int len = (max > 0) ? in.read(buffer, offset, max) : 0; - count += len; - if (count == size) - { - // Read CRLF - int c1 = in.read(); - int c2 = in.read(); - if (c1 == -1 && c2 == -1) - { - // EOF before CRLF: bad, but ignore - eof = true; - return -1; - } - if (c1 != 0x0d || c2 != 0x0a) - { - throw new ProtocolException("expecting CRLF: " + c1 + "," + c2); - } - meta = true; - } - return len; - } - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/Cookie.java b/libjava/gnu/java/net/protocol/http/Cookie.java deleted file mode 100644 index 45e2f733ff3..00000000000 --- a/libjava/gnu/java/net/protocol/http/Cookie.java +++ /dev/null @@ -1,160 +0,0 @@ -/* Cookie.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., 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.java.net.protocol.http; - -import java.util.Date; - -/** - * An HTTP cookie, as specified in RFC 2109. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class Cookie -{ - - /** - * The name of the cookie. - */ - protected final String name; - - /** - * The value of the cookie. - */ - protected final String value; - - /** - * Optional documentation of the intended use of the cookie. - */ - protected final String comment; - - /** - * The domain for which the cookie is valid. - */ - protected final String domain; - - /** - * Optional subset of URL paths within the domain for which the cookie is - * valid. - */ - protected final String path; - - /** - * Indicates that the user-agent should only use secure means to transmit - * this cookie to the server. - */ - protected final boolean secure; - - /** - * The date at which this cookie expires. - */ - protected final Date expires; - - public Cookie(String name, String value, String comment, String domain, - String path, boolean secure, Date expires) - { - this.name = name; - this.value = value; - this.comment = comment; - this.domain = domain; - this.path = path; - this.secure = secure; - this.expires = expires; - } - - public String getName() - { - return name; - } - - public String getValue() - { - return value; - } - - public String getComment() - { - return comment; - } - - public String getDomain() - { - return domain; - } - - public String getPath() - { - return path; - } - - public boolean isSecure() - { - return secure; - } - - public Date getExpiryDate() - { - return expires; - } - - public String toString() - { - return toString(true, true); - } - - public String toString(boolean showPath, boolean showDomain) - { - StringBuffer buf = new StringBuffer(); - buf.append(name); - buf.append('='); - buf.append(value); - if (showPath) - { - buf.append("; $Path="); - buf.append(path); - } - if (showDomain) - { - buf.append("; $Domain="); - buf.append(domain); - } - return buf.toString(); - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/CookieManager.java b/libjava/gnu/java/net/protocol/http/CookieManager.java deleted file mode 100644 index cc1225c497d..00000000000 --- a/libjava/gnu/java/net/protocol/http/CookieManager.java +++ /dev/null @@ -1,65 +0,0 @@ -/* CookieManager.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., 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.java.net.protocol.http; - -/** - * Cookie manager interface. - * If an application wants to handle cookies, they should implement this - * interface and register the instance with each HTTPConnection they use. - * - * @author Chris Burdess (dog@gnu.org) - */ -public interface CookieManager -{ - - /** - * Stores a cookie in the cookie manager. - * @param cookie the cookie to store - */ - void setCookie(Cookie cookie); - - /** - * Retrieves the cookies matching the specified criteria. - * @param host the host name - * @param secure whether the connection is secure - * @param path the path to access - */ - Cookie[] getCookies(String host, boolean secure, String path); - -} diff --git a/libjava/gnu/java/net/protocol/http/Credentials.java b/libjava/gnu/java/net/protocol/http/Credentials.java deleted file mode 100644 index 9e5fcd172f5..00000000000 --- a/libjava/gnu/java/net/protocol/http/Credentials.java +++ /dev/null @@ -1,88 +0,0 @@ -/* Credentials.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., 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.java.net.protocol.http; - -/** - * Represents a username/password combination that can be used to - * authenticate to an HTTP server. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class Credentials -{ - - /** - * The username. - */ - private String username; - - /** - * The password. - */ - private String password; - - /** - * Constructor. - * @param username the username - * @param password the password - */ - public Credentials(String username, String password) - { - this.username = username; - this.password = password; - } - - /** - * Returns the username. - */ - public String getUsername() - { - return username; - } - - /** - * Returns the password. - */ - public String getPassword() - { - return password; - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/HTTPConnection.java b/libjava/gnu/java/net/protocol/http/HTTPConnection.java deleted file mode 100644 index 221733dba05..00000000000 --- a/libjava/gnu/java/net/protocol/http/HTTPConnection.java +++ /dev/null @@ -1,681 +0,0 @@ -/* HTTPConnection.java -- - Copyright (C) 2004, 2005 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.java.net.protocol.http; - -import gnu.classpath.Configuration; -import gnu.classpath.SystemProperties; -import gnu.java.net.EmptyX509TrustManager; -import gnu.java.net.protocol.http.event.ConnectionEvent; -import gnu.java.net.protocol.http.event.ConnectionListener; -import gnu.java.net.protocol.http.event.RequestEvent; -import gnu.java.net.protocol.http.event.RequestListener; - -import java.io.BufferedInputStream; -import java.io.BufferedOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.net.InetSocketAddress; -import java.net.Socket; -import java.security.GeneralSecurityException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import javax.net.ssl.HandshakeCompletedListener; -import javax.net.ssl.SSLContext; -import javax.net.ssl.SSLSocket; -import javax.net.ssl.SSLSocketFactory; -import javax.net.ssl.TrustManager; - -/** - * A connection to an HTTP server. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class HTTPConnection -{ - - /** - * The default HTTP port. - */ - public static final int HTTP_PORT = 80; - - /** - * The default HTTPS port. - */ - public static final int HTTPS_PORT = 443; - - private static final String userAgent = SystemProperties.getProperty("http.agent"); - - /** - * The host name of the server to connect to. - */ - protected final String hostname; - - /** - * The port to connect to. - */ - protected final int port; - - /** - * Whether the connection should use transport level security (HTTPS). - */ - protected final boolean secure; - - /** - * The connection timeout for connecting the underlying socket. - */ - protected final int connectionTimeout; - - /** - * The read timeout for reads on the underlying socket. - */ - protected final int timeout; - - /** - * The host name of the proxy to connect to. - */ - protected String proxyHostname; - - /** - * The port on the proxy to connect to. - */ - protected int proxyPort; - - /** - * The major version of HTTP supported by this client. - */ - protected int majorVersion; - - /** - * The minor version of HTTP supported by this client. - */ - protected int minorVersion; - - private final List connectionListeners; - private final List requestListeners; - private final List handshakeCompletedListeners; - - /** - * The socket this connection communicates on. - */ - protected Socket socket; - - /** - * The SSL socket factory to use. - */ - private SSLSocketFactory sslSocketFactory; - - /** - * The socket input stream. - */ - protected InputStream in; - - /** - * The socket output stream. - */ - protected OutputStream out; - - /** - * Nonce values seen by this connection. - */ - private Map nonceCounts; - - /** - * The cookie manager for this connection. - */ - protected CookieManager cookieManager; - - /** - * Creates a new HTTP connection. - * @param hostname the name of the host to connect to - */ - public HTTPConnection(String hostname) - { - this(hostname, HTTP_PORT, false, 0, 0); - } - - /** - * Creates a new HTTP or HTTPS connection. - * @param hostname the name of the host to connect to - * @param secure whether to use a secure connection - */ - public HTTPConnection(String hostname, boolean secure) - { - this(hostname, secure ? HTTPS_PORT : HTTP_PORT, secure, 0, 0); - } - - /** - * Creates a new HTTP or HTTPS connection on the specified port. - * @param hostname the name of the host to connect to - * @param secure whether to use a secure connection - * @param connectionTimeout the connection timeout - * @param timeout the socket read timeout - */ - public HTTPConnection(String hostname, boolean secure, - int connectionTimeout, int timeout) - { - this(hostname, secure ? HTTPS_PORT : HTTP_PORT, secure, - connectionTimeout, timeout); - } - - /** - * Creates a new HTTP connection on the specified port. - * @param hostname the name of the host to connect to - * @param port the port on the host to connect to - */ - public HTTPConnection(String hostname, int port) - { - this(hostname, port, false, 0, 0); - } - - /** - * Creates a new HTTP or HTTPS connection on the specified port. - * @param hostname the name of the host to connect to - * @param port the port on the host to connect to - * @param secure whether to use a secure connection - */ - public HTTPConnection(String hostname, int port, boolean secure) - { - this(hostname, port, secure, 0, 0); - } - - /** - * Creates a new HTTP or HTTPS connection on the specified port. - * @param hostname the name of the host to connect to - * @param port the port on the host to connect to - * @param secure whether to use a secure connection - * @param connectionTimeout the connection timeout - * @param timeout the socket read timeout - */ - public HTTPConnection(String hostname, int port, boolean secure, - int connectionTimeout, int timeout) - { - this.hostname = hostname; - this.port = port; - this.secure = secure; - this.connectionTimeout = connectionTimeout; - this.timeout = timeout; - majorVersion = minorVersion = 1; - connectionListeners = new ArrayList(4); - requestListeners = new ArrayList(4); - handshakeCompletedListeners = new ArrayList(2); - } - - /** - * Returns the name of the host to connect to. - */ - public String getHostName() - { - return hostname; - } - - /** - * Returns the port on the host to connect to. - */ - public int getPort() - { - return port; - } - - /** - * Indicates whether to use a secure connection or not. - */ - public boolean isSecure() - { - return secure; - } - - /** - * Returns the HTTP version string supported by this connection. - * @see #version - */ - public String getVersion() - { - return "HTTP/" + majorVersion + '.' + minorVersion; - } - - /** - * Sets the HTTP version supported by this connection. - * @param majorVersion the major version - * @param minorVersion the minor version - */ - public void setVersion(int majorVersion, int minorVersion) - { - if (majorVersion != 1) - { - throw new IllegalArgumentException("major version not supported: " + - majorVersion); - } - if (minorVersion < 0 || minorVersion > 1) - { - throw new IllegalArgumentException("minor version not supported: " + - minorVersion); - } - this.majorVersion = majorVersion; - this.minorVersion = minorVersion; - } - - /** - * Directs this connection to use the specified proxy. - * @param hostname the proxy host name - * @param port the port on the proxy to connect to - */ - public void setProxy(String hostname, int port) - { - proxyHostname = hostname; - proxyPort = port; - } - - /** - * Indicates whether this connection is using an HTTP proxy. - */ - public boolean isUsingProxy() - { - return (proxyHostname != null && proxyPort > 0); - } - - /** - * Sets the cookie manager to use for this connection. - * @param cookieManager the cookie manager - */ - public void setCookieManager(CookieManager cookieManager) - { - this.cookieManager = cookieManager; - } - - /** - * Returns the cookie manager in use for this connection. - */ - public CookieManager getCookieManager() - { - return cookieManager; - } - - /** - * Creates a new request using this connection. - * @param method the HTTP method to invoke - * @param path the URI-escaped RFC2396 abs_path with - * optional query part - */ - public Request newRequest(String method, String path) - { - if (method == null || method.length() == 0) - { - throw new IllegalArgumentException("method must have non-zero length"); - } - if (path == null || path.length() == 0) - { - path = "/"; - } - Request ret = new Request(this, method, path); - if ((secure && port != HTTPS_PORT) || - (!secure && port != HTTP_PORT)) - { - ret.setHeader("Host", hostname + ":" + port); - } - else - { - ret.setHeader("Host", hostname); - } - ret.setHeader("User-Agent", userAgent); - ret.setHeader("Connection", "keep-alive"); - ret.setHeader("Accept-Encoding", - "chunked;q=1.0, gzip;q=0.9, deflate;q=0.8, " + - "identity;q=0.6, *;q=0"); - if (cookieManager != null) - { - Cookie[] cookies = cookieManager.getCookies(hostname, secure, path); - if (cookies != null && cookies.length > 0) - { - StringBuffer buf = new StringBuffer(); - buf.append("$Version=1"); - for (int i = 0; i < cookies.length; i++) - { - buf.append(','); - buf.append(' '); - buf.append(cookies[i].toString()); - } - ret.setHeader("Cookie", buf.toString()); - } - } - fireRequestEvent(RequestEvent.REQUEST_CREATED, ret); - return ret; - } - - /** - * Closes this connection. - */ - public void close() - throws IOException - { - try - { - closeConnection(); - } - finally - { - fireConnectionEvent(ConnectionEvent.CONNECTION_CLOSED); - } - } - - /** - * Retrieves the socket associated with this connection. - * This creates the socket if necessary. - */ - protected Socket getSocket() - throws IOException - { - if (socket == null) - { - String connectHostname = hostname; - int connectPort = port; - if (isUsingProxy()) - { - connectHostname = proxyHostname; - connectPort = proxyPort; - } - socket = new Socket(); - InetSocketAddress address = - new InetSocketAddress(connectHostname, connectPort); - if (connectionTimeout > 0) - { - socket.connect(address, connectionTimeout); - } - else - { - socket.connect(address); - } - if (timeout > 0) - { - socket.setSoTimeout(timeout); - } - if (secure) - { - try - { - SSLSocketFactory factory = getSSLSocketFactory(); - SSLSocket ss = - (SSLSocket) factory.createSocket(socket, connectHostname, - connectPort, true); - String[] protocols = { "TLSv1", "SSLv3" }; - ss.setEnabledProtocols(protocols); - ss.setUseClientMode(true); - synchronized (handshakeCompletedListeners) - { - if (!handshakeCompletedListeners.isEmpty()) - { - for (Iterator i = - handshakeCompletedListeners.iterator(); - i.hasNext(); ) - { - HandshakeCompletedListener l = - (HandshakeCompletedListener) i.next(); - ss.addHandshakeCompletedListener(l); - } - } - } - ss.startHandshake(); - socket = ss; - } - catch (GeneralSecurityException e) - { - throw new IOException(e.getMessage()); - } - } - in = socket.getInputStream(); - in = new BufferedInputStream(in); - out = socket.getOutputStream(); - out = new BufferedOutputStream(out); - } - return socket; - } - - SSLSocketFactory getSSLSocketFactory() - throws GeneralSecurityException - { - if (sslSocketFactory == null) - { - TrustManager tm = new EmptyX509TrustManager(); - SSLContext context = SSLContext.getInstance("SSL"); - TrustManager[] trust = new TrustManager[] { tm }; - context.init(null, trust, null); - sslSocketFactory = context.getSocketFactory(); - } - return sslSocketFactory; - } - - void setSSLSocketFactory(SSLSocketFactory factory) - { - sslSocketFactory = factory; - } - - protected InputStream getInputStream() - throws IOException - { - if (socket == null) - { - getSocket(); - } - return in; - } - - protected OutputStream getOutputStream() - throws IOException - { - if (socket == null) - { - getSocket(); - } - return out; - } - - /** - * Closes the underlying socket, if any. - */ - protected void closeConnection() - throws IOException - { - if (socket != null) - { - try - { - socket.close(); - } - finally - { - socket = null; - } - } - } - - /** - * Returns a URI representing the connection. - * This does not include any request path component. - */ - protected String getURI() - { - StringBuffer buf = new StringBuffer(); - buf.append(secure ? "https://" : "http://"); - buf.append(hostname); - if (secure) - { - if (port != HTTPConnection.HTTPS_PORT) - { - buf.append(':'); - buf.append(port); - } - } - else - { - if (port != HTTPConnection.HTTP_PORT) - { - buf.append(':'); - buf.append(port); - } - } - return buf.toString(); - } - - /** - * Get the number of times the specified nonce has been seen by this - * connection. - */ - int getNonceCount(String nonce) - { - if (nonceCounts == null) - { - return 0; - } - return((Integer) nonceCounts.get(nonce)).intValue(); - } - - /** - * Increment the number of times the specified nonce has been seen. - */ - void incrementNonce(String nonce) - { - int current = getNonceCount(nonce); - if (nonceCounts == null) - { - nonceCounts = new HashMap(); - } - nonceCounts.put(nonce, new Integer(current + 1)); - } - - // -- Events -- - - public void addConnectionListener(ConnectionListener l) - { - synchronized (connectionListeners) - { - connectionListeners.add(l); - } - } - - public void removeConnectionListener(ConnectionListener l) - { - synchronized (connectionListeners) - { - connectionListeners.remove(l); - } - } - - protected void fireConnectionEvent(int type) - { - ConnectionEvent event = new ConnectionEvent(this, type); - ConnectionListener[] l = null; - synchronized (connectionListeners) - { - l = new ConnectionListener[connectionListeners.size()]; - connectionListeners.toArray(l); - } - for (int i = 0; i < l.length; i++) - { - switch (type) - { - case ConnectionEvent.CONNECTION_CLOSED: - l[i].connectionClosed(event); - break; - } - } - } - - public void addRequestListener(RequestListener l) - { - synchronized (requestListeners) - { - requestListeners.add(l); - } - } - - public void removeRequestListener(RequestListener l) - { - synchronized (requestListeners) - { - requestListeners.remove(l); - } - } - - protected void fireRequestEvent(int type, Request request) - { - RequestEvent event = new RequestEvent(this, type, request); - RequestListener[] l = null; - synchronized (requestListeners) - { - l = new RequestListener[requestListeners.size()]; - requestListeners.toArray(l); - } - for (int i = 0; i < l.length; i++) - { - switch (type) - { - case RequestEvent.REQUEST_CREATED: - l[i].requestCreated(event); - break; - case RequestEvent.REQUEST_SENDING: - l[i].requestSent(event); - break; - case RequestEvent.REQUEST_SENT: - l[i].requestSent(event); - break; - } - } - } - - void addHandshakeCompletedListener(HandshakeCompletedListener l) - { - synchronized (handshakeCompletedListeners) - { - handshakeCompletedListeners.add(l); - } - } - void removeHandshakeCompletedListener(HandshakeCompletedListener l) - { - synchronized (handshakeCompletedListeners) - { - handshakeCompletedListeners.remove(l); - } - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/HTTPDateFormat.java b/libjava/gnu/java/net/protocol/http/HTTPDateFormat.java deleted file mode 100644 index 2f59e43181c..00000000000 --- a/libjava/gnu/java/net/protocol/http/HTTPDateFormat.java +++ /dev/null @@ -1,441 +0,0 @@ -/* HTTPDateFormat.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., 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.java.net.protocol.http; - -import java.text.DateFormat; -import java.text.DecimalFormat; -import java.text.FieldPosition; -import java.text.NumberFormat; -import java.text.ParsePosition; -import java.util.Calendar; -import java.util.Date; -import java.util.GregorianCalendar; -import java.util.TimeZone; - -/** - * HTTP date formatter and parser. - * Formats dates according to RFC 822 (updated by RFC 1123). - * Parses dates according to the above, or RFC 1036, or the - * ANSI C asctime() format. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class HTTPDateFormat - extends DateFormat -{ - - static final String[] DAYS_OF_WEEK = { - null, "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" - }; - - static final String[] MONTHS = { - "Jan", "Feb", "Mar", "Apr", "May", "Jun", - "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" - }; - - public HTTPDateFormat() - { - calendar = new GregorianCalendar(TimeZone.getTimeZone ("GMT")); - numberFormat = new DecimalFormat(); - } - - /** - * Appends the textual value for the specified field to the given string - * buffer. This method should be avoided, use format(Date) - * instead. - * @param date the Date object - * @param buf the buffer to append to - * @param field the current field position - * @return the modified buffer - */ - public StringBuffer format(Date date, StringBuffer buf, - FieldPosition field) - { - calendar.clear(); - calendar.setTime(date); - buf.setLength(0); - - // Day of week - buf.append(DAYS_OF_WEEK[calendar.get(Calendar.DAY_OF_WEEK)]); - buf.append(','); - buf.append(' '); - - // Day of month - int day = calendar.get(Calendar.DAY_OF_MONTH); - buf.append(Character.forDigit(day / 10, 10)); - buf.append(Character.forDigit(day % 10, 10)); - buf.append(' '); - - // Month - buf.append(MONTHS[calendar.get(Calendar.MONTH)]); - buf.append(' '); - - // Year - int year = calendar.get(Calendar.YEAR); - if (year < 1000) - { - buf.append('0'); - if (year < 100) - { - buf.append('0'); - if (year < 10) - { - buf.append('0'); - } - } - } - buf.append(Integer.toString(year)); - buf.append(' '); - - // Hour - int hour = calendar.get(Calendar.HOUR_OF_DAY); - buf.append(Character.forDigit(hour / 10, 10)); - buf.append(Character.forDigit(hour % 10, 10)); - buf.append(':'); - - // Minute - int minute = calendar.get(Calendar.MINUTE); - buf.append(Character.forDigit(minute / 10, 10)); - buf.append(Character.forDigit(minute % 10, 10)); - buf.append(':'); - - // Second - int second = calendar.get(Calendar.SECOND); - buf.append(Character.forDigit(second / 10, 10)); - buf.append(Character.forDigit(second % 10, 10)); - buf.append(' '); - - // Timezone - // Get time offset in minutes - int zoneOffset =(calendar.get(Calendar.ZONE_OFFSET) + - calendar.get(Calendar.DST_OFFSET)) / 60000; - - // Apply + or - appropriately - if (zoneOffset < 0) - { - zoneOffset = -zoneOffset; - buf.append('-'); - } - else - { - buf.append('+'); - } - - // Set the 2 2-char fields as specified above - int tzhours = zoneOffset / 60; - buf.append(Character.forDigit(tzhours / 10, 10)); - buf.append(Character.forDigit(tzhours % 10, 10)); - int tzminutes = zoneOffset % 60; - buf.append(Character.forDigit(tzminutes / 10, 10)); - buf.append(Character.forDigit(tzminutes % 10, 10)); - - field.setBeginIndex(0); - field.setEndIndex(buf.length()); - return buf; - } - - /** - * Parses the given date in the current TimeZone. - * @param text the formatted date to be parsed - * @param pos the current parse position - */ - public Date parse(String text, ParsePosition pos) - { - int date, month, year, hour, minute, second; - String monthText; - int start = 0, end = -1; - int len = text.length(); - calendar.clear(); - pos.setIndex(start); - try - { - // Advance to date - if (Character.isLetter(text.charAt(start))) - { - start = skipNonWhitespace(text, start); - } - // Determine mode - switch(start) - { - case 3: - // asctime - start = skipWhitespace(text, start); - pos.setIndex(start); - end = skipNonWhitespace(text, start + 1); - monthText = text.substring(start, end); - month = -1; - for (int i = 0; i < 12; i++) - { - if (MONTHS[i].equals(monthText)) - { - month = i; - break; - } - } - if (month == -1) - { - pos.setErrorIndex(end); - return null; - } - // Advance to date - start = skipWhitespace(text, end + 1); - pos.setIndex(start); - end = skipNonWhitespace(text, start + 1); - date = Integer.parseInt(text.substring(start, end)); - // Advance to hour - start = skipWhitespace(text, end + 1); - pos.setIndex(start); - end = skipTo(text, start + 1, ':'); - hour = Integer.parseInt(text.substring(start, end)); - // Advance to minute - start = end + 1; - pos.setIndex(start); - end = skipTo(text, start + 1, ':'); - minute = Integer.parseInt(text.substring(start, end)); - // Advance to second - start = end + 1; - pos.setIndex(start); - end = skipNonWhitespace(text, start + 1); - second = Integer.parseInt(text.substring(start, end)); - // Advance to year - start = skipWhitespace(text, end + 1); - pos.setIndex(start); - end = skipNonWhitespace(text, start + 1); - year = Integer.parseInt(text.substring(start, end)); - break; - case 0: - case 4: - // rfc822 - start = skipWhitespace(text, start); - pos.setIndex(start); - end = skipNonWhitespace(text, start + 1); - date = Integer.parseInt(text.substring(start, end)); - // Advance to month - start = skipWhitespace(text, end + 1); - pos.setIndex(start); - end = skipNonWhitespace(text, start + 1); - monthText = text.substring(start, end); - month = -1; - for (int i = 0; i < 12; i++) - { - if (MONTHS[i].equals(monthText)) - { - month = i; - break; - } - } - if (month == -1) - { - pos.setErrorIndex(end); - return null; - } - // Advance to year - start = skipWhitespace(text, end + 1); - pos.setIndex(start); - end = skipNonWhitespace(text, start + 1); - year = Integer.parseInt(text.substring(start, end)); - // Advance to hour - start = skipWhitespace(text, end + 1); - pos.setIndex(start); - end = skipTo(text, start + 1, ':'); - hour = Integer.parseInt(text.substring(start, end)); - // Advance to minute - start = end + 1; - pos.setIndex(start); - end = skipTo(text, start + 1, ':'); - minute = Integer.parseInt(text.substring(start, end)); - // Advance to second - start = end + 1; - pos.setIndex(start); - end = start + 1; - while (end < len && !Character.isWhitespace(text.charAt(end))) - { - end++; - } - second = Integer.parseInt(text.substring(start, end)); - break; - default: - // rfc850(obsolete) - start = skipWhitespace(text, start); - pos.setIndex(start); - end = skipTo(text, start + 1, '-'); - date = Integer.parseInt(text.substring(start, end)); - // Advance to month - start = end + 1; - pos.setIndex(start); - end = skipTo(text, start + 1, '-'); - monthText = text.substring(start, end); - month = -1; - for (int i = 0; i < 12; i++) - { - if (MONTHS[i].equals(monthText)) - { - month = i; - break; - } - } - if (month == -1) - { - pos.setErrorIndex(end); - return null; - } - // Advance to year - start = end + 1; - pos.setIndex(start); - end = skipNonWhitespace(text, start + 1); - year = 1900 + Integer.parseInt(text.substring(start, end)); - // Advance to hour - start = skipWhitespace(text, end + 1); - pos.setIndex(start); - end = skipTo(text, start + 1, ':'); - hour = Integer.parseInt(text.substring(start, end)); - // Advance to minute - start = end + 1; - pos.setIndex(start); - end = skipTo(text, start + 1, ':'); - minute = Integer.parseInt(text.substring(start, end)); - // Advance to second - start = end + 1; - pos.setIndex(start); - end = start + 1; - while (end < len && !Character.isWhitespace(text.charAt(end))) - { - end++; - } - second = Integer.parseInt(text.substring(start, end)); - } - - calendar.set(Calendar.YEAR, year); - calendar.set(Calendar.MONTH, month); - calendar.set(Calendar.DAY_OF_MONTH, date); - calendar.set(Calendar.HOUR, hour); - calendar.set(Calendar.MINUTE, minute); - calendar.set(Calendar.SECOND, second); - - if (end != len) - { - // Timezone - start = skipWhitespace(text, end + 1); - end = start + 1; - while (end < len && !Character.isWhitespace(text.charAt(end))) - { - end++; - } - char pm = text.charAt(start); - if (Character.isLetter(pm)) - { - TimeZone tz = - TimeZone.getTimeZone(text.substring(start, end)); - calendar.set(Calendar.ZONE_OFFSET, tz.getRawOffset()); - } - else - { - int zoneOffset = 0; - zoneOffset += 600 * Character.digit(text.charAt(++start), 10); - zoneOffset += 60 * Character.digit(text.charAt(++start), 10); - zoneOffset += 10 * Character.digit(text.charAt(++start), 10); - zoneOffset += Character.digit(text.charAt(++start), 10); - zoneOffset *= 60000; // minutes -> ms - if ('-' == pm) - { - zoneOffset = -zoneOffset; - } - calendar.set(Calendar.ZONE_OFFSET, zoneOffset); - } - } - pos.setIndex(end); - - return calendar.getTime(); - } - catch (NumberFormatException e) - { - pos.setErrorIndex(Math.max(start, end)); - } - catch (StringIndexOutOfBoundsException e) - { - pos.setErrorIndex(Math.max(start, end)); - } - return null; - } - - private int skipWhitespace(String text, int pos) - { - while(Character.isWhitespace(text.charAt(pos))) - { - pos++; - } - return pos; - } - - private int skipNonWhitespace(String text, int pos) - { - while(!Character.isWhitespace(text.charAt(pos))) - { - pos++; - } - return pos; - } - - private int skipTo(String text, int pos, char c) - { - while(text.charAt(pos) != c) - { - pos++; - } - return pos; - } - - /** - * Don't allow setting the calendar. - */ - public void setCalendar(Calendar newCalendar) - { - throw new UnsupportedOperationException(); - } - - /** - * Don't allow setting the NumberFormat. - */ - public void setNumberFormat(NumberFormat newNumberFormat) - { - throw new UnsupportedOperationException(); - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/HTTPURLConnection.java b/libjava/gnu/java/net/protocol/http/HTTPURLConnection.java deleted file mode 100644 index 1745a34abff..00000000000 --- a/libjava/gnu/java/net/protocol/http/HTTPURLConnection.java +++ /dev/null @@ -1,682 +0,0 @@ -/* HTTPURLConnection.java -- - Copyright (C) 2004, 2005 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.java.net.protocol.http; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.net.ProtocolException; -import java.net.URL; -import java.security.AccessController; -import java.security.PrivilegedAction; -import java.security.cert.Certificate; -import java.util.Collections; -import java.util.Date; -import java.util.Iterator; -import java.util.LinkedHashMap; -import java.util.Map; - -import javax.net.ssl.HandshakeCompletedEvent; -import javax.net.ssl.HandshakeCompletedListener; -import javax.net.ssl.HostnameVerifier; -import javax.net.ssl.HttpsURLConnection; -import javax.net.ssl.SSLPeerUnverifiedException; -import javax.net.ssl.SSLSocketFactory; - -/** - * A URLConnection that uses the HTTPConnection class. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class HTTPURLConnection - extends HttpsURLConnection - implements HandshakeCompletedListener -{ - - /** - * Pool of reusable connections, used if keepAlive is true. - */ - private static final Map connectionPool = new LinkedHashMap(); - - /* - * The underlying connection. - */ - private HTTPConnection connection; - - private String proxyHostname; - private int proxyPort; - private String agent; - private boolean keepAlive; - private int maxConnections; - - private Request request; - private Headers requestHeaders; - private ByteArrayOutputStream requestSink; - private boolean requestMethodSetExplicitly; - - private Response response; - private ByteArrayInputStream responseSink; - private ByteArrayInputStream errorSink; - - private HandshakeCompletedEvent handshakeEvent; - - /** - * Constructor. - * @param url the URL - */ - public HTTPURLConnection(URL url) - throws IOException - { - super(url); - requestHeaders = new Headers(); - AccessController.doPrivileged(this.new GetHTTPPropertiesAction()); - } - - class GetHTTPPropertiesAction - implements PrivilegedAction - { - - public Object run() - { - proxyHostname = System.getProperty("http.proxyHost"); - if (proxyHostname != null && proxyHostname.length() > 0) - { - String port = System.getProperty("http.proxyPort"); - if (port != null && port.length() > 0) - { - proxyPort = Integer.parseInt(port); - } - else - { - proxyHostname = null; - proxyPort = -1; - } - } - agent = System.getProperty("http.agent"); - String ka = System.getProperty("http.keepAlive"); - keepAlive = !(ka != null && "false".equals(ka)); - String mc = System.getProperty("http.maxConnections"); - maxConnections = (mc != null && mc.length() > 0) ? - Math.max(Integer.parseInt(mc), 1) : 5; - return null; - } - - } - - public void connect() - throws IOException - { - if (connected) - { - return; - } - String protocol = url.getProtocol(); - boolean secure = "https".equals(protocol); - String host = url.getHost(); - int port = url.getPort(); - if (port < 0) - { - port = secure ? HTTPConnection.HTTPS_PORT : - HTTPConnection.HTTP_PORT; - } - String file = url.getFile(); - String username = url.getUserInfo(); - String password = null; - if (username != null) - { - int ci = username.indexOf(':'); - if (ci != -1) - { - password = username.substring(ci + 1); - username = username.substring(0, ci); - } - } - final Credentials creds = (username == null) ? null : - new Credentials (username, password); - - boolean retry; - do - { - retry = false; - if (connection == null) - { - connection = getConnection(host, port, secure); - if (secure) - { - SSLSocketFactory factory = getSSLSocketFactory(); - HostnameVerifier verifier = getHostnameVerifier(); - if (factory != null) - { - connection.setSSLSocketFactory(factory); - } - connection.addHandshakeCompletedListener(this); - // TODO verifier - } - } - if (proxyHostname != null) - { - if (proxyPort < 0) - { - proxyPort = secure ? HTTPConnection.HTTPS_PORT : - HTTPConnection.HTTP_PORT; - } - connection.setProxy(proxyHostname, proxyPort); - } - request = connection.newRequest(method, file); - if (!keepAlive) - { - request.setHeader("Connection", "close"); - } - if (agent != null) - { - request.setHeader("User-Agent", agent); - } - request.getHeaders().putAll(requestHeaders); - if (requestSink != null) - { - byte[] content = requestSink.toByteArray(); - RequestBodyWriter writer = new ByteArrayRequestBodyWriter(content); - request.setRequestBodyWriter(writer); - } - ByteArrayResponseBodyReader reader = new ByteArrayResponseBodyReader(); - request.setResponseBodyReader(reader); - if (creds != null) - { - request.setAuthenticator(new Authenticator() { - public Credentials getCredentials(String realm, int attempts) - { - return (attempts < 2) ? creds : null; - } - }); - } - response = request.dispatch(); - if (response.getCodeClass() == 3 && getInstanceFollowRedirects()) - { - // Follow redirect - String location = response.getHeader("Location"); - String connectionUri = connection.getURI(); - int start = connectionUri.length(); - if (location.startsWith(connectionUri) && - location.charAt(start) == '/') - { - file = location.substring(start); - retry = true; - } - else if (location.startsWith("http:")) - { - connection.close(); - connection = null; - secure = false; - start = 7; - int end = location.indexOf('/', start); - host = location.substring(start, end); - int ci = host.lastIndexOf(':'); - if (ci != -1) - { - port = Integer.parseInt(host.substring (ci + 1)); - host = host.substring(0, ci); - } - else - { - port = HTTPConnection.HTTP_PORT; - } - file = location.substring(end); - retry = true; - } - else if (location.startsWith("https:")) - { - connection.close(); - connection = null; - secure = true; - start = 8; - int end = location.indexOf('/', start); - host = location.substring(start, end); - int ci = host.lastIndexOf(':'); - if (ci != -1) - { - port = Integer.parseInt(host.substring (ci + 1)); - host = host.substring(0, ci); - } - else - { - port = HTTPConnection.HTTPS_PORT; - } - file = location.substring(end); - retry = true; - } - else if (location.length() > 0) - { - // Malformed absolute URI, treat as file part of URI - if (location.charAt(0) == '/') - { - // Absolute path - file = location; - } - else - { - // Relative path - int lsi = file.lastIndexOf('/'); - file = (lsi == -1) ? "/" : file.substring(0, lsi + 1); - file += location; - } - retry = true; - } - } - else - { - responseSink = new ByteArrayInputStream(reader.toByteArray ()); - if (response.getCode() == 404) - { - errorSink = responseSink; - throw new FileNotFoundException(url.toString()); - } - } - } - while (retry); - connected = true; - } - - /** - * Returns a connection, from the pool if necessary. - */ - HTTPConnection getConnection(String host, int port, boolean secure) - throws IOException - { - HTTPConnection connection; - if (keepAlive) - { - StringBuffer buf = new StringBuffer(secure ? "https://" : "http://"); - buf.append(host); - buf.append(':'); - buf.append(port); - String key = buf.toString(); - synchronized (connectionPool) - { - connection = (HTTPConnection) connectionPool.get(key); - if (connection == null) - { - connection = new HTTPConnection(host, port, secure); - // Good housekeeping - if (connectionPool.size() == maxConnections) - { - // maxConnections must always be >= 1 - Object lru = connectionPool.keySet().iterator().next(); - connectionPool.remove(lru); - } - connectionPool.put(key, connection); - } - } - } - else - { - connection = new HTTPConnection(host, port, secure); - } - return connection; - } - - public void disconnect() - { - if (connection != null) - { - try - { - connection.close(); - } - catch (IOException e) - { - } - } - } - - public boolean usingProxy() - { - return (proxyHostname != null); - } - - /** - * Overrides the corresponding method in HttpURLConnection to permit - * arbitrary methods, as long as they're valid ASCII alphabetic - * characters. This is to permit WebDAV and other HTTP extensions to - * function. - * @param method the method - */ - public void setRequestMethod(String method) - throws ProtocolException - { - if (connected) - { - throw new ProtocolException("Already connected"); - } - // Validate - method = method.toUpperCase(); - int len = method.length(); - if (len == 0) - { - throw new ProtocolException("Empty method name"); - } - for (int i = 0; i < len; i++) - { - char c = method.charAt(i); - if (c < 0x41 || c > 0x5a) - { - throw new ProtocolException("Illegal character '" + c + - "' at index " + i); - } - } - // OK - this.method = method; - requestMethodSetExplicitly = true; - } - - public String getRequestProperty(String key) - { - return requestHeaders.getValue(key); - } - - public Map getRequestProperties() - { - return requestHeaders; - } - - public void setRequestProperty(String key, String value) - { - requestHeaders.put(key, value); - } - - public void addRequestProperty(String key, String value) - { - String old = requestHeaders.getValue(key); - if (old == null) - { - requestHeaders.put(key, value); - } - else - { - requestHeaders.put(key, old + "," + value); - } - } - - public OutputStream getOutputStream() - throws IOException - { - if (connected) - { - throw new ProtocolException("Already connected"); - } - if (!doOutput) - { - throw new ProtocolException("doOutput is false"); - } - else if (!requestMethodSetExplicitly) - { - /* - * Silently change the method to POST if no method was set - * explicitly. This is due to broken applications depending on this - * behaviour (Apache XMLRPC for one). - */ - method = "POST"; - } - if (requestSink == null) - { - requestSink = new ByteArrayOutputStream(); - } - return requestSink; - } - - // -- Response -- - - public InputStream getInputStream() - throws IOException - { - if (!connected) - { - connect(); - } - if (!doInput) - { - throw new ProtocolException("doInput is false"); - } - return responseSink; - } - - public InputStream getErrorStream() - { - return errorSink; - } - - public Map getHeaderFields() - { - if (!connected) - { - try - { - connect(); - } - catch (IOException e) - { - return null; - } - } - Map headers = response.getHeaders(); - Map ret = new LinkedHashMap(); - ret.put("", Collections.singletonList(getStatusLine(response))); - for (Iterator i = headers.entrySet().iterator(); i.hasNext(); ) - { - Map.Entry entry = (Map.Entry) i.next(); - String key = (String) entry.getKey(); - String value = (String) entry.getValue(); - ret.put(key, Collections.singletonList(value)); - } - return ret; - } - - String getStatusLine(Response response) - { - return "HTTP/" + response.getMajorVersion() + - "." + response.getMinorVersion() + - " " + response.getCode() + - " " + response.getMessage(); - } - - public String getHeaderField(int index) - { - if (!connected) - { - try - { - connect(); - } - catch (IOException e) - { - return null; - } - } - if (index == 0) - { - return getStatusLine(response); - } - Iterator i = response.getHeaders().entrySet().iterator(); - Map.Entry entry; - int count = 1; - do - { - if (!i.hasNext()) - { - return null; - } - entry = (Map.Entry) i.next(); - count++; - } - while (count <= index); - return (String) entry.getValue(); - } - - public String getHeaderFieldKey(int index) - { - if (!connected) - { - try - { - connect(); - } - catch (IOException e) - { - return null; - } - } - if (index == 0) - { - return null; - } - Iterator i = response.getHeaders().entrySet().iterator(); - Map.Entry entry; - int count = 1; - do - { - if (!i.hasNext()) - { - return null; - } - entry = (Map.Entry) i.next(); - count++; - } - while (count <= index); - return (String) entry.getKey(); - } - - public String getHeaderField(String name) - { - if (!connected) - { - try - { - connect(); - } - catch (IOException e) - { - return null; - } - } - return (String) response.getHeader(name); - } - - public long getHeaderFieldDate(String name, long def) - { - if (!connected) - { - try - { - connect(); - } - catch (IOException e) - { - return def; - } - } - Date date = response.getDateHeader(name); - return (date == null) ? def : date.getTime(); - } - - public String getContentType() - { - return getHeaderField("Content-Type"); - } - - public int getResponseCode() - throws IOException - { - if (!connected) - { - connect(); - } - return response.getCode(); - } - - public String getResponseMessage() - throws IOException - { - if (!connected) - { - connect(); - } - return response.getMessage(); - } - - // -- HTTPS specific -- - - public String getCipherSuite() - { - if (!connected) - { - throw new IllegalStateException("not connected"); - } - return handshakeEvent.getCipherSuite(); - } - - public Certificate[] getLocalCertificates() - { - if (!connected) - { - throw new IllegalStateException("not connected"); - } - return handshakeEvent.getLocalCertificates(); - } - - public Certificate[] getServerCertificates() - throws SSLPeerUnverifiedException - { - if (!connected) - { - throw new IllegalStateException("not connected"); - } - return handshakeEvent.getPeerCertificates(); - } - - // HandshakeCompletedListener - - public void handshakeCompleted(HandshakeCompletedEvent event) - { - handshakeEvent = event; - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/Handler.java b/libjava/gnu/java/net/protocol/http/Handler.java deleted file mode 100644 index 64054251331..00000000000 --- a/libjava/gnu/java/net/protocol/http/Handler.java +++ /dev/null @@ -1,73 +0,0 @@ -/* Handler.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., 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.java.net.protocol.http; - -import java.io.IOException; -import java.net.URL; -import java.net.URLConnection; -import java.net.URLStreamHandler; - -/** - * An HTTP URL stream handler. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class Handler - extends URLStreamHandler -{ - - /** - * Returns the default HTTP port (80). - */ - protected int getDefaultPort() - { - return HTTPConnection.HTTP_PORT; - } - - /** - * Returns an HTTPURLConnection for the given URL. - */ - public URLConnection openConnection(URL url) - throws IOException - { - return new HTTPURLConnection(url); - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/Headers.java b/libjava/gnu/java/net/protocol/http/Headers.java deleted file mode 100644 index 847ebefc1f6..00000000000 --- a/libjava/gnu/java/net/protocol/http/Headers.java +++ /dev/null @@ -1,369 +0,0 @@ -/* Headers.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., 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.java.net.protocol.http; - -import gnu.java.net.LineInputStream; - -import java.io.IOException; -import java.io.InputStream; -import java.text.DateFormat; -import java.text.ParseException; -import java.util.Collection; -import java.util.Date; -import java.util.Iterator; -import java.util.LinkedHashMap; -import java.util.LinkedHashSet; -import java.util.Map; -import java.util.Set; - -/** - * A collection of HTTP header names and associated values. - * Retrieval of values is case insensitive. An iteration over the keys - * returns the header names in the order they were received. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class Headers - implements Map -{ - - static final DateFormat dateFormat = new HTTPDateFormat(); - - static class Header - { - - final String name; - - Header(String name) - { - if (name == null || name.length() == 0) - { - throw new IllegalArgumentException(name); - } - this.name = name; - } - - public int hashCode() - { - return name.toLowerCase().hashCode(); - } - - public boolean equals(Object other) - { - if (other instanceof Header) - { - return ((Header) other).name.equalsIgnoreCase(name); - } - return false; - } - - public String toString() - { - return name; - } - - } - - static class HeaderEntry - implements Map.Entry - { - - final Map.Entry entry; - - HeaderEntry(Map.Entry entry) - { - this.entry = entry; - } - - public Object getKey() - { - return ((Header) entry.getKey()).name; - } - - public Object getValue() - { - return entry.getValue(); - } - - public Object setValue(Object value) - { - return entry.setValue(value); - } - - public int hashCode() - { - return entry.hashCode(); - } - - public boolean equals(Object other) - { - return entry.equals(other); - } - - public String toString() - { - return getKey().toString() + "=" + getValue(); - } - - } - - private LinkedHashMap headers; - - public Headers() - { - headers = new LinkedHashMap(); - } - - public int size() - { - return headers.size(); - } - - public boolean isEmpty() - { - return headers.isEmpty(); - } - - public boolean containsKey(Object key) - { - return headers.containsKey(new Header((String) key)); - } - - public boolean containsValue(Object value) - { - return headers.containsValue(value); - } - - public Object get(Object key) - { - return headers.get(new Header((String) key)); - } - - /** - * Returns the value of the specified header as a string. - */ - public String getValue(String header) - { - return (String) headers.get(new Header(header)); - } - - /** - * Returns the value of the specified header as an integer, - * or -1 if the header is not present or not an integer. - */ - public int getIntValue(String header) - { - String val = getValue(header); - if (val == null) - { - return -1; - } - try - { - return Integer.parseInt(val); - } - catch (NumberFormatException e) - { - } - return -1; - } - - /** - * Returns the value of the specified header as a date, - * or null if the header is not present or not a date. - */ - public Date getDateValue(String header) - { - String val = getValue(header); - if (val == null) - { - return null; - } - try - { - return dateFormat.parse(val); - } - catch (ParseException e) - { - return null; - } - } - - public Object put(Object key, Object value) - { - return headers.put(new Header((String) key), value); - } - - public Object remove(Object key) - { - return headers.remove(new Header((String) key)); - } - - public void putAll(Map t) - { - for (Iterator i = t.keySet().iterator(); i.hasNext(); ) - { - String key = (String) i.next(); - String value = (String) t.get(key); - headers.put(new Header(key), value); - } - } - - public void clear() - { - headers.clear(); - } - - public Set keySet() - { - Set keys = headers.keySet(); - Set ret = new LinkedHashSet(); - for (Iterator i = keys.iterator(); i.hasNext(); ) - { - ret.add(((Header) i.next()).name); - } - return ret; - } - - public Collection values() - { - return headers.values(); - } - - public Set entrySet() - { - Set entries = headers.entrySet(); - Set ret = new LinkedHashSet(); - for (Iterator i = entries.iterator(); i.hasNext(); ) - { - Map.Entry entry = (Map.Entry) i.next(); - ret.add(new HeaderEntry(entry)); - } - return ret; - } - - public boolean equals(Object other) - { - return headers.equals(other); - } - - public int hashCode() - { - return headers.hashCode(); - } - - /** - * Parse the specified input stream, adding headers to this collection. - */ - public void parse(InputStream in) - throws IOException - { - LineInputStream lin = (in instanceof LineInputStream) ? - (LineInputStream) in : new LineInputStream(in); - - String name = null; - StringBuffer value = new StringBuffer(); - while (true) - { - String line = lin.readLine(); - if (line == null) - { - if (name != null) - { - addValue(name, value.toString()); - } - break; - } - int len = line.length(); - if (len < 2) - { - if (name != null) - { - addValue(name, value.toString()); - } - break; - } - char c1 = line.charAt(0); - if (c1 == ' ' || c1 == '\t') - { - // Continuation - int last = len - 1; - if (line.charAt(last) != '\r') - ++last; - value.append(line.substring(0, last)); - } - else - { - if (name != null) - { - addValue(name, value.toString()); - } - - int di = line.indexOf(':'); - name = line.substring(0, di); - value.setLength(0); - do - { - di++; - } - while (di < len && line.charAt(di) == ' '); - int last = len - 1; - if (line.charAt(last) != '\r') - ++last; - value.append(line.substring(di, last)); - } - } - } - - private void addValue(String name, String value) - { - Header key = new Header(name); - String old = (String) headers.get(key); - if (old == null) - { - headers.put(key, value); - } - else - { - headers.put(key, old + ", " + value); - } - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/Request.java b/libjava/gnu/java/net/protocol/http/Request.java deleted file mode 100644 index 15a459e3eac..00000000000 --- a/libjava/gnu/java/net/protocol/http/Request.java +++ /dev/null @@ -1,914 +0,0 @@ -/* Request.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., 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.java.net.protocol.http; - -import gnu.java.net.BASE64; -import gnu.java.net.LineInputStream; -import gnu.java.net.protocol.http.event.RequestEvent; - -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.net.ProtocolException; -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; -import java.text.DateFormat; -import java.text.ParseException; -import java.util.Calendar; -import java.util.Date; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; -import java.util.Properties; -import java.util.zip.GZIPInputStream; -import java.util.zip.InflaterInputStream; - -/** - * A single HTTP request. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class Request -{ - - /** - * The connection context in which this request is invoked. - */ - protected final HTTPConnection connection; - - /** - * The HTTP method to invoke. - */ - protected final String method; - - /** - * The path identifying the resource. - * This string must conform to the abs_path definition given in RFC2396, - * with an optional "?query" part, and must be URI-escaped by the caller. - */ - protected final String path; - - /** - * The headers in this request. - */ - protected final Headers requestHeaders; - - /** - * The request body provider. - */ - protected RequestBodyWriter requestBodyWriter; - - /** - * Request body negotiation threshold for 100-continue expectations. - */ - protected int requestBodyNegotiationThreshold; - - /** - * The response body reader. - */ - protected ResponseBodyReader responseBodyReader; - - /** - * Map of response header handlers. - */ - protected Map responseHeaderHandlers; - - /** - * The authenticator. - */ - protected Authenticator authenticator; - - /** - * Whether this request has been dispatched yet. - */ - private boolean dispatched; - - /** - * Constructor for a new request. - * @param connection the connection context - * @param method the HTTP method - * @param path the resource path including query part - */ - protected Request(HTTPConnection connection, String method, - String path) - { - this.connection = connection; - this.method = method; - this.path = path; - requestHeaders = new Headers(); - responseHeaderHandlers = new HashMap(); - requestBodyNegotiationThreshold = 4096; - } - - /** - * Returns the connection associated with this request. - * @see #connection - */ - public HTTPConnection getConnection() - { - return connection; - } - - /** - * Returns the HTTP method to invoke. - * @see #method - */ - public String getMethod() - { - return method; - } - - /** - * Returns the resource path. - * @see #path - */ - public String getPath() - { - return path; - } - - /** - * Returns the full request-URI represented by this request, as specified - * by HTTP/1.1. - */ - public String getRequestURI() - { - return connection.getURI() + path; - } - - /** - * Returns the headers in this request. - */ - public Headers getHeaders() - { - return requestHeaders; - } - - /** - * Returns the value of the specified header in this request. - * @param name the header name - */ - public String getHeader(String name) - { - return requestHeaders.getValue(name); - } - - /** - * Returns the value of the specified header in this request as an integer. - * @param name the header name - */ - public int getIntHeader(String name) - { - return requestHeaders.getIntValue(name); - } - - /** - * Returns the value of the specified header in this request as a date. - * @param name the header name - */ - public Date getDateHeader(String name) - { - return requestHeaders.getDateValue(name); - } - - /** - * Sets the specified header in this request. - * @param name the header name - * @param value the header value - */ - public void setHeader(String name, String value) - { - requestHeaders.put(name, value); - } - - /** - * Convenience method to set the entire request body. - * @param requestBody the request body content - */ - public void setRequestBody(byte[] requestBody) - { - setRequestBodyWriter(new ByteArrayRequestBodyWriter(requestBody)); - } - - /** - * Sets the request body provider. - * @param requestBodyWriter the handler used to obtain the request body - */ - public void setRequestBodyWriter(RequestBodyWriter requestBodyWriter) - { - this.requestBodyWriter = requestBodyWriter; - } - - /** - * Sets the response body reader. - * @param responseBodyReader the handler to receive notifications of - * response body content - */ - public void setResponseBodyReader(ResponseBodyReader responseBodyReader) - { - this.responseBodyReader = responseBodyReader; - } - - /** - * Sets a callback handler to be invoked for the specified header name. - * @param name the header name - * @param handler the handler to receive the value for the header - */ - public void setResponseHeaderHandler(String name, - ResponseHeaderHandler handler) - { - responseHeaderHandlers.put(name, handler); - } - - /** - * Sets an authenticator that can be used to handle authentication - * automatically. - * @param authenticator the authenticator - */ - public void setAuthenticator(Authenticator authenticator) - { - this.authenticator = authenticator; - } - - /** - * Sets the request body negotiation threshold. - * If this is set, it determines the maximum size that the request body - * may be before body negotiation occurs(via the - * 100-continue expectation). This ensures that a large - * request body is not sent when the server wouldn't have accepted it - * anyway. - * @param threshold the body negotiation threshold, or <=0 to disable - * request body negotation entirely - */ - public void setRequestBodyNegotiationThreshold(int threshold) - { - requestBodyNegotiationThreshold = threshold; - } - - /** - * Dispatches this request. - * A request can only be dispatched once; calling this method a second - * time results in a protocol exception. - * @exception IOException if an I/O error occurred - * @return an HTTP response object representing the result of the operation - */ - public Response dispatch() - throws IOException - { - if (dispatched) - { - throw new ProtocolException("request already dispatched"); - } - final String CRLF = "\r\n"; - final String HEADER_SEP = ": "; - final String US_ASCII = "US-ASCII"; - final String version = connection.getVersion(); - Response response; - int contentLength = -1; - boolean retry = false; - int attempts = 0; - boolean expectingContinue = false; - if (requestBodyWriter != null) - { - contentLength = requestBodyWriter.getContentLength(); - if (contentLength > requestBodyNegotiationThreshold) - { - expectingContinue = true; - setHeader("Expect", "100-continue"); - } - else - { - setHeader("Content-Length", Integer.toString(contentLength)); - } - } - - try - { - // Loop while authentication fails or continue - do - { - retry = false; - // Send request - connection.fireRequestEvent(RequestEvent.REQUEST_SENDING, this); - - // Get socket output and input streams - OutputStream out = connection.getOutputStream(); - LineInputStream in = - new LineInputStream(connection.getInputStream()); - // Request line - String requestUri = path; - if (connection.isUsingProxy() && - !"*".equals(requestUri) && - !"CONNECT".equals(method)) - { - requestUri = getRequestURI(); - } - String line = method + ' ' + requestUri + ' ' + version + CRLF; - out.write(line.getBytes(US_ASCII)); - // Request headers - for (Iterator i = requestHeaders.keySet().iterator(); - i.hasNext(); ) - { - String name =(String) i.next(); - String value =(String) requestHeaders.get(name); - line = name + HEADER_SEP + value + CRLF; - out.write(line.getBytes(US_ASCII)); - } - out.write(CRLF.getBytes(US_ASCII)); - // Request body - if (requestBodyWriter != null && !expectingContinue) - { - byte[] buffer = new byte[4096]; - int len; - int count = 0; - - requestBodyWriter.reset(); - do - { - len = requestBodyWriter.write(buffer); - if (len > 0) - { - out.write(buffer, 0, len); - } - count += len; - } - while (len > -1 && count < contentLength); - out.write(CRLF.getBytes(US_ASCII)); - } - out.flush(); - // Sent event - connection.fireRequestEvent(RequestEvent.REQUEST_SENT, this); - // Get response - response = readResponse(in); - int sc = response.getCode(); - if (sc == 401 && authenticator != null) - { - if (authenticate(response, attempts++)) - { - retry = true; - } - } - else if (sc == 100 && expectingContinue) - { - requestHeaders.remove("Expect"); - setHeader("Content-Length", Integer.toString(contentLength)); - expectingContinue = false; - retry = true; - } - } - while (retry); - } - catch (IOException e) - { - connection.close(); - throw e; - } - return response; - } - - Response readResponse(LineInputStream in) - throws IOException - { - String line; - int len; - - // Read response status line - line = in.readLine(); - if (line == null) - { - throw new ProtocolException("Peer closed connection"); - } - if (!line.startsWith("HTTP/")) - { - throw new ProtocolException(line); - } - len = line.length(); - int start = 5, end = 6; - while (line.charAt(end) != '.') - { - end++; - } - int majorVersion = Integer.parseInt(line.substring(start, end)); - start = end + 1; - end = start + 1; - while (line.charAt(end) != ' ') - { - end++; - } - int minorVersion = Integer.parseInt(line.substring(start, end)); - start = end + 1; - end = start + 3; - int code = Integer.parseInt(line.substring(start, end)); - String message = line.substring(end + 1, len - 1); - // Read response headers - Headers responseHeaders = new Headers(); - responseHeaders.parse(in); - notifyHeaderHandlers(responseHeaders); - // Construct response - int codeClass = code / 100; - Response ret = new Response(majorVersion, minorVersion, code, - codeClass, message, responseHeaders); - switch (code) - { - case 204: - case 205: - break; - default: - // Does response body reader want body? - boolean notify = (responseBodyReader != null); - if (notify) - { - if (!responseBodyReader.accept(this, ret)) - { - notify = false; - } - } - readResponseBody(ret, in, notify); - } - return ret; - } - - void notifyHeaderHandlers(Headers headers) - { - for (Iterator i = headers.entrySet().iterator(); i.hasNext(); ) - { - Map.Entry entry = (Map.Entry) i.next(); - String name =(String) entry.getKey(); - // Handle Set-Cookie - if ("Set-Cookie".equalsIgnoreCase(name)) - { - String value = (String) entry.getValue(); - handleSetCookie(value); - } - ResponseHeaderHandler handler = - (ResponseHeaderHandler) responseHeaderHandlers.get(name); - if (handler != null) - { - String value = (String) entry.getValue(); - handler.setValue(value); - } - } - } - - void readResponseBody(Response response, InputStream in, - boolean notify) - throws IOException - { - byte[] buffer = new byte[4096]; - int contentLength = -1; - Headers trailer = null; - - String transferCoding = response.getHeader("Transfer-Encoding"); - if ("chunked".equalsIgnoreCase(transferCoding)) - { - trailer = new Headers(); - in = new ChunkedInputStream(in, trailer); - } - else - { - contentLength = response.getIntHeader("Content-Length"); - } - String contentCoding = response.getHeader("Content-Encoding"); - if (contentCoding != null && !"identity".equals(contentCoding)) - { - if ("gzip".equals(contentCoding)) - { - in = new GZIPInputStream(in); - } - else if ("deflate".equals(contentCoding)) - { - in = new InflaterInputStream(in); - } - else - { - throw new ProtocolException("Unsupported Content-Encoding: " + - contentCoding); - } - } - - // Persistent connections are the default in HTTP/1.1 - boolean doClose = "close".equalsIgnoreCase(getHeader("Connection")) || - "close".equalsIgnoreCase(response.getHeader("Connection")) || - (connection.majorVersion == 1 && connection.minorVersion == 0) || - (response.majorVersion == 1 && response.minorVersion == 0); - - int count = contentLength; - int len = (count > -1) ? count : buffer.length; - len = (len > buffer.length) ? buffer.length : len; - while (len > -1) - { - len = in.read(buffer, 0, len); - if (len < 0) - { - // EOF - connection.closeConnection(); - break; - } - if (notify) - { - responseBodyReader.read(buffer, 0, len); - } - if (count > -1) - { - count -= len; - if (count < 1) - { - if (doClose) - { - connection.closeConnection(); - } - break; - } - } - } - if (notify) - { - responseBodyReader.close(); - } - if (trailer != null) - { - response.getHeaders().putAll(trailer); - notifyHeaderHandlers(trailer); - } - } - - boolean authenticate(Response response, int attempts) - throws IOException - { - String challenge = response.getHeader("WWW-Authenticate"); - if (challenge == null) - { - challenge = response.getHeader("Proxy-Authenticate"); - } - int si = challenge.indexOf(' '); - String scheme = (si == -1) ? challenge : challenge.substring(0, si); - if ("Basic".equalsIgnoreCase(scheme)) - { - Properties params = parseAuthParams(challenge.substring(si + 1)); - String realm = params.getProperty("realm"); - Credentials creds = authenticator.getCredentials(realm, attempts); - String userPass = creds.getUsername() + ':' + creds.getPassword(); - byte[] b_userPass = userPass.getBytes("US-ASCII"); - byte[] b_encoded = BASE64.encode(b_userPass); - String authorization = - scheme + " " + new String(b_encoded, "US-ASCII"); - setHeader("Authorization", authorization); - return true; - } - else if ("Digest".equalsIgnoreCase(scheme)) - { - Properties params = parseAuthParams(challenge.substring(si + 1)); - String realm = params.getProperty("realm"); - String nonce = params.getProperty("nonce"); - String qop = params.getProperty("qop"); - String algorithm = params.getProperty("algorithm"); - String digestUri = getRequestURI(); - Credentials creds = authenticator.getCredentials(realm, attempts); - String username = creds.getUsername(); - String password = creds.getPassword(); - connection.incrementNonce(nonce); - try - { - MessageDigest md5 = MessageDigest.getInstance("MD5"); - final byte[] COLON = { 0x3a }; - - // Calculate H(A1) - md5.reset(); - md5.update(username.getBytes("US-ASCII")); - md5.update(COLON); - md5.update(realm.getBytes("US-ASCII")); - md5.update(COLON); - md5.update(password.getBytes("US-ASCII")); - byte[] ha1 = md5.digest(); - if ("md5-sess".equals(algorithm)) - { - byte[] cnonce = generateNonce(); - md5.reset(); - md5.update(ha1); - md5.update(COLON); - md5.update(nonce.getBytes("US-ASCII")); - md5.update(COLON); - md5.update(cnonce); - ha1 = md5.digest(); - } - String ha1Hex = toHexString(ha1); - - // Calculate H(A2) - md5.reset(); - md5.update(method.getBytes("US-ASCII")); - md5.update(COLON); - md5.update(digestUri.getBytes("US-ASCII")); - if ("auth-int".equals(qop)) - { - byte[] hEntity = null; // TODO hash of entity body - md5.update(COLON); - md5.update(hEntity); - } - byte[] ha2 = md5.digest(); - String ha2Hex = toHexString(ha2); - - // Calculate response - md5.reset(); - md5.update(ha1Hex.getBytes("US-ASCII")); - md5.update(COLON); - md5.update(nonce.getBytes("US-ASCII")); - if ("auth".equals(qop) || "auth-int".equals(qop)) - { - String nc = getNonceCount(nonce); - byte[] cnonce = generateNonce(); - md5.update(COLON); - md5.update(nc.getBytes("US-ASCII")); - md5.update(COLON); - md5.update(cnonce); - md5.update(COLON); - md5.update(qop.getBytes("US-ASCII")); - } - md5.update(COLON); - md5.update(ha2Hex.getBytes("US-ASCII")); - String digestResponse = toHexString(md5.digest()); - - String authorization = scheme + - " username=\"" + username + "\"" + - " realm=\"" + realm + "\"" + - " nonce=\"" + nonce + "\"" + - " uri=\"" + digestUri + "\"" + - " response=\"" + digestResponse + "\""; - setHeader("Authorization", authorization); - return true; - } - catch (NoSuchAlgorithmException e) - { - return false; - } - } - // Scheme not recognised - return false; - } - - Properties parseAuthParams(String text) - { - int len = text.length(); - String key = null; - StringBuffer buf = new StringBuffer(); - Properties ret = new Properties(); - boolean inQuote = false; - for (int i = 0; i < len; i++) - { - char c = text.charAt(i); - if (c == '"') - { - inQuote = !inQuote; - } - else if (c == '=' && key == null) - { - key = buf.toString().trim(); - buf.setLength(0); - } - else if (c == ' ' && !inQuote) - { - String value = unquote(buf.toString().trim()); - ret.put(key, value); - key = null; - buf.setLength(0); - } - else if (c != ',' || (i <(len - 1) && text.charAt(i + 1) != ' ')) - { - buf.append(c); - } - } - if (key != null) - { - String value = unquote(buf.toString().trim()); - ret.put(key, value); - } - return ret; - } - - String unquote(String text) - { - int len = text.length(); - if (len > 0 && text.charAt(0) == '"' && text.charAt(len - 1) == '"') - { - return text.substring(1, len - 1); - } - return text; - } - - /** - * Returns the number of times the specified nonce value has been seen. - * This always returns an 8-byte 0-padded hexadecimal string. - */ - String getNonceCount(String nonce) - { - int nc = connection.getNonceCount(nonce); - String hex = Integer.toHexString(nc); - StringBuffer buf = new StringBuffer(); - for (int i = 8 - hex.length(); i > 0; i--) - { - buf.append('0'); - } - buf.append(hex); - return buf.toString(); - } - - /** - * Client nonce value. - */ - byte[] nonce; - - /** - * Generates a new client nonce value. - */ - byte[] generateNonce() - throws IOException, NoSuchAlgorithmException - { - if (nonce == null) - { - long time = System.currentTimeMillis(); - MessageDigest md5 = MessageDigest.getInstance("MD5"); - md5.update(Long.toString(time).getBytes("US-ASCII")); - nonce = md5.digest(); - } - return nonce; - } - - String toHexString(byte[] bytes) - { - char[] ret = new char[bytes.length * 2]; - for (int i = 0, j = 0; i < bytes.length; i++) - { - int c =(int) bytes[i]; - if (c < 0) - { - c += 0x100; - } - ret[j++] = Character.forDigit(c / 0x10, 0x10); - ret[j++] = Character.forDigit(c % 0x10, 0x10); - } - return new String(ret); - } - - /** - * Parse the specified cookie list and notify the cookie manager. - */ - void handleSetCookie(String text) - { - CookieManager cookieManager = connection.getCookieManager(); - if (cookieManager == null) - { - return; - } - String name = null; - String value = null; - String comment = null; - String domain = connection.getHostName(); - String path = this.path; - int lsi = path.lastIndexOf('/'); - if (lsi != -1) - { - path = path.substring(0, lsi); - } - boolean secure = false; - Date expires = null; - - int len = text.length(); - String attr = null; - StringBuffer buf = new StringBuffer(); - boolean inQuote = false; - for (int i = 0; i <= len; i++) - { - char c =(i == len) ? '\u0000' : text.charAt(i); - if (c == '"') - { - inQuote = !inQuote; - } - else if (!inQuote) - { - if (c == '=' && attr == null) - { - attr = buf.toString().trim(); - buf.setLength(0); - } - else if (c == ';' || i == len || c == ',') - { - String val = unquote(buf.toString().trim()); - if (name == null) - { - name = attr; - value = val; - } - else if ("Comment".equalsIgnoreCase(attr)) - { - comment = val; - } - else if ("Domain".equalsIgnoreCase(attr)) - { - domain = val; - } - else if ("Path".equalsIgnoreCase(attr)) - { - path = val; - } - else if ("Secure".equalsIgnoreCase(val)) - { - secure = true; - } - else if ("Max-Age".equalsIgnoreCase(attr)) - { - int delta = Integer.parseInt(val); - Calendar cal = Calendar.getInstance(); - cal.setTimeInMillis(System.currentTimeMillis()); - cal.add(Calendar.SECOND, delta); - expires = cal.getTime(); - } - else if ("Expires".equalsIgnoreCase(attr)) - { - DateFormat dateFormat = new HTTPDateFormat(); - try - { - expires = dateFormat.parse(val); - } - catch (ParseException e) - { - // if this isn't a valid date, it may be that - // the value was returned unquoted; in that case, we - // want to continue buffering the value - buf.append(c); - continue; - } - } - attr = null; - buf.setLength(0); - // case EOL - if (i == len || c == ',') - { - Cookie cookie = new Cookie(name, value, comment, domain, - path, secure, expires); - cookieManager.setCookie(cookie); - } - if (c == ',') - { - // Reset cookie fields - name = null; - value = null; - comment = null; - domain = connection.getHostName(); - path = this.path; - if (lsi != -1) - { - path = path.substring(0, lsi); - } - secure = false; - expires = null; - } - } - else - { - buf.append(c); - } - } - else - { - buf.append(c); - } - } - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/RequestBodyWriter.java b/libjava/gnu/java/net/protocol/http/RequestBodyWriter.java deleted file mode 100644 index 05d98ebb81a..00000000000 --- a/libjava/gnu/java/net/protocol/http/RequestBodyWriter.java +++ /dev/null @@ -1,69 +0,0 @@ -/* RequestBodyWriter.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., 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.java.net.protocol.http; - -/** - * Callback interface for writing request body content. - * - * @author Chris Burdess (dog@gnu.org) - */ -public interface RequestBodyWriter -{ - - /** - * Returns the total number of bytes that will be written in a single pass - * by this writer. - */ - int getContentLength(); - - /** - * Initialises the writer. - * This will be called before each pass. - */ - void reset(); - - /** - * Writes body content to the supplied buffer. - * @param buffer the content buffer - * @return the number of bytes written - */ - int write(byte[] buffer); - -} - diff --git a/libjava/gnu/java/net/protocol/http/Response.java b/libjava/gnu/java/net/protocol/http/Response.java deleted file mode 100644 index 29dc28b17d3..00000000000 --- a/libjava/gnu/java/net/protocol/http/Response.java +++ /dev/null @@ -1,185 +0,0 @@ -/* Response.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., 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.java.net.protocol.http; - -import java.util.Date; - -/** - * An HTTP response. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class Response -{ - - /** - * The HTTP major version of the server issuing the response. - */ - protected final int majorVersion; - - /** - * The HTTP minor version of the server issuing the response. - */ - protected final int minorVersion; - - /** - * The HTTP status code of the response. - */ - protected final int code; - - /** - * The class of the response. This is the most significant digit of the - * status code. - *
- *
1xx
Informational response
- *
2xx
Success
- *
3xx
Redirection
- *
4xx
Client error
- *
5xx
Server error
- *
- */ - protected final int codeClass; - - /** - * Human-readable text of the response. - */ - protected final String message; - - /** - * The response headers. - */ - protected final Headers headers; - - /** - * Constructs a new response with the specified parameters. - */ - protected Response(int majorVersion, int minorVersion, int code, - int codeClass, String message, - Headers headers) - { - this.majorVersion = majorVersion; - this.minorVersion = minorVersion; - this.code = code; - this.codeClass = codeClass; - this.message = message; - this.headers = headers; - } - - /** - * Returns the HTTP major version of the server issuing the response. - * @see #majorVersion - */ - public int getMajorVersion() - { - return majorVersion; - } - - /** - * Returns the HTTP minor version of the server issuing the response. - * @see #minorVersion - */ - public int getMinorVersion() - { - return minorVersion; - } - - /** - * Returns the HTTP status code of the response. - * @see #code - */ - public int getCode() - { - return code; - } - - /** - * Returns the class of the response. - * @see #codeClass - */ - public int getCodeClass() - { - return codeClass; - } - - /** - * Returns the human-readable text of the response. - * @see #message - */ - public String getMessage() - { - return message; - } - - /** - * Returns the headers in the response. - */ - public Headers getHeaders() - { - return headers; - } - - /** - * Returns the header value for the specified name. - * @param name the header name - */ - public String getHeader(String name) - { - return headers.getValue(name); - } - - /** - * Returns the header value for the specified name as an integer. - * @param name the header name - */ - public int getIntHeader(String name) - { - return headers.getIntValue(name); - } - - /** - * Returns the header value for the specified name as a date. - * @param name the header name - */ - public Date getDateHeader(String name) - { - return headers.getDateValue(name); - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/ResponseBodyReader.java b/libjava/gnu/java/net/protocol/http/ResponseBodyReader.java deleted file mode 100644 index 49e1b376f0f..00000000000 --- a/libjava/gnu/java/net/protocol/http/ResponseBodyReader.java +++ /dev/null @@ -1,70 +0,0 @@ -/* ResponseBodyReader.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., 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.java.net.protocol.http; - -/** - * Callback interface for receiving notification of response body content. - * - * @author Chris Burdess (dog@gnu.org) - */ -public interface ResponseBodyReader -{ - - /** - * Indicate whether this reader is interested in the specified response. - * If it returns false, it will not receive body content notifications for - * that response. - */ - boolean accept(Request request, Response response); - - /** - * Receive notification of body content. - * @param buffer the content buffer - * @param offset the offset within the buffer that content starts - * @param length the length of the content - */ - void read(byte[] buffer, int offset, int length); - - /** - * Notifies the reader that the end of the content was reached. - */ - void close(); - -} - diff --git a/libjava/gnu/java/net/protocol/http/ResponseHeaderHandler.java b/libjava/gnu/java/net/protocol/http/ResponseHeaderHandler.java deleted file mode 100644 index 8e4e6492acf..00000000000 --- a/libjava/gnu/java/net/protocol/http/ResponseHeaderHandler.java +++ /dev/null @@ -1,57 +0,0 @@ -/* ResponseHeaderHandler.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., 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.java.net.protocol.http; - -/** - * Callback interface for objects that wish to be notified of response - * header values. - * @see Request#setHeaderHandler(String) - * - * @author Chris Burdess (dog@gnu.org) - */ -public interface ResponseHeaderHandler -{ - - /** - * Sets the value for the header associated with this handler. - */ - void setValue(String value); - -} - diff --git a/libjava/gnu/java/net/protocol/http/SimpleCookieManager.java b/libjava/gnu/java/net/protocol/http/SimpleCookieManager.java deleted file mode 100644 index 8947471885c..00000000000 --- a/libjava/gnu/java/net/protocol/http/SimpleCookieManager.java +++ /dev/null @@ -1,140 +0,0 @@ -/* CookieManager.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., 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.java.net.protocol.http; - -import java.util.ArrayList; -import java.util.Date; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -/** - * A simple non-persistent cookie manager. This class can be extended to - * provide cookie persistence. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class SimpleCookieManager - implements CookieManager -{ - - /** - * The cookie cache. - * This is a dictionary mapping domains to maps of cookies by name. - */ - protected Map cookies; - - /** - * Constructor. - */ - public SimpleCookieManager() - { - cookies = new HashMap(); - } - - public void setCookie(Cookie cookie) - { - String domain = cookie.getDomain(); - Map map =(Map) cookies.get(domain); - if (map == null) - { - map = new HashMap(); - cookies.put(domain, map); - } - String name = cookie.getName(); - map.put(name, cookie); // will replace a cookie of the same name - } - - public Cookie[] getCookies(String host, boolean secure, String path) - { - List matches = new ArrayList(); - Date now = new Date(); - if (Character.isLetter(host.charAt(0))) - { - int di = host.indexOf('.'); - while (di != -1) - { - addCookies(matches, host, secure, path, now); - host = host.substring(di); - di = host.indexOf('.', 1); - } - } - addCookies(matches, host, secure, path, now); - Cookie[] ret = new Cookie[matches.size()]; - matches.toArray(ret); - return ret; - } - - private void addCookies(List matches, String domain, boolean secure, - String path, Date now) - { - Map map = (Map) cookies.get(domain); - if (map != null) - { - List expired = new ArrayList(); - for (Iterator i = map.entrySet().iterator(); i.hasNext(); ) - { - Map.Entry entry = (Map.Entry) i.next(); - Cookie cookie = (Cookie) entry.getValue(); - Date expires = cookie.getExpiryDate(); - if (expires != null && expires.before(now)) - { - expired.add(entry.getKey()); - continue; - } - if (secure && !cookie.isSecure()) - { - continue; - } - if (path.startsWith(cookie.getPath())) - { - matches.add(cookie); - } - } - // Good housekeeping - for (Iterator i = expired.iterator(); i.hasNext(); ) - { - map.remove(i.next()); - } - } - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/event/ConnectionEvent.java b/libjava/gnu/java/net/protocol/http/event/ConnectionEvent.java deleted file mode 100644 index 3f6f5454e73..00000000000 --- a/libjava/gnu/java/net/protocol/http/event/ConnectionEvent.java +++ /dev/null @@ -1,81 +0,0 @@ -/* ConnectionEvent.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., 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.java.net.protocol.http.event; - -import java.util.EventObject; - -/** - * A connection event. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class ConnectionEvent - extends EventObject -{ - - /** - * The connection closed event type. - */ - public static final int CONNECTION_CLOSED = 0; - - /** - * The type of this event. - */ - protected int type; - - /** - * Constructs a connection event with the specified source and type. - */ - public ConnectionEvent(Object source, int type) - { - super(source); - this.type = type; - } - - /** - * Returns the type of this event. - * @see #type - */ - public int getType() - { - return type; - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/event/ConnectionListener.java b/libjava/gnu/java/net/protocol/http/event/ConnectionListener.java deleted file mode 100644 index 073e89d4407..00000000000 --- a/libjava/gnu/java/net/protocol/http/event/ConnectionListener.java +++ /dev/null @@ -1,58 +0,0 @@ -/* ConnectionListener.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., 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.java.net.protocol.http.event; - -import java.util.EventListener; - -/** - * A connection listener. - * - * @author Chris Burdess (dog@gnu.org) - */ -public interface ConnectionListener - extends EventListener -{ - - /** - * Callback invoked when the associated connection is closed. - */ - void connectionClosed(ConnectionEvent event); - -} - diff --git a/libjava/gnu/java/net/protocol/http/event/RequestEvent.java b/libjava/gnu/java/net/protocol/http/event/RequestEvent.java deleted file mode 100644 index 281c621f33f..00000000000 --- a/libjava/gnu/java/net/protocol/http/event/RequestEvent.java +++ /dev/null @@ -1,107 +0,0 @@ -/* RequestEvent.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., 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.java.net.protocol.http.event; - -import gnu.java.net.protocol.http.Request; - -import java.util.EventObject; - -/** - * A request event. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class RequestEvent - extends EventObject -{ - - /** - * The request created event type. - */ - public static final int REQUEST_CREATED = 0; - - /** - * The request sending event type. - */ - public static final int REQUEST_SENDING = 1; - - /** - * The request sent event type. - */ - public static final int REQUEST_SENT = 2; - - /** - * The type of this event. - */ - protected int type; - - /** - * The request associated with this event. - */ - protected Request request; - - /** - * Constructs a request event with the specified source, type, and request. - */ - public RequestEvent(Object source, int type, Request request) - { - super(source); - this.type = type; - this.request = request; - } - - /** - * Returns the type of this event. - * @see #type - */ - public int getType() - { - return type; - } - - /** - * Returns the request associated with this event. - */ - public Request getRequest() - { - return request; - } - -} - diff --git a/libjava/gnu/java/net/protocol/http/event/RequestListener.java b/libjava/gnu/java/net/protocol/http/event/RequestListener.java deleted file mode 100644 index c880fbce6f0..00000000000 --- a/libjava/gnu/java/net/protocol/http/event/RequestListener.java +++ /dev/null @@ -1,70 +0,0 @@ -/* RequestListener.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., 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.java.net.protocol.http.event; - -import java.util.EventListener; - -/** - * A request listener. - * - * @author Chris Burdess (dog@gnu.org) - */ -public interface RequestListener - extends EventListener -{ - - /** - * Callback invoked when a request is created from the associated - * connection. - */ - void requestCreated(RequestEvent event); - - /** - * Callback invoked when the request has been initialised with all data - * and before sending this data to the server. - */ - void requestSending(RequestEvent event); - - /** - * Callback invoked after all request data has been sent to the server. - */ - void requestSent(RequestEvent event); - -} - diff --git a/libjava/gnu/java/net/protocol/https/Handler.java b/libjava/gnu/java/net/protocol/https/Handler.java deleted file mode 100644 index 2b137517021..00000000000 --- a/libjava/gnu/java/net/protocol/https/Handler.java +++ /dev/null @@ -1,76 +0,0 @@ -/* Handler.java -- - Copyright (C) 2004, 2005 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.java.net.protocol.https; - -import gnu.java.net.protocol.http.HTTPConnection; -import gnu.java.net.protocol.http.HTTPURLConnection; - -import java.io.IOException; -import java.net.URL; -import java.net.URLConnection; -import java.net.URLStreamHandler; - -/** - * An HTTPS URL stream handler. - * - * @author Chris Burdess (dog@gnu.org) - */ -public class Handler - extends URLStreamHandler -{ - - /** - * Returns the default HTTPS port (443). - */ - protected int getDefaultPort() - { - return HTTPConnection.HTTPS_PORT; - } - - /** - * Returns an HTTPURLConnection for the given URL. - */ - public URLConnection openConnection(URL url) - throws IOException - { - return new HTTPURLConnection(url); - } - -} - diff --git a/libjava/gnu/java/net/protocol/jar/Handler.java b/libjava/gnu/java/net/protocol/jar/Handler.java deleted file mode 100644 index d45411c47e5..00000000000 --- a/libjava/gnu/java/net/protocol/jar/Handler.java +++ /dev/null @@ -1,169 +0,0 @@ -/* gnu.java.net.protocol.jar.Handler - jar protocol handler for java.net - Copyright (C) 1999, 2002, 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., 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.java.net.protocol.jar; - -import gnu.java.net.URLParseError; - -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.net.URLStreamHandler; - -/** - * @author Kresten Krab Thorup (krab@gnu.org) - */ -public class Handler extends URLStreamHandler -{ - /** - * A do nothing constructor - */ - public Handler() - { - } - - /** - * This method returs a new JarURLConnection for the specified URL - * - * @param url The URL to return a connection for - * - * @return The URLConnection - * - * @exception IOException If an error occurs - */ - protected URLConnection openConnection(URL url) throws IOException - { - return new Connection(url); - } - - /** - * This method overrides URLStreamHandler's for parsing url of protocol "jar" - * - * @param url The URL object in which to store the results - * @param url_string The String-ized URL to parse - * @param start The position in the string to start scanning from - * @param end The position in the string to stop scanning - */ - protected void parseURL (URL url, String url_string, int start, int end) - { - // This method does not throw an exception or return a value. Thus our - // strategy when we encounter an error in parsing is to return without - // doing anything. - String file = url.getFile(); - - if (!file.equals("")) - { //has context url - url_string = url_string.substring (start, end); - if (url_string.startsWith("/")) - { //url string is an absolute path - int idx = file.lastIndexOf ("!/"); - - if (idx < 0) - throw new URLParseError("no !/ in spec"); - - file = file.substring (0, idx + 1) + url_string; - } - else - { - int idx = file.lastIndexOf ("/"); - if (idx == -1) //context path is weird - file = "/" + url_string; - else if (idx == (file.length() - 1)) - //just concatenate two parts - file = file + url_string; - else - // according to Java API Documentation, here is a little different - // with URLStreamHandler.parseURL - // but JDK seems doesn't handle it well - file = file.substring(0, idx + 1) + url_string; - } - - setURL (url, "jar", url.getHost(), url.getPort(), file, null); - return; - } - - // Bunches of things should be true. Make sure. - if (end < start) - return; - if (end - start < 2) - return; - if (start > url_string.length()) - return; - - // Skip remains of protocol - url_string = url_string.substring (start, end); - - int jar_stop; - if ((jar_stop = url_string.indexOf("!/")) < 0) - throw new URLParseError("no !/ in spec"); - - try - { - new URL(url_string.substring (0, jar_stop)); - } - catch (MalformedURLException e) - { - throw new URLParseError("invalid inner URL: " + e.getMessage()); - } - - if (!url.getProtocol().equals ("jar") ) - throw new URLParseError("unexpected protocol " + url.getProtocol()); - - setURL (url, "jar", url.getHost(), url.getPort(), url_string, null); - } - - /** - * This method converts a Jar URL object into a String. - * - * @param url The URL object to convert - */ - protected String toExternalForm (URL url) - { - String file = url.getFile(); - - // return "jar:" + file; - // Performance!!: - // Do the concatenation manually to avoid resize StringBuffer's - // internal buffer. - StringBuffer sb = new StringBuffer (file.length() + 5); - sb.append ("jar:"); - sb.append (file); - return sb.toString(); - } -} diff --git a/libjava/gnu/java/nio/ChannelInputStream.java b/libjava/gnu/java/nio/ChannelInputStream.java deleted file mode 100644 index 675a62f3d88..00000000000 --- a/libjava/gnu/java/nio/ChannelInputStream.java +++ /dev/null @@ -1,79 +0,0 @@ -/* ChannelInputStream.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., 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.java.nio; - -import java.io.IOException; -import java.io.InputStream; -import java.nio.ByteBuffer; -import java.nio.channels.IllegalBlockingModeException; -import java.nio.channels.ReadableByteChannel; -import java.nio.channels.SelectableChannel; - -/** - * @author Michael Koch - */ -public final class ChannelInputStream extends InputStream -{ - private ReadableByteChannel ch; - - public ChannelInputStream (ReadableByteChannel ch) - { - super(); - - this.ch = ch; - } - - public int read() throws IOException - { - if (ch instanceof SelectableChannel - && (! ((SelectableChannel) ch).isBlocking())) - throw new IllegalBlockingModeException(); - - ByteBuffer buffer = ByteBuffer.allocate(1); - int result = ch.read(buffer); - - if (result == -1) - return -1; - - if (result == 0) - throw new IOException("Could not read from channel"); - - return buffer.get(0); - } -} diff --git a/libjava/gnu/java/nio/ChannelOutputStream.java b/libjava/gnu/java/nio/ChannelOutputStream.java deleted file mode 100644 index 08323eacec4..00000000000 --- a/libjava/gnu/java/nio/ChannelOutputStream.java +++ /dev/null @@ -1,67 +0,0 @@ -/* ChannelOutputStream.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., 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.java.nio; - -import java.io.IOException; -import java.io.OutputStream; -import java.nio.ByteBuffer; -import java.nio.channels.WritableByteChannel; - -/** - * @author Michael Koch - */ -public final class ChannelOutputStream extends OutputStream -{ - private WritableByteChannel ch; - - public ChannelOutputStream (WritableByteChannel ch) - { - super(); - - this.ch = ch; - } - - public void write (int value) throws IOException - { - ByteBuffer buffer = ByteBuffer.allocate (1); - buffer.put ((byte) (value & 0xff)); - buffer.flip(); - ch.write (buffer); - } -} diff --git a/libjava/gnu/java/nio/ChannelReader.java b/libjava/gnu/java/nio/ChannelReader.java deleted file mode 100644 index 44fe6625a3b..00000000000 --- a/libjava/gnu/java/nio/ChannelReader.java +++ /dev/null @@ -1,211 +0,0 @@ -/* ChannelReader.java -- - Copyright (C) 2005 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.java.nio; - -import java.io.IOException; -import java.io.Reader; -import java.nio.ByteBuffer; -import java.nio.CharBuffer; -import java.nio.channels.ReadableByteChannel; -import java.nio.charset.CharsetDecoder; -import java.nio.charset.CoderResult; -import java.nio.charset.CodingErrorAction; - -/** - * A Reader implementation that works using a ReadableByteChannel and a - * CharsetDecoder. - * - *

- * This is a bridge between NIO <-> IO character decoding. - *

- * - * @author Robert Schuster - */ -public class ChannelReader extends Reader -{ - - private static final int DEFAULT_BUFFER_CAP = 8192; - - private ReadableByteChannel channel; - - private CharsetDecoder decoder; - - private ByteBuffer byteBuffer; - - private CharBuffer charBuffer; - - public ChannelReader(ReadableByteChannel channel, CharsetDecoder decoder, - int minBufferCap) - { - this.channel = channel; - this.decoder = decoder; - - // JDK reports errors, so we do the same. - decoder.onMalformedInput(CodingErrorAction.REPORT); - decoder.onUnmappableCharacter(CodingErrorAction.REPORT); - decoder.reset(); - - int size = (minBufferCap == -1) ? DEFAULT_BUFFER_CAP : minBufferCap; - - // Allocates the buffers and prepares them for reading, because that is the - // first operation being done on them. - byteBuffer = ByteBuffer.allocate(size); - byteBuffer.flip(); - charBuffer = CharBuffer.allocate((int) (size * decoder.averageCharsPerByte())); - } - - public int read(char[] buf, int offset, int count) throws IOException - { - // I declared channel being null meaning that the reader is closed. - if (!channel.isOpen()) - throw new IOException("Reader was already closed."); - - // I declared decoder being null meaning that there is no more data to read - // and convert. - if (decoder == null) - return -1; - - // Stores the amount of character being read. It -1 so that if no conversion - // occured the caller will see this as an 'end of file'. - int sum = -1; - - // Copies any characters which may be left from the last invocation into the - // destination array. - if (charBuffer.remaining() > 0) - { - sum = Math.min(count, charBuffer.remaining()); - charBuffer.get(buf, offset, sum); - - // Updates the control variables according to the latest copy operation. - offset += sum; - count -= sum; - } - - // Copies the character which have not been put in the destination array to - // the beginning. If data is actually copied count will be 0. If no data is - // copied count is >0 and we can now convert some more characters. - charBuffer.compact(); - - int converted = 0; - boolean last = false; - - while (count != 0) - { - // Tries to convert some bytes (Which will intentionally fail in the - // first place because we have not read any bytes yet.) - CoderResult result = decoder.decode(byteBuffer, charBuffer, last); - if (result.isMalformed() || result.isUnmappable()) - { - // JDK throws exception when bytes are malformed for sure. - // FIXME: Unsure what happens when a character is simply - // unmappable. - result.throwException(); - } - - // Marks that we should end this loop regardless whether the caller - // wants more chars or not, when this was the last conversion. - if (last) - { - decoder = null; - } - else if (result.isUnderflow()) - { - // We need more bytes to do the conversion. - - // Copies the not yet converted bytes to the beginning making it - // being able to receive more bytes. - byteBuffer.compact(); - - // Reads in another bunch of bytes for being converted. - if (channel.read(byteBuffer) == -1) - { - // If there is no more data available in the channel we mark - // that state for the final character conversion run which is - // done in the next loop iteration. - last = true; - } - - // Prepares the byteBuffer for the next character conversion run. - byteBuffer.flip(); - } - - // Prepares the charBuffer for being drained. - charBuffer.flip(); - - converted = Math.min(count, charBuffer.remaining()); - charBuffer.get(buf, offset, converted); - - // Copies characters which have not yet being copied into the char-Array - // to the beginning making it possible to read them later (If data is - // really copied here, then the caller has received enough characters so - // far.). - charBuffer.compact(); - - // Updates the control variables according to the latest copy operation. - offset += converted; - count -= converted; - - // Updates the amount of transferred characters. - sum += converted; - - if (decoder == null) - { - break; - } - - // Now that more characters have been transfered we let the loop decide - // what to do next. - } - - // Makes the charBuffer ready for reading on the next invocation. - charBuffer.flip(); - - return sum; - } - - public void close() throws IOException - { - channel.close(); - - // Makes sure all intermediate data is released by the decoder. - if (decoder != null) - decoder.reset(); - } - -} diff --git a/libjava/gnu/java/nio/FileLockImpl.java b/libjava/gnu/java/nio/FileLockImpl.java deleted file mode 100644 index 245fa73402a..00000000000 --- a/libjava/gnu/java/nio/FileLockImpl.java +++ /dev/null @@ -1,82 +0,0 @@ -/* FileLockImpl.java -- - Copyright (C) 2002, 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.java.nio; - -import gnu.java.nio.channels.FileChannelImpl; - -import java.io.IOException; -import java.nio.channels.FileLock; - -/** - * @author Michael Koch - * @since 1.4 - */ -public class FileLockImpl extends FileLock -{ - private FileChannelImpl ch; - - public FileLockImpl (FileChannelImpl channel, long position, - long size, boolean shared) - { - super (channel, position, size, shared); - ch = channel; - } - - protected void finalize() - { - try - { - release(); - } - catch (IOException e) - { - // Ignore this. - } - } - - public boolean isValid () - { - return channel().isOpen(); - } - - public synchronized void release () throws IOException - { - ch.unlock(position(), size()); - } -} diff --git a/libjava/gnu/java/nio/InputStreamChannel.java b/libjava/gnu/java/nio/InputStreamChannel.java deleted file mode 100644 index a3dffe24554..00000000000 --- a/libjava/gnu/java/nio/InputStreamChannel.java +++ /dev/null @@ -1,88 +0,0 @@ -/* InputStreamChannel.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., 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.java.nio; - -import java.io.IOException; -import java.io.InputStream; -import java.nio.ByteBuffer; -import java.nio.channels.ClosedChannelException; -import java.nio.channels.ReadableByteChannel; - -/** - * @author Michael Koch - */ -public final class InputStreamChannel implements ReadableByteChannel -{ - private boolean closed = false; - private InputStream in; - - public InputStreamChannel (InputStream in) - { - super(); - this.in = in; - } - - public void close() throws IOException - { - if (!closed) - { - in.close(); - closed = true; - } - } - - public boolean isOpen() - { - return !closed; - } - - public int read (ByteBuffer dst) throws IOException - { - if (!isOpen()) - throw new ClosedChannelException(); - - byte[] buffer = new byte [dst.remaining()]; - int readBytes = in.read (buffer); - - if (readBytes > 0) - dst.put (buffer, 0, readBytes); - - return readBytes; - } -} diff --git a/libjava/gnu/java/nio/NIOConstants.java b/libjava/gnu/java/nio/NIOConstants.java deleted file mode 100644 index bb5b3b7f940..00000000000 --- a/libjava/gnu/java/nio/NIOConstants.java +++ /dev/null @@ -1,47 +0,0 @@ -/* NIOConstants.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., 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.java.nio; - -/** - * @author Michael Koch - */ -public final class NIOConstants -{ - public static final int DEFAULT_TIMEOUT = 50; -} diff --git a/libjava/gnu/java/nio/NIODatagramSocket.java b/libjava/gnu/java/nio/NIODatagramSocket.java deleted file mode 100644 index f23236eca88..00000000000 --- a/libjava/gnu/java/nio/NIODatagramSocket.java +++ /dev/null @@ -1,71 +0,0 @@ -/* NIODatagramSocket.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., 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.java.nio; - -import gnu.java.net.PlainDatagramSocketImpl; - -import java.net.DatagramSocket; -import java.nio.channels.DatagramChannel; - -/** - * @author Michael Koch - */ -public final class NIODatagramSocket extends DatagramSocket -{ - private PlainDatagramSocketImpl impl; - private DatagramChannelImpl channel; - - public NIODatagramSocket (PlainDatagramSocketImpl impl, - DatagramChannelImpl channel) - { - super (impl); - this.impl = impl; - this.channel = channel; - } - - public final PlainDatagramSocketImpl getPlainDatagramSocketImpl() - { - return impl; - } - - public final DatagramChannel getChannel() - { - return channel; - } -} diff --git a/libjava/gnu/java/nio/NIOSocket.java b/libjava/gnu/java/nio/NIOSocket.java deleted file mode 100644 index 4d812bf44ba..00000000000 --- a/libjava/gnu/java/nio/NIOSocket.java +++ /dev/null @@ -1,77 +0,0 @@ -/* NIOSocket.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., 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.java.nio; - -import gnu.java.net.PlainSocketImpl; -import java.io.IOException; -import java.net.Socket; -import java.nio.channels.SocketChannel; - -/** - * @author Michael Koch - */ -public final class NIOSocket extends Socket -{ - private PlainSocketImpl impl; - private SocketChannelImpl channel; - - protected NIOSocket (PlainSocketImpl impl, SocketChannelImpl channel) - throws IOException - { - super (impl); - this.impl = impl; - this.channel = channel; - } - - public final PlainSocketImpl getPlainSocketImpl() - { - return impl; - } - - final void setChannel (SocketChannelImpl channel) - { - this.impl = channel.getPlainSocketImpl(); - this.channel = channel; - } - - public final SocketChannel getChannel() - { - return channel; - } -} diff --git a/libjava/gnu/java/nio/OutputStreamChannel.java b/libjava/gnu/java/nio/OutputStreamChannel.java deleted file mode 100644 index 8167426b07d..00000000000 --- a/libjava/gnu/java/nio/OutputStreamChannel.java +++ /dev/null @@ -1,87 +0,0 @@ -/* OutputStreamChannel.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., 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.java.nio; - -import java.io.IOException; -import java.io.OutputStream; -import java.nio.ByteBuffer; -import java.nio.channels.ClosedChannelException; -import java.nio.channels.WritableByteChannel; - -/** - * @author Michael Koch - */ -public final class OutputStreamChannel implements WritableByteChannel -{ - private boolean closed = false; - private OutputStream out; - - public OutputStreamChannel (OutputStream out) - { - super(); - - this.out = out; - } - - public void close() throws IOException - { - if (!closed) - { - out.close(); - closed = true; - } - } - - public boolean isOpen() - { - return !closed; - } - - public int write (ByteBuffer src) throws IOException - { - if (!isOpen()) - throw new ClosedChannelException(); - - int len = src.remaining(); - byte[] buffer = new byte [len]; - src.get (buffer); - out.write (buffer); - return len; - } -} diff --git a/libjava/gnu/java/nio/PipeImpl.java b/libjava/gnu/java/nio/PipeImpl.java deleted file mode 100644 index f7b01c8b740..00000000000 --- a/libjava/gnu/java/nio/PipeImpl.java +++ /dev/null @@ -1,184 +0,0 @@ -/* PipeImpl.java -- - Copyright (C) 2002, 2003, 2004, 2005 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.java.nio; - -import java.io.IOException; -import java.nio.ByteBuffer; -import java.nio.channels.Pipe; -import java.nio.channels.spi.SelectorProvider; - -class PipeImpl extends Pipe -{ - public static final class SourceChannelImpl extends Pipe.SourceChannel - { - private int native_fd; - - public SourceChannelImpl (SelectorProvider selectorProvider, - int native_fd) - { - super (selectorProvider); - this.native_fd = native_fd; - } - - protected final void implCloseSelectableChannel() - throws IOException - { - throw new Error ("Not implemented"); - } - - protected void implConfigureBlocking (boolean blocking) - throws IOException - { - throw new Error ("Not implemented"); - } - - public final int read (ByteBuffer src) - throws IOException - { - throw new Error ("Not implemented"); - } - - public final long read (ByteBuffer[] srcs) - throws IOException - { - return read (srcs, 0, srcs.length); - } - - public final synchronized long read (ByteBuffer[] srcs, int offset, - int len) - throws IOException - { - if (offset < 0 - || offset > srcs.length - || len < 0 - || len > srcs.length - offset) - throw new IndexOutOfBoundsException(); - - long bytesRead = 0; - - for (int index = 0; index < len; index++) - bytesRead += read (srcs [offset + index]); - - return bytesRead; - - } - - public final int getNativeFD() - { - return native_fd; - } - } - - public static final class SinkChannelImpl extends Pipe.SinkChannel - { - private int native_fd; - - public SinkChannelImpl (SelectorProvider selectorProvider, - int native_fd) - { - super (selectorProvider); - this.native_fd = native_fd; - } - - protected final void implCloseSelectableChannel() - throws IOException - { - throw new Error ("Not implemented"); - } - - protected final void implConfigureBlocking (boolean blocking) - throws IOException - { - throw new Error ("Not implemented"); - } - - public final int write (ByteBuffer dst) - throws IOException - { - throw new Error ("Not implemented"); - } - - public final long write (ByteBuffer[] srcs) - throws IOException - { - return write (srcs, 0, srcs.length); - } - - public final synchronized long write (ByteBuffer[] srcs, int offset, int len) - throws IOException - { - if (offset < 0 - || offset > srcs.length - || len < 0 - || len > srcs.length - offset) - throw new IndexOutOfBoundsException(); - - long bytesWritten = 0; - - for (int index = 0; index < len; index++) - bytesWritten += write (srcs [offset + index]); - - return bytesWritten; - } - - public final int getNativeFD() - { - return native_fd; - } - } - - private SinkChannelImpl sink; - private SourceChannelImpl source; - - public PipeImpl (SelectorProvider provider) - throws IOException - { - super(); - VMPipe.init (this, provider); - } - - public Pipe.SinkChannel sink() - { - return sink; - } - - public Pipe.SourceChannel source() - { - return source; - } -} diff --git a/libjava/gnu/java/nio/SelectionKeyImpl.java b/libjava/gnu/java/nio/SelectionKeyImpl.java deleted file mode 100644 index a1f125e9f8b..00000000000 --- a/libjava/gnu/java/nio/SelectionKeyImpl.java +++ /dev/null @@ -1,104 +0,0 @@ -/* SelectionKeyImpl.java -- - Copyright (C) 2002, 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., 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.java.nio; - -import java.nio.channels.CancelledKeyException; -import java.nio.channels.SelectableChannel; -import java.nio.channels.SelectionKey; -import java.nio.channels.Selector; -import java.nio.channels.spi.AbstractSelectionKey; - -public abstract class SelectionKeyImpl extends AbstractSelectionKey -{ - private int readyOps; - private int interestOps; - private SelectorImpl impl; - SelectableChannel ch; - - public SelectionKeyImpl (SelectableChannel ch, SelectorImpl impl) - { - this.ch = ch; - this.impl = impl; - } - - public SelectableChannel channel () - { - return ch; - } - - public int readyOps () - { - if (!isValid()) - throw new CancelledKeyException(); - - return readyOps; - } - - public SelectionKey readyOps (int ops) - { - if (!isValid()) - throw new CancelledKeyException(); - - readyOps = ops; - return this; - } - - public int interestOps () - { - if (!isValid()) - throw new CancelledKeyException(); - - return interestOps; - } - - public SelectionKey interestOps (int ops) - { - if (!isValid()) - throw new CancelledKeyException(); - - interestOps = ops; - return this; - } - - public Selector selector () - { - return impl; - } - - public abstract int getNativeFD(); -} diff --git a/libjava/gnu/java/nio/SelectorImpl.java b/libjava/gnu/java/nio/SelectorImpl.java deleted file mode 100644 index dcafedeb8bb..00000000000 --- a/libjava/gnu/java/nio/SelectorImpl.java +++ /dev/null @@ -1,394 +0,0 @@ -/* SelectorImpl.java -- - Copyright (C) 2002, 2003, 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.java.nio; - -import java.io.IOException; -import java.nio.channels.ClosedSelectorException; -import java.nio.channels.SelectableChannel; -import java.nio.channels.SelectionKey; -import java.nio.channels.Selector; -import java.nio.channels.spi.AbstractSelectableChannel; -import java.nio.channels.spi.AbstractSelector; -import java.nio.channels.spi.SelectorProvider; -import java.util.Collections; -import java.util.HashSet; -import java.util.Iterator; -import java.util.Set; - -public class SelectorImpl extends AbstractSelector -{ - private Set keys; - private Set selected; - - /** - * A dummy object whose monitor regulates access to both our - * selectThread and unhandledWakeup fields. - */ - private Object selectThreadMutex = new Object (); - - /** - * Any thread that's currently blocked in a select operation. - */ - private Thread selectThread; - - /** - * Indicates whether we have an unhandled wakeup call. This can - * be due to either wakeup() triggering a thread interruption while - * a thread was blocked in a select operation (in which case we need - * to reset this thread's interrupt status after interrupting the - * select), or else that no thread was on a select operation at the - * time that wakeup() was called, in which case the following select() - * operation should return immediately with nothing selected. - */ - private boolean unhandledWakeup; - - public SelectorImpl (SelectorProvider provider) - { - super (provider); - - keys = new HashSet (); - selected = new HashSet (); - } - - protected void finalize() throws Throwable - { - close(); - } - - protected final void implCloseSelector() - throws IOException - { - // Cancel any pending select operation. - wakeup(); - - synchronized (keys) - { - synchronized (selected) - { - synchronized (cancelledKeys ()) - { - // FIXME: Release resources here. - } - } - } - } - - public final Set keys() - { - if (!isOpen()) - throw new ClosedSelectorException(); - - return Collections.unmodifiableSet (keys); - } - - public final int selectNow() - throws IOException - { - // FIXME: We're simulating an immediate select - // via a select with a timeout of one millisecond. - return select (1); - } - - public final int select() - throws IOException - { - return select (0); - } - - private final int[] getFDsAsArray (int ops) - { - int[] result; - int counter = 0; - Iterator it = keys.iterator (); - - // Count the number of file descriptors needed - while (it.hasNext ()) - { - SelectionKeyImpl key = (SelectionKeyImpl) it.next (); - - if ((key.interestOps () & ops) != 0) - { - counter++; - } - } - - result = new int[counter]; - - counter = 0; - it = keys.iterator (); - - // Fill the array with the file descriptors - while (it.hasNext ()) - { - SelectionKeyImpl key = (SelectionKeyImpl) it.next (); - - if ((key.interestOps () & ops) != 0) - { - result[counter] = key.getNativeFD(); - counter++; - } - } - - return result; - } - - public synchronized int select (long timeout) - throws IOException - { - if (!isOpen()) - throw new ClosedSelectorException(); - - synchronized (keys) - { - synchronized (selected) - { - deregisterCancelledKeys(); - - // Set only keys with the needed interest ops into the arrays. - int[] read = getFDsAsArray (SelectionKey.OP_READ - | SelectionKey.OP_ACCEPT); - int[] write = getFDsAsArray (SelectionKey.OP_WRITE - | SelectionKey.OP_CONNECT); - - // FIXME: We dont need to check this yet - int[] except = new int [0]; - - // Test to see if we've got an unhandled wakeup call, - // in which case we return immediately. Otherwise, - // remember our current thread and jump into the select. - // The monitor for dummy object selectThreadMutex regulates - // access to these fields. - - // FIXME: Not sure from the spec at what point we should - // return "immediately". Is it here or immediately upon - // entry to this function? - - // NOTE: There's a possibility of another thread calling - // wakeup() immediately after our thread releases - // selectThreadMutex's monitor here, in which case we'll - // do the select anyway. Since calls to wakeup() and select() - // among different threads happen in non-deterministic order, - // I don't think this is an issue. - synchronized (selectThreadMutex) - { - if (unhandledWakeup) - { - unhandledWakeup = false; - return 0; - } - else - { - selectThread = Thread.currentThread (); - } - } - - // Call the native select() on all file descriptors. - int result = 0; - try - { - begin(); - result = VMSelector.select (read, write, except, timeout); - } - finally - { - end(); - } - - // If our unhandled wakeup flag is set at this point, - // reset our thread's interrupt flag because we were - // awakened by wakeup() instead of an external thread - // interruption. - // - // NOTE: If we were blocked in a select() and one thread - // called Thread.interrupt() on the blocked thread followed - // by another thread calling Selector.wakeup(), then race - // conditions could make it so that the thread's interrupt - // flag is reset even though the Thread.interrupt() call - // "was there first". I don't think we need to care about - // this scenario. - synchronized (selectThreadMutex) - { - if (unhandledWakeup) - { - unhandledWakeup = false; - Thread.interrupted (); - } - selectThread = null; - } - - Iterator it = keys.iterator (); - - while (it.hasNext ()) - { - int ops = 0; - SelectionKeyImpl key = (SelectionKeyImpl) it.next (); - - // If key is already selected retrieve old ready ops. - if (selected.contains (key)) - { - ops = key.readyOps (); - } - - // Set new ready read/accept ops - for (int i = 0; i < read.length; i++) - { - if (key.getNativeFD() == read[i]) - { - if (key.channel () instanceof ServerSocketChannelImpl) - { - ops = ops | SelectionKey.OP_ACCEPT; - } - else - { - ops = ops | SelectionKey.OP_READ; - } - } - } - - // Set new ready write ops - for (int i = 0; i < write.length; i++) - { - if (key.getNativeFD() == write[i]) - { - ops = ops | SelectionKey.OP_WRITE; - - // if (key.channel ().isConnected ()) - // { - // ops = ops | SelectionKey.OP_WRITE; - // } - // else - // { - // ops = ops | SelectionKey.OP_CONNECT; - // } - } - } - - // FIXME: We dont handle exceptional file descriptors yet. - - // If key is not yet selected add it. - if (!selected.contains (key)) - { - selected.add (key); - } - - // Set new ready ops - key.readyOps (key.interestOps () & ops); - } - deregisterCancelledKeys(); - - return result; - } - } - } - - public final Set selectedKeys() - { - if (!isOpen()) - throw new ClosedSelectorException(); - - return selected; - } - - public final Selector wakeup() - { - // IMPLEMENTATION NOTE: Whereas the specification says that - // thread interruption should trigger a call to wakeup, we - // do the reverse under the covers: wakeup triggers a thread - // interrupt followed by a subsequent reset of the thread's - // interrupt status within select(). - - // First, acquire the monitor of the object regulating - // access to our selectThread and unhandledWakeup fields. - synchronized (selectThreadMutex) - { - unhandledWakeup = true; - - // Interrupt any thread which is currently blocked in - // a select operation. - if (selectThread != null) - selectThread.interrupt (); - } - - return this; - } - - private final void deregisterCancelledKeys() - { - Set ckeys = cancelledKeys (); - synchronized (ckeys) - { - Iterator it = ckeys.iterator(); - - while (it.hasNext ()) - { - keys.remove ((SelectionKeyImpl) it.next ()); - it.remove (); - } - } - } - - protected SelectionKey register (SelectableChannel ch, int ops, Object att) - { - return register ((AbstractSelectableChannel) ch, ops, att); - } - - protected final SelectionKey register (AbstractSelectableChannel ch, int ops, - Object att) - { - SelectionKeyImpl result; - - if (ch instanceof SocketChannelImpl) - result = new SocketChannelSelectionKey (ch, this); - else if (ch instanceof DatagramChannelImpl) - result = new DatagramChannelSelectionKey (ch, this); - else if (ch instanceof ServerSocketChannelImpl) - result = new ServerSocketChannelSelectionKey (ch, this); - else - throw new InternalError ("No known channel type"); - - synchronized (keys) - { - keys.add (result); - } - - result.interestOps (ops); - result.attach (att); - return result; - } -} diff --git a/libjava/gnu/java/nio/SelectorProviderImpl.java b/libjava/gnu/java/nio/SelectorProviderImpl.java deleted file mode 100644 index 47521107e90..00000000000 --- a/libjava/gnu/java/nio/SelectorProviderImpl.java +++ /dev/null @@ -1,83 +0,0 @@ -/* SelectorProviderImpl.java -- - Copyright (C) 2002, 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., 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.java.nio; - -import java.io.IOException; -import java.nio.channels.DatagramChannel; -import java.nio.channels.Pipe; -import java.nio.channels.ServerSocketChannel; -import java.nio.channels.SocketChannel; -import java.nio.channels.spi.AbstractSelector; -import java.nio.channels.spi.SelectorProvider; - -public class SelectorProviderImpl extends SelectorProvider -{ - public SelectorProviderImpl () - { - } - - public DatagramChannel openDatagramChannel () - throws IOException - { - return new DatagramChannelImpl (this); - } - - public Pipe openPipe () - throws IOException - { - return new PipeImpl (this); - } - - public AbstractSelector openSelector () - throws IOException - { - return new SelectorImpl (this); - } - - public ServerSocketChannel openServerSocketChannel () - throws IOException - { - return new ServerSocketChannelImpl (this); - } - - public SocketChannel openSocketChannel () - throws IOException - { - return new SocketChannelImpl (this); - } -} diff --git a/libjava/gnu/java/nio/charset/ISO_8859_1.java b/libjava/gnu/java/nio/charset/ISO_8859_1.java deleted file mode 100644 index cc06ecd5ad0..00000000000 --- a/libjava/gnu/java/nio/charset/ISO_8859_1.java +++ /dev/null @@ -1,155 +0,0 @@ -/* ISO_8859_1.java -- - Copyright (C) 2002, 2004, 2005 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.java.nio.charset; - -import java.nio.ByteBuffer; -import java.nio.CharBuffer; -import java.nio.charset.Charset; -import java.nio.charset.CharsetDecoder; -import java.nio.charset.CharsetEncoder; -import java.nio.charset.CoderResult; - -/** - * ISO-8859-1 charset. - * - * @author Jesse Rosenstock - */ -final class ISO_8859_1 extends Charset -{ - ISO_8859_1 () - { - /* Canonical charset name chosen according to: - * http://java.sun.com/j2se/1.5.0/docs/guide/intl/encoding.doc.html - */ - super ("ISO-8859-1", new String[] { - /* These names are provided by - * http://www.iana.org/assignments/character-sets - */ - "iso-ir-100", - "ISO_8859-1", - "latin1", - "l1", - "IBM819", - "CP819", - "csISOLatin1", - "8859_1", - /* These names are provided by - * http://oss.software.ibm.com/cgi-bin/icu/convexp?s=ALL - */ - "ISO8859_1", "ISO_8859_1", "ibm-819", "ISO_8859-1:1987", - "819" - }); - - } - - public boolean contains (Charset cs) - { - return cs instanceof US_ASCII || cs instanceof ISO_8859_1; - } - - public CharsetDecoder newDecoder () - { - return new Decoder (this); - } - - public CharsetEncoder newEncoder () - { - return new Encoder (this); - } - - private static final class Decoder extends CharsetDecoder - { - // Package-private to avoid a trampoline constructor. - Decoder (Charset cs) - { - super (cs, 1.0f, 1.0f); - } - - protected CoderResult decodeLoop (ByteBuffer in, CharBuffer out) - { - // TODO: Optimize this in the case in.hasArray() / out.hasArray() - while (in.hasRemaining ()) - { - byte b = in.get (); - - if (!out.hasRemaining ()) - { - in.position (in.position () - 1); - return CoderResult.OVERFLOW; - } - - out.put ((char) (b & 0xFF)); - } - - return CoderResult.UNDERFLOW; - } - } - - private static final class Encoder extends CharsetEncoder - { - // Package-private to avoid a trampoline constructor. - Encoder (Charset cs) - { - super (cs, 1.0f, 1.0f); - } - - protected CoderResult encodeLoop (CharBuffer in, ByteBuffer out) - { - // TODO: Optimize this in the case in.hasArray() / out.hasArray() - while (in.hasRemaining ()) - { - char c = in.get (); - - if (c > 0xFF) - { - in.position (in.position () - 1); - return CoderResult.unmappableForLength (1); - } - if (!out.hasRemaining ()) - { - in.position (in.position () - 1); - return CoderResult.OVERFLOW; - } - - out.put ((byte) c); - } - - return CoderResult.UNDERFLOW; - } - } -} diff --git a/libjava/gnu/java/nio/charset/US_ASCII.java b/libjava/gnu/java/nio/charset/US_ASCII.java deleted file mode 100644 index d26f7ffc9ab..00000000000 --- a/libjava/gnu/java/nio/charset/US_ASCII.java +++ /dev/null @@ -1,161 +0,0 @@ -/* US_ASCII.java -- - Copyright (C) 2002, 2004, 2005 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.java.nio.charset; - -import java.nio.ByteBuffer; -import java.nio.CharBuffer; -import java.nio.charset.Charset; -import java.nio.charset.CharsetDecoder; -import java.nio.charset.CharsetEncoder; -import java.nio.charset.CoderResult; - -/** - * US-ASCII charset. - * - * @author Jesse Rosenstock - */ -final class US_ASCII extends Charset -{ - US_ASCII () - { - /* Canonical charset name chosen according to: - * http://java.sun.com/j2se/1.5.0/docs/guide/intl/encoding.doc.html - */ - super ("US-ASCII", new String[] { - /* These names are provided by - * http://www.iana.org/assignments/character-sets - */ - "iso-ir-6", - "ANSI_X3.4-1986", - "ISO_646.irv:1991", - "ASCII", - "ISO646-US", - "ASCII", - "us", - "IBM367", - "cp367", - "csASCII", - /* These names are provided by - * http://oss.software.ibm.com/cgi-bin/icu/convexp?s=ALL - */ - "ANSI_X3.4-1968", "iso_646.irv:1983", "ascii7", "646", - "windows-20127" - }); - } - - public boolean contains (Charset cs) - { - return cs instanceof US_ASCII; - } - - public CharsetDecoder newDecoder () - { - return new Decoder (this); - } - - public CharsetEncoder newEncoder () - { - return new Encoder (this); - } - - private static final class Decoder extends CharsetDecoder - { - // Package-private to avoid a trampoline constructor. - Decoder (Charset cs) - { - super (cs, 1.0f, 1.0f); - } - - protected CoderResult decodeLoop (ByteBuffer in, CharBuffer out) - { - // TODO: Optimize this in the case in.hasArray() / out.hasArray() - while (in.hasRemaining ()) - { - byte b = in.get (); - - if (b < 0) - { - in.position (in.position () - 1); - return CoderResult.malformedForLength (1); - } - if (!out.hasRemaining ()) - { - in.position (in.position () - 1); - return CoderResult.OVERFLOW; - } - - out.put ((char) b); - } - - return CoderResult.UNDERFLOW; - } - } - - private static final class Encoder extends CharsetEncoder - { - // Package-private to avoid a trampoline constructor. - Encoder (Charset cs) - { - super (cs, 1.0f, 1.0f); - } - - protected CoderResult encodeLoop (CharBuffer in, ByteBuffer out) - { - // TODO: Optimize this in the case in.hasArray() / out.hasArray() - while (in.hasRemaining ()) - { - char c = in.get (); - - if (c > Byte.MAX_VALUE) - { - in.position (in.position () - 1); - return CoderResult.unmappableForLength (1); - } - if (!out.hasRemaining ()) - { - in.position (in.position () - 1); - return CoderResult.OVERFLOW; - } - - out.put ((byte) c); - } - - return CoderResult.UNDERFLOW; - } - } -} diff --git a/libjava/gnu/java/nio/charset/UTF_16.java b/libjava/gnu/java/nio/charset/UTF_16.java deleted file mode 100644 index f111266ab59..00000000000 --- a/libjava/gnu/java/nio/charset/UTF_16.java +++ /dev/null @@ -1,80 +0,0 @@ -/* UTF_16.java -- - Copyright (C) 2002, 2004, 2005 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.java.nio.charset; - -import java.nio.charset.Charset; -import java.nio.charset.CharsetDecoder; -import java.nio.charset.CharsetEncoder; - -/** - * UTF-16 charset. - * - * @author Jesse Rosenstock - */ -final class UTF_16 extends Charset -{ - UTF_16 () - { - super ("UTF-16", new String[] { - // witnessed by the internet - "UTF16", - /* These names are provided by - * http://oss.software.ibm.com/cgi-bin/icu/convexp?s=ALL - */ - "ISO-10646-UCS-2", "unicode", "csUnicode", "ucs-2" - }); - } - - public boolean contains (Charset cs) - { - return cs instanceof US_ASCII || cs instanceof ISO_8859_1 - || cs instanceof UTF_8 || cs instanceof UTF_16BE - || cs instanceof UTF_16LE || cs instanceof UTF_16; - } - - public CharsetDecoder newDecoder () - { - return new UTF_16Decoder (this, UTF_16Decoder.UNKNOWN_ENDIAN); - } - - public CharsetEncoder newEncoder () - { - return new UTF_16Encoder (this, UTF_16Encoder.BIG_ENDIAN, false); - } -} diff --git a/libjava/gnu/java/nio/charset/UTF_16BE.java b/libjava/gnu/java/nio/charset/UTF_16BE.java deleted file mode 100644 index 15e308fab56..00000000000 --- a/libjava/gnu/java/nio/charset/UTF_16BE.java +++ /dev/null @@ -1,84 +0,0 @@ -/* UTF_16BE.java -- - Copyright (C) 2002, 2004, 2005 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.java.nio.charset; - -import java.nio.charset.Charset; -import java.nio.charset.CharsetDecoder; -import java.nio.charset.CharsetEncoder; - -/** - * UTF-16BE charset. - * - * @author Jesse Rosenstock - */ -final class UTF_16BE extends Charset -{ - UTF_16BE () - { - super ("UTF-16BE", new String[] { - // witnessed by the internet - "UTF16BE", - /* These names are provided by - * http://oss.software.ibm.com/cgi-bin/icu/convexp?s=ALL - */ - "x-utf-16be", "ibm-1200", "ibm-1201", "ibm-5297", - "ibm-13488", "ibm-17584", "windows-1201", "cp1200", "cp1201", - "UTF16_BigEndian", - // see http://java.sun.com/j2se/1.5.0/docs/guide/intl/encoding.doc.html - "UnicodeBigUnmarked" - }); - } - - public boolean contains (Charset cs) - { - return cs instanceof US_ASCII || cs instanceof ISO_8859_1 - || cs instanceof UTF_8 || cs instanceof UTF_16BE - || cs instanceof UTF_16LE || cs instanceof UTF_16; - } - - public CharsetDecoder newDecoder () - { - return new UTF_16Decoder (this, UTF_16Decoder.BIG_ENDIAN); - } - - public CharsetEncoder newEncoder () - { - return new UTF_16Encoder (this, UTF_16Encoder.BIG_ENDIAN, true); - } -} diff --git a/libjava/gnu/java/nio/charset/UTF_16Decoder.java b/libjava/gnu/java/nio/charset/UTF_16Decoder.java deleted file mode 100644 index ddcea88dd36..00000000000 --- a/libjava/gnu/java/nio/charset/UTF_16Decoder.java +++ /dev/null @@ -1,151 +0,0 @@ -/* UTF_16Decoder.java -- - Copyright (C) 2002 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.java.nio.charset; - -import java.nio.ByteBuffer; -import java.nio.CharBuffer; -import java.nio.charset.Charset; -import java.nio.charset.CharsetDecoder; -import java.nio.charset.CoderResult; - -/** - * Decoder for UTF-16, UTF-15LE, and UTF-16BE. - * - * @author Jesse Rosenstock - */ -final class UTF_16Decoder extends CharsetDecoder -{ - // byte orders - static final int BIG_ENDIAN = 0; - static final int LITTLE_ENDIAN = 1; - static final int UNKNOWN_ENDIAN = 2; - - private static final char BYTE_ORDER_MARK = '\uFEFF'; - private static final char REVERSED_BYTE_ORDER_MARK = '\uFFFE'; - - private final int originalByteOrder; - private int byteOrder; - - UTF_16Decoder (Charset cs, int byteOrder) - { - super (cs, 0.5f, 1.0f); - this.originalByteOrder = byteOrder; - this.byteOrder = byteOrder; - } - - protected CoderResult decodeLoop (ByteBuffer in, CharBuffer out) - { - // TODO: Optimize this in the case in.hasArray() / out.hasArray() - - int inPos = in.position (); - try - { - while (in.remaining () >= 2) - { - byte b1 = in.get (); - byte b2 = in.get (); - - // handle byte order mark - if (byteOrder == UNKNOWN_ENDIAN) - { - char c = (char) ((b1 << 8) | b2); - if (c == BYTE_ORDER_MARK) - { - byteOrder = BIG_ENDIAN; - inPos += 2; - continue; - } - else if (c == REVERSED_BYTE_ORDER_MARK) - { - byteOrder = LITTLE_ENDIAN; - inPos += 2; - continue; - } - else - { - // assume big endian, do not consume bytes, - // continue with normal processing - byteOrder = BIG_ENDIAN; - } - } - - char c = byteOrder == BIG_ENDIAN ? (char) ((b1 << 8) | b2) - : (char) ((b2 << 8) | b1); - - if (0xD800 <= c && c <= 0xDFFF) - { - // c is a surrogate - - // make sure c is a high surrogate - if (c > 0xDBFF) - return CoderResult.malformedForLength (2); - if (in.remaining () < 2) - return CoderResult.UNDERFLOW; - byte b3 = in.get (); - byte b4 = in.get (); - char d = byteOrder == BIG_ENDIAN ? (char) ((b3 << 8) | b4) - : (char) ((b4 << 8) | b3); - // make sure d is a low surrogate - if (d < 0xDC00 || d > 0xDFFF) - return CoderResult.malformedForLength (2); - out.put (c); - out.put (d); - inPos += 4; - } - else - { - if (!out.hasRemaining ()) - return CoderResult.UNDERFLOW; - out.put (c); - inPos += 2; - } - } - - return CoderResult.UNDERFLOW; - } - finally - { - in.position (inPos); - } - } - - protected void implReset () - { - byteOrder = originalByteOrder; - } -} diff --git a/libjava/gnu/java/nio/charset/UTF_16Encoder.java b/libjava/gnu/java/nio/charset/UTF_16Encoder.java deleted file mode 100644 index ae613355171..00000000000 --- a/libjava/gnu/java/nio/charset/UTF_16Encoder.java +++ /dev/null @@ -1,153 +0,0 @@ -/* UTF_16Encoder.java -- - Copyright (C) 2002 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.java.nio.charset; - -import java.nio.ByteBuffer; -import java.nio.CharBuffer; -import java.nio.charset.Charset; -import java.nio.charset.CharsetEncoder; -import java.nio.charset.CoderResult; - -/** - * Encoder for UTF-16, UTF-15LE, and UTF-16BE. - * - * @author Jesse Rosenstock - */ -final class UTF_16Encoder extends CharsetEncoder -{ - // byte orders - static final int BIG_ENDIAN = 0; - static final int LITTLE_ENDIAN = 1; - - private static final char BYTE_ORDER_MARK = '\uFEFF'; - - private final int byteOrder; - private final boolean useByteOrderMark; - private boolean needsByteOrderMark; - - UTF_16Encoder (Charset cs, int byteOrder, boolean useByteOrderMark) - { - super (cs, 2.0f, - useByteOrderMark ? 2.0f : 4.0f, - byteOrder == BIG_ENDIAN - ? new byte[] { (byte) 0xFF, (byte) 0xFD } - : new byte[] { (byte) 0xFD, (byte) 0xFF }); - this.byteOrder = byteOrder; - this.useByteOrderMark = useByteOrderMark; - this.needsByteOrderMark = useByteOrderMark; - } - - protected CoderResult encodeLoop (CharBuffer in, ByteBuffer out) - { - // TODO: Optimize this in the case in.hasArray() / out.hasArray() - - if (needsByteOrderMark) - { - if (out.remaining () < 2) - return CoderResult.OVERFLOW; - put (out, BYTE_ORDER_MARK); - needsByteOrderMark = false; - } - - int inPos = in.position (); - try - { - while (in.hasRemaining ()) - { - char c = in.get (); - - if (0xD800 <= c && c <= 0xDFFF) - { - // c is a surrogate - - // make sure c is a high surrogate - if (c > 0xDBFF) - return CoderResult.malformedForLength (1); - if (in.remaining () < 1) - return CoderResult.UNDERFLOW; - char d = in.get (); - // make sure d is a low surrogate - if (d < 0xDC00 || d > 0xDFFF) - return CoderResult.malformedForLength (1); - put (out, c); - put (out, d); - inPos += 2; - } - else - { - if (out.remaining () < 2) - return CoderResult.OVERFLOW; - put (out, c); - inPos++; - } - } - - return CoderResult.UNDERFLOW; - } - finally - { - in.position (inPos); - } - } - - /** - * Writes c to out in the byte order - * specified by byteOrder. - **/ - private void put (ByteBuffer out, char c) - { - if (byteOrder == BIG_ENDIAN) - { - out.put ((byte) (c >> 8)); - out.put ((byte) (c & 0xFF)); - } - else - { - out.put ((byte) (c & 0xFF)); - out.put ((byte) (c >> 8)); - } - } - - protected void implReset () - { - needsByteOrderMark = useByteOrderMark; - } - - // TODO: override canEncode(char) and canEncode(CharSequence) - // for performance -} diff --git a/libjava/gnu/java/nio/charset/UTF_16LE.java b/libjava/gnu/java/nio/charset/UTF_16LE.java deleted file mode 100644 index 952f4aa1700..00000000000 --- a/libjava/gnu/java/nio/charset/UTF_16LE.java +++ /dev/null @@ -1,83 +0,0 @@ -/* UTF_16LE.java -- - Copyright (C) 2002, 2004, 2005 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.java.nio.charset; - -import java.nio.charset.Charset; -import java.nio.charset.CharsetDecoder; -import java.nio.charset.CharsetEncoder; - -/** - * UTF-16LE charset. - * - * @author Jesse Rosenstock - */ -final class UTF_16LE extends Charset -{ - UTF_16LE () - { - super ("UTF-16LE", new String[] { - // witnessed by the internet - "UTF16LE", - /* These names are provided by - * http://oss.software.ibm.com/cgi-bin/icu/convexp?s=ALL - */ - "x-utf-16le", "ibm-1202", "ibm-13490", "ibm-17586", - "UTF16_LittleEndian", - // see http://java.sun.com/j2se/1.5.0/docs/guide/intl/encoding.doc.html - "UnicodeLittleUnmarked" - }); - } - - public boolean contains (Charset cs) - { - return cs instanceof US_ASCII || cs instanceof ISO_8859_1 - || cs instanceof UTF_8 || cs instanceof UTF_16BE - || cs instanceof UTF_16LE || cs instanceof UTF_16; - } - - public CharsetDecoder newDecoder () - { - return new UTF_16Decoder (this, UTF_16Decoder.LITTLE_ENDIAN); - } - - public CharsetEncoder newEncoder () - { - return new UTF_16Encoder (this, UTF_16Encoder.LITTLE_ENDIAN, true); - } -} diff --git a/libjava/gnu/java/nio/charset/UTF_8.java b/libjava/gnu/java/nio/charset/UTF_8.java deleted file mode 100644 index 12f15e1b0c2..00000000000 --- a/libjava/gnu/java/nio/charset/UTF_8.java +++ /dev/null @@ -1,289 +0,0 @@ -/* UTF_8.java -- - Copyright (C) 2002, 2004, 2005 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.java.nio.charset; - -import java.nio.ByteBuffer; -import java.nio.CharBuffer; -import java.nio.charset.Charset; -import java.nio.charset.CharsetDecoder; -import java.nio.charset.CharsetEncoder; -import java.nio.charset.CoderResult; - -/** - * UTF-8 charset. - * - *

UTF-8 references: - *

- * - * @author Jesse Rosenstock - */ -final class UTF_8 extends Charset -{ - UTF_8 () - { - super ("UTF-8", new String[] { - /* These names are provided by - * http://oss.software.ibm.com/cgi-bin/icu/convexp?s=ALL - */ - "ibm-1208", "ibm-1209", "ibm-5304", "ibm-5305", - "windows-65001", "cp1208", - // see http://java.sun.com/j2se/1.5.0/docs/guide/intl/encoding.doc.html - "UTF8" - }); - } - - public boolean contains (Charset cs) - { - return cs instanceof US_ASCII || cs instanceof ISO_8859_1 - || cs instanceof UTF_8 || cs instanceof UTF_16BE - || cs instanceof UTF_16LE || cs instanceof UTF_16; - } - - public CharsetDecoder newDecoder () - { - return new Decoder (this); - } - - public CharsetEncoder newEncoder () - { - return new Encoder (this); - } - - private static final class Decoder extends CharsetDecoder - { - // Package-private to avoid a trampoline constructor. - Decoder (Charset cs) - { - super (cs, 1.0f, 1.0f); - } - - protected CoderResult decodeLoop (ByteBuffer in, CharBuffer out) - { - // TODO: Optimize this in the case in.hasArray() / out.hasArray() - int inPos = in.position(); - try - { - while (in.hasRemaining ()) - { - char c; - byte b1 = in.get (); - int highNibble = (b1 >> 4) & 0xF; - - switch (highNibble) - { - case 0: case 1: case 2: case 3: - case 4: case 5: case 6: case 7: - if (out.remaining () < 1) - return CoderResult.OVERFLOW; - out.put ((char) b1); - inPos++; - break; - - case 0xC: case 0xD: - byte b2; - if (in.remaining () < 1) - return CoderResult.UNDERFLOW; - if (out.remaining () < 1) - return CoderResult.OVERFLOW; - if (!isContinuation (b2 = in.get ())) - return CoderResult.malformedForLength (1); - c = (char) (((b1 & 0x1F) << 6) | (b2 & 0x3F)); - // check that we had the shortest encoding - if (c <= 0x7F) - return CoderResult.malformedForLength (2); - out.put (c); - inPos += 2; - break; - - case 0xE: - byte b3; - if (in.remaining () < 2) - return CoderResult.UNDERFLOW; - if (out.remaining () < 1) - return CoderResult.OVERFLOW; - if (!isContinuation (b2 = in.get ())) - return CoderResult.malformedForLength (1); - if (!isContinuation (b3 = in.get ())) - return CoderResult.malformedForLength (1); - c = (char) (((b1 & 0x0F) << 12) - | ((b2 & 0x3F) << 6) - | (b3 & 0x3F)); - // check that we had the shortest encoding - if (c <= 0x7FF) - return CoderResult.malformedForLength (3); - out.put (c); - inPos += 3; - break; - - default: - return CoderResult.malformedForLength (1); - } - } - - return CoderResult.UNDERFLOW; - } - finally - { - // In case we did a get(), then encountered an error, reset the - // position to before the error. If there was no error, this - // will benignly reset the position to the value it already has. - in.position (inPos); - } - } - - private static boolean isContinuation (byte b) - { - return (b & 0xC0) == 0x80; - } - } - - private static final class Encoder extends CharsetEncoder - { - // Package-private to avoid a trampoline constructor. - Encoder (Charset cs) - { - // According to - // http://www-106.ibm.com/developerworks/unicode/library/utfencodingforms/index.html - // On average, English takes slightly over one unit per code point. - // Most Latin-script languages take about 1.1 bytes. Greek, Russian, - // Arabic and Hebrew take about 1.7 bytes, and most others (including - // Japanese, Chinese, Korean and Hindi) take about 3 bytes. - // We assume we will be dealing with latin scripts, and use 1.1 - // for averageBytesPerChar. - super (cs, 1.1f, 4.0f); - } - - protected CoderResult encodeLoop (CharBuffer in, ByteBuffer out) - { - int inPos = in.position(); - try - { - // TODO: Optimize this in the case in.hasArray() / out.hasArray() - while (in.hasRemaining ()) - { - int remaining = out.remaining (); - char c = in.get (); - - // UCS-4 range (hex.) UTF-8 octet sequence (binary) - // 0000 0000-0000 007F 0xxxxxxx - // 0000 0080-0000 07FF 110xxxxx 10xxxxxx - // 0000 0800-0000 FFFF 1110xxxx 10xxxxxx 10xxxxxx - - // Scalar Value UTF-16 byte 1 byte 2 byte 3 byte 4 - // 0000 0000 0xxx xxxx 0000 0000 0xxx xxxx 0xxx xxxx - // 0000 0yyy yyxx xxxx 0000 0yyy yyxx xxxx 110y yyyy 10xx xxxx - // zzzz yyyy yyxx xxxx zzzz yyyy yyxx xxxx 1110 zzzz 10yy yyyy 10xx xxxx - // u uuuu zzzz yyyy yyxx xxxx 1101 10ww wwzz zzyy 1111 0uuu 10uu zzzz 10yy yyyy 10xx xxxx - // + 1101 11yy yyxx xxxx - // Note: uuuuu = wwww + 1 - - if (c <= 0x7F) - { - if (remaining < 1) - return CoderResult.OVERFLOW; - out.put ((byte) c); - inPos++; - } - else if (c <= 0x7FF) - { - if (remaining < 2) - return CoderResult.OVERFLOW; - out.put ((byte) (0xC0 | (c >> 6))); - out.put ((byte) (0x80 | (c & 0x3F))); - inPos++; - } - else if (0xD800 <= c && c <= 0xDFFF) - { - if (remaining < 4) - return CoderResult.OVERFLOW; - - // we got a low surrogate without a preciding high one - if (c > 0xDBFF) - return CoderResult.malformedForLength (1); - - // high surrogates - if (!in.hasRemaining ()) - return CoderResult.UNDERFLOW; - - char d = in.get (); - - // make sure d is a low surrogate - if (d < 0xDC00 || d > 0xDFFF) - return CoderResult.malformedForLength (1); - - // make the 32 bit value - // int value2 = (c - 0xD800) * 0x400 + (d - 0xDC00) + 0x10000; - int value = (((c & 0x3FF) << 10) | (d & 0x3FF)) + 0x10000; - // assert value == value2; - out.put ((byte) (0xF0 | (value >> 18))); - out.put ((byte) (0x80 | ((value >> 12) & 0x3F))); - out.put ((byte) (0x80 | ((value >> 6) & 0x3F))); - out.put ((byte) (0x80 | ((value ) & 0x3F))); - - inPos += 2; - } - else - { - if (remaining < 3) - return CoderResult.OVERFLOW; - - out.put ((byte) (0xE0 | (c >> 12))); - out.put ((byte) (0x80 | ((c >> 6) & 0x3F))); - out.put ((byte) (0x80 | (c & 0x3F))); - inPos++; - } - } - - return CoderResult.UNDERFLOW; - } - finally - { - // In case we did a get(), then encountered an error, reset the - // position to before the error. If there was no error, this - // will benignly reset the position to the value it already has. - in.position (inPos); - } - } - } -} diff --git a/libjava/gnu/java/rmi/RMIMarshalledObjectInputStream.java b/libjava/gnu/java/rmi/RMIMarshalledObjectInputStream.java deleted file mode 100644 index 140069379bc..00000000000 --- a/libjava/gnu/java/rmi/RMIMarshalledObjectInputStream.java +++ /dev/null @@ -1,71 +0,0 @@ -/* gnu.java.rmi.RMIMarshalledObjectInputStream - Copyright (C) 2002 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.java.rmi; - -import gnu.java.rmi.server.RMIObjectInputStream; - -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.ObjectInputStream; - -/** - * This class is only for java.rmi.MarshalledObject to deserialize object from - * objBytes and locBytes - */ - -public class RMIMarshalledObjectInputStream extends RMIObjectInputStream -{ - private ObjectInputStream locStream; - - public RMIMarshalledObjectInputStream(byte[] objBytes, byte[] locBytes) throws IOException - { - super(new ByteArrayInputStream(objBytes)); - if(locBytes != null) - locStream = new ObjectInputStream(new ByteArrayInputStream(locBytes)); - } - - //This method overrides RMIObjectInputStream's - protected Object getAnnotation() throws IOException, ClassNotFoundException - { - if(locStream == null) - return null; - return locStream.readObject(); - } - -} // End of RMIMarshalledObjectInputStream diff --git a/libjava/gnu/java/rmi/RMIMarshalledObjectOutputStream.java b/libjava/gnu/java/rmi/RMIMarshalledObjectOutputStream.java deleted file mode 100644 index 2bbbaacb45f..00000000000 --- a/libjava/gnu/java/rmi/RMIMarshalledObjectOutputStream.java +++ /dev/null @@ -1,79 +0,0 @@ -/* gnu.java.rmi.RMIMarshalledObjectOutputStream - Copyright (C) 2002, 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.java.rmi; - -import gnu.java.rmi.server.RMIObjectOutputStream; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.ObjectOutputStream; -import java.io.OutputStream; - -/** - * This class is only for java.rmi.MarshalledObject to serialize object and - * got objBytes and locBytes - */ -public class RMIMarshalledObjectOutputStream extends RMIObjectOutputStream -{ - private ObjectOutputStream locStream; - private ByteArrayOutputStream locBytesStream; - - public RMIMarshalledObjectOutputStream(OutputStream objStream) throws IOException - { - super(objStream); - locBytesStream = new ByteArrayOutputStream(256); - locStream = new ObjectOutputStream(locBytesStream); - } - - //This method overrides RMIObjectOutputStream's. - protected void setAnnotation(String annotation) throws IOException{ - locStream.writeObject(annotation); - } - - public void flush() throws IOException { - super.flush(); - locStream.flush(); - } - - public byte[] getLocBytes(){ - return locBytesStream.toByteArray(); - } - -} // End of RMIMarshalledObjectOutputStream - diff --git a/libjava/gnu/java/rmi/dgc/DGCImpl.java b/libjava/gnu/java/rmi/dgc/DGCImpl.java deleted file mode 100644 index a32445c343b..00000000000 --- a/libjava/gnu/java/rmi/dgc/DGCImpl.java +++ /dev/null @@ -1,118 +0,0 @@ -/* DGCImpl.java -- - Copyright (c) 1996, 1997, 1998, 1999, 2002, 2005 - 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.java.rmi.dgc; - -import gnu.java.rmi.server.UnicastServerRef; - -import java.rmi.RemoteException; -import java.rmi.dgc.DGC; -import java.rmi.dgc.Lease; -import java.rmi.dgc.VMID; -import java.rmi.server.ObjID; -import java.rmi.server.RMISocketFactory; -import java.util.Hashtable; - -/** - * I let DGCImpl to extend UnicastServerRef, but not - * UnicastRemoteObject, because UnicastRemoteObject must - * exportObject automatically. - */ -public class DGCImpl - extends UnicastServerRef implements DGC { - - private static final long LEASE_VALUE = 600000L; - // leaseCache caches a LeaseRecord associated with a vmid - private Hashtable leaseCache = new Hashtable(); - -public DGCImpl() throws RemoteException { - super(new ObjID(ObjID.DGC_ID), 0, RMISocketFactory.getSocketFactory()); -} - -public Lease dirty(ObjID[] ids, long sequenceNum, Lease lease) throws RemoteException { - VMID vmid = lease.getVMID(); - if (vmid == null) - vmid = new VMID(); - long leaseValue = LEASE_VALUE; - //long leaseValue = lease.getValue(); - lease = new Lease(vmid, leaseValue); - synchronized(leaseCache){ - LeaseRecord lr = (LeaseRecord)leaseCache.get(vmid); - if (lr != null) - lr.reset(leaseValue); - else{ - lr = new LeaseRecord(vmid, leaseValue); - leaseCache.put(vmid, lr); - } - } - - return (lease); -} - -public void clean(ObjID[] ids, long sequenceNum, VMID vmid, boolean strong) throws RemoteException { - // Not implemented -} - - /** - * LeaseRecord associates a vmid to expireTime. - */ - private static class LeaseRecord{ - private VMID vmid; - private long expireTime; - - LeaseRecord(VMID vmid, long leaseValue){ - this.vmid = vmid; - reset(leaseValue); - } - - // reset expireTime - void reset(long leaseValue){ - long l = System.currentTimeMillis(); - expireTime = l + leaseValue; - } - - boolean isExpired(){ - long l = System.currentTimeMillis(); - if ( l > expireTime) - return true; - return false; - } - - } //End of LeaseRecord - -} //End of DGCImpl diff --git a/libjava/gnu/java/rmi/dgc/DGCImpl_Skel.java b/libjava/gnu/java/rmi/dgc/DGCImpl_Skel.java deleted file mode 100644 index 5f032e72f8a..00000000000 --- a/libjava/gnu/java/rmi/dgc/DGCImpl_Skel.java +++ /dev/null @@ -1,144 +0,0 @@ -/* DGCImpl_Skel.java - Copyright (C) 2002 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. */ - - -// Skel class generated by rmic - DO NOT EDIT! - -package gnu.java.rmi.dgc; - -public final class DGCImpl_Skel - implements java.rmi.server.Skeleton -{ - private static final long interfaceHash = -669196253586618813L; - - private static final java.rmi.server.Operation[] operations = { - new java.rmi.server.Operation("void clean(java.rmi.server.ObjID[], long, java.rmi.dgc.VMID, boolean"), - new java.rmi.server.Operation("java.rmi.dgc.Lease dirty(java.rmi.server.ObjID[], long, java.rmi.dgc.Lease") - }; - - public java.rmi.server.Operation[] getOperations() { - return ((java.rmi.server.Operation[]) operations.clone()); - } - - public void dispatch(java.rmi.Remote obj, java.rmi.server.RemoteCall call, int opnum, long hash) throws java.lang.Exception { - if (opnum < 0) { - if (hash == -5803803475088455571L) { - opnum = 0; - } - else if (hash == -8139341527526761862L) { - opnum = 1; - } - else { - throw new java.rmi.server.SkeletonMismatchException("interface hash mismatch"); - } - } - else if (hash != interfaceHash) { - throw new java.rmi.server.SkeletonMismatchException("interface hash mismatch"); - } - - gnu.java.rmi.dgc.DGCImpl server = (gnu.java.rmi.dgc.DGCImpl)obj; - switch (opnum) { - case 0: - { - java.rmi.server.ObjID[] $param_0; - long $param_1; - java.rmi.dgc.VMID $param_2; - boolean $param_3; - try { - java.io.ObjectInput in = call.getInputStream(); - $param_0 = (java.rmi.server.ObjID[])in.readObject(); - $param_1 = (long)in.readLong(); - $param_2 = (java.rmi.dgc.VMID)in.readObject(); - $param_3 = (boolean)in.readBoolean(); - - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling arguments", e); - } - catch (java.lang.ClassCastException e) { - throw new java.rmi.UnmarshalException("error unmarshalling arguments", e); - } - finally { - call.releaseInputStream(); - } - server.clean($param_0, $param_1, $param_2, $param_3); - try { - java.io.ObjectOutput out = call.getResultStream(true); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling return", e); - } - break; - } - - case 1: - { - java.rmi.server.ObjID[] $param_0; - long $param_1; - java.rmi.dgc.Lease $param_2; - try { - java.io.ObjectInput in = call.getInputStream(); - $param_0 = (java.rmi.server.ObjID[])in.readObject(); - $param_1 = (long)in.readLong(); - $param_2 = (java.rmi.dgc.Lease)in.readObject(); - - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling arguments", e); - } - catch (java.lang.ClassCastException e) { - throw new java.rmi.UnmarshalException("error unmarshalling arguments", e); - } - finally { - call.releaseInputStream(); - } - java.rmi.dgc.Lease $result = server.dirty($param_0, $param_1, $param_2); - try { - java.io.ObjectOutput out = call.getResultStream(true); - out.writeObject($result); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling return", e); - } - break; - } - - default: - throw new java.rmi.UnmarshalException("invalid method number"); - } - } -} diff --git a/libjava/gnu/java/rmi/dgc/DGCImpl_Stub.java b/libjava/gnu/java/rmi/dgc/DGCImpl_Stub.java deleted file mode 100644 index b1e086a73b2..00000000000 --- a/libjava/gnu/java/rmi/dgc/DGCImpl_Stub.java +++ /dev/null @@ -1,158 +0,0 @@ -/* DGCImpl_Stub.java - Copyright (C) 2002 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. */ - - -// Stub class generated by rmic - DO NOT EDIT! - -package gnu.java.rmi.dgc; - -public final class DGCImpl_Stub - extends java.rmi.server.RemoteStub - implements java.rmi.dgc.DGC -{ - private static final long serialVersionUID = 2L; - - private static final long interfaceHash = -669196253586618813L; - - private static boolean useNewInvoke; - - private static final java.rmi.server.Operation[] operations = { - new java.rmi.server.Operation("void clean(java.rmi.server.ObjID[], long, java.rmi.dgc.VMID, boolean)"), - new java.rmi.server.Operation("java.rmi.dgc.Lease dirty(java.rmi.server.ObjID[], long, java.rmi.dgc.Lease)") - }; - - private static java.lang.reflect.Method $method_clean_0; - private static java.lang.reflect.Method $method_dirty_1; - - static { - try { - java.rmi.server.RemoteRef.class.getMethod("invoke", new java.lang.Class[] { java.rmi.Remote.class, java.lang.reflect.Method.class, java.lang.Object[].class, long.class }); - useNewInvoke = true; - $method_clean_0 = gnu.java.rmi.dgc.DGCImpl.class.getMethod("clean", new java.lang.Class[] {java.rmi.server.ObjID[].class, long.class, java.rmi.dgc.VMID.class, boolean.class}); - $method_dirty_1 = gnu.java.rmi.dgc.DGCImpl.class.getMethod("dirty", new java.lang.Class[] {java.rmi.server.ObjID[].class, long.class, java.rmi.dgc.Lease.class}); - - } - catch (java.lang.NoSuchMethodException e) { - useNewInvoke = false; - } - } - - public DGCImpl_Stub() { - super(); - } - public DGCImpl_Stub(java.rmi.server.RemoteRef ref) { - super(ref); - } - - public void clean(java.rmi.server.ObjID[] $param_0, long $param_1, java.rmi.dgc.VMID $param_2, boolean $param_3) throws java.rmi.RemoteException { - try { - if (useNewInvoke) { - ref.invoke(this, $method_clean_0, new java.lang.Object[] {$param_0, new java.lang.Long($param_1), $param_2, new java.lang.Boolean($param_3)}, -5803803475088455571L); - } - else { - java.rmi.server.RemoteCall call = ref.newCall((java.rmi.server.RemoteObject)this, operations, 0, interfaceHash); - try { - java.io.ObjectOutput out = call.getOutputStream(); - out.writeObject($param_0); - out.writeLong($param_1); - out.writeObject($param_2); - out.writeBoolean($param_3); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling arguments", e); - } - ref.invoke(call); - try { - java.io.ObjectInput in = call.getInputStream(); - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling return", e); - } - finally { - ref.done(call); - } - } - } - catch (java.rmi.RemoteException e) { - throw e; - } - catch (java.lang.Exception e) { - throw new java.rmi.UnexpectedException("undeclared checked exception", e); - } - } - - public java.rmi.dgc.Lease dirty(java.rmi.server.ObjID[] $param_0, long $param_1, java.rmi.dgc.Lease $param_2) throws java.rmi.RemoteException { - try { - if (useNewInvoke) { - java.lang.Object $result = ref.invoke(this, $method_dirty_1, new java.lang.Object[] {$param_0, new java.lang.Long($param_1), $param_2}, -8139341527526761862L); - return ((java.rmi.dgc.Lease)$result); - } - else { - java.rmi.server.RemoteCall call = ref.newCall((java.rmi.server.RemoteObject)this, operations, 1, interfaceHash); - try { - java.io.ObjectOutput out = call.getOutputStream(); - out.writeObject($param_0); - out.writeLong($param_1); - out.writeObject($param_2); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling arguments", e); - } - ref.invoke(call); - java.rmi.dgc.Lease $result; - try { - java.io.ObjectInput in = call.getInputStream(); - $result = (java.rmi.dgc.Lease)in.readObject(); - return ($result); - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling return", e); - } - finally { - ref.done(call); - } - } - } - catch (java.rmi.RemoteException e) { - throw e; - } - catch (java.lang.Exception e) { - throw new java.rmi.UnexpectedException("undeclared checked exception", e); - } - } - -} diff --git a/libjava/gnu/java/rmi/registry/RegistryImpl.java b/libjava/gnu/java/rmi/registry/RegistryImpl.java deleted file mode 100644 index 0c94434d806..00000000000 --- a/libjava/gnu/java/rmi/registry/RegistryImpl.java +++ /dev/null @@ -1,154 +0,0 @@ -/* RegistryImpl.java -- - Copyright (c) 1996, 1997, 1998, 1999, 2002, 2005 - 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.java.rmi.registry; - -import gnu.java.rmi.server.UnicastServerRef; - -import java.rmi.AccessException; -import java.rmi.AlreadyBoundException; -import java.rmi.NotBoundException; -import java.rmi.Remote; -import java.rmi.RemoteException; -import java.rmi.registry.LocateRegistry; -import java.rmi.registry.Registry; -import java.rmi.server.ObjID; -import java.rmi.server.RMIClientSocketFactory; -import java.rmi.server.RMIServerSocketFactory; -import java.rmi.server.RMISocketFactory; -import java.rmi.server.UnicastRemoteObject; -import java.util.Enumeration; -import java.util.Hashtable; - -public class RegistryImpl - extends UnicastRemoteObject implements Registry { - -private Hashtable bindings = new Hashtable(); - -public RegistryImpl(int port) throws RemoteException { - this(port, RMISocketFactory.getSocketFactory(), RMISocketFactory.getSocketFactory()); -} - -public RegistryImpl(int port, RMIClientSocketFactory cf, RMIServerSocketFactory sf) throws RemoteException { - super(new UnicastServerRef(new ObjID(ObjID.REGISTRY_ID), port, sf)); - // The following is unnecessary, because UnicastRemoteObject export itself automatically. - //((UnicastServerRef)getRef()).exportObject(this); -} - -public Remote lookup(String name) throws RemoteException, NotBoundException, AccessException { - Object obj = bindings.get(name); - if (obj == null) { - throw new NotBoundException(name); - } - return ((Remote)obj); -} - -public void bind(String name, Remote obj) throws RemoteException, AlreadyBoundException, AccessException { - if (bindings.containsKey(name)) { - throw new AlreadyBoundException(name); - } - bindings.put(name, obj); -} - -public void unbind(String name) throws RemoteException, NotBoundException, AccessException { - Object obj = bindings.remove(name); - if (obj == null) { - throw new NotBoundException(name); - } -} - -public void rebind(String name, Remote obj) throws RemoteException, AccessException { - bindings.put(name, obj); -} - -public String[] list() throws RemoteException, AccessException { - int size = bindings.size(); - String[] strings = new String[size]; - Enumeration e = bindings.keys(); - for (int i = 0; i < size; i++) { - strings[i] = (String)e.nextElement(); - } - return (strings); -} - -public static void version() { - System.out.println("rmiregistry (" - + System.getProperty("java.vm.name") - + ") " - + System.getProperty("java.vm.version")); - System.out.println("Copyright 2005 Free Software Foundation, Inc."); - System.out.println("This is free software; see the source for copying conditions. There is NO"); - System.out.println("warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."); - System.exit(0); -} - -public static void help() { - System.out.println( -"Usage: rmiregistry [OPTION | PORT]\n" + -"\n" + -" --help Print this help, then exit\n" + -" --version Print version number, then exit\n"); - System.exit(0); -} - -public static void main(String[] args) { - int port = Registry.REGISTRY_PORT; - if (args.length > 0) { - if (args[0].equals("--version")) { - version(); - } - else if (args[0].equals("--help")) { - help(); - } - try { - port = Integer.parseInt(args[0]); - } - catch (NumberFormatException _) { - System.err.println("Bad port number - using default"); - } - } - - try { - Registry impl = LocateRegistry.createRegistry(port); - } - catch (RemoteException _) { - System.err.println("Registry failed"); - } -} - -} diff --git a/libjava/gnu/java/rmi/registry/RegistryImpl_Skel.java b/libjava/gnu/java/rmi/registry/RegistryImpl_Skel.java deleted file mode 100644 index 8cf14ccc0c4..00000000000 --- a/libjava/gnu/java/rmi/registry/RegistryImpl_Skel.java +++ /dev/null @@ -1,227 +0,0 @@ -/* RegistryImpl_Skel.java - Copyright (C) 2002 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. */ - - -// Skel class generated by rmic - DO NOT EDIT! - -package gnu.java.rmi.registry; - -public final class RegistryImpl_Skel - implements java.rmi.server.Skeleton -{ - private static final long interfaceHash = 4905912898345647071L; - - private static final java.rmi.server.Operation[] operations = { - new java.rmi.server.Operation("void bind(java.lang.String, java.rmi.Remote"), - new java.rmi.server.Operation("java.lang.String[] list("), - new java.rmi.server.Operation("java.rmi.Remote lookup(java.lang.String"), - new java.rmi.server.Operation("void rebind(java.lang.String, java.rmi.Remote"), - new java.rmi.server.Operation("void unbind(java.lang.String") - }; - - public java.rmi.server.Operation[] getOperations() { - return ((java.rmi.server.Operation[]) operations.clone()); - } - - public void dispatch(java.rmi.Remote obj, java.rmi.server.RemoteCall call, int opnum, long hash) throws java.lang.Exception { - if (opnum < 0) { - if (hash == 7583982177005850366L) { - opnum = 0; - } - else if (hash == 2571371476350237748L) { - opnum = 1; - } - else if (hash == -7538657168040752697L) { - opnum = 2; - } - else if (hash == -8381844669958460146L) { - opnum = 3; - } - else if (hash == 7305022919901907578L) { - opnum = 4; - } - else { - throw new java.rmi.server.SkeletonMismatchException("interface hash mismatch"); - } - } - else if (hash != interfaceHash) { - throw new java.rmi.server.SkeletonMismatchException("interface hash mismatch"); - } - - gnu.java.rmi.registry.RegistryImpl server = (gnu.java.rmi.registry.RegistryImpl)obj; - switch (opnum) { - case 0: - { - java.lang.String $param_0; - java.rmi.Remote $param_1; - try { - java.io.ObjectInput in = call.getInputStream(); - $param_0 = (java.lang.String)in.readObject(); - $param_1 = (java.rmi.Remote)in.readObject(); - - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling arguments", e); - } - catch (java.lang.ClassCastException e) { - throw new java.rmi.UnmarshalException("error unmarshalling arguments", e); - } - finally { - call.releaseInputStream(); - } - server.bind($param_0, $param_1); - try { - java.io.ObjectOutput out = call.getResultStream(true); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling return", e); - } - break; - } - - case 1: - { - try { - java.io.ObjectInput in = call.getInputStream(); - - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling arguments", e); - } - finally { - call.releaseInputStream(); - } - java.lang.String[] $result = server.list(); - try { - java.io.ObjectOutput out = call.getResultStream(true); - out.writeObject($result); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling return", e); - } - break; - } - - case 2: - { - java.lang.String $param_0; - try { - java.io.ObjectInput in = call.getInputStream(); - $param_0 = (java.lang.String)in.readObject(); - - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling arguments", e); - } - catch (java.lang.ClassCastException e) { - throw new java.rmi.UnmarshalException("error unmarshalling arguments", e); - } - finally { - call.releaseInputStream(); - } - java.rmi.Remote $result = server.lookup($param_0); - try { - java.io.ObjectOutput out = call.getResultStream(true); - out.writeObject($result); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling return", e); - } - break; - } - - case 3: - { - java.lang.String $param_0; - java.rmi.Remote $param_1; - try { - java.io.ObjectInput in = call.getInputStream(); - $param_0 = (java.lang.String)in.readObject(); - $param_1 = (java.rmi.Remote)in.readObject(); - - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling arguments", e); - } - catch (java.lang.ClassCastException e) { - throw new java.rmi.UnmarshalException("error unmarshalling arguments", e); - } - finally { - call.releaseInputStream(); - } - server.rebind($param_0, $param_1); - try { - java.io.ObjectOutput out = call.getResultStream(true); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling return", e); - } - break; - } - - case 4: - { - java.lang.String $param_0; - try { - java.io.ObjectInput in = call.getInputStream(); - $param_0 = (java.lang.String)in.readObject(); - - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling arguments", e); - } - catch (java.lang.ClassCastException e) { - throw new java.rmi.UnmarshalException("error unmarshalling arguments", e); - } - finally { - call.releaseInputStream(); - } - server.unbind($param_0); - try { - java.io.ObjectOutput out = call.getResultStream(true); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling return", e); - } - break; - } - - default: - throw new java.rmi.UnmarshalException("invalid method number"); - } - } -} diff --git a/libjava/gnu/java/rmi/registry/RegistryImpl_Stub.java b/libjava/gnu/java/rmi/registry/RegistryImpl_Stub.java deleted file mode 100644 index b289426b4fc..00000000000 --- a/libjava/gnu/java/rmi/registry/RegistryImpl_Stub.java +++ /dev/null @@ -1,293 +0,0 @@ -/* RegistryImpl_Stub.java - Copyright (C) 2002 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. */ - - -// Stub class generated by rmic - DO NOT EDIT! - -package gnu.java.rmi.registry; - -public final class RegistryImpl_Stub - extends java.rmi.server.RemoteStub - implements java.rmi.registry.Registry -{ - private static final long serialVersionUID = 2L; - - private static final long interfaceHash = 4905912898345647071L; - - private static boolean useNewInvoke; - - private static final java.rmi.server.Operation[] operations = { - new java.rmi.server.Operation("void bind(java.lang.String, java.rmi.Remote)"), - new java.rmi.server.Operation("java.lang.String[] list()"), - new java.rmi.server.Operation("java.rmi.Remote lookup(java.lang.String)"), - new java.rmi.server.Operation("void rebind(java.lang.String, java.rmi.Remote)"), - new java.rmi.server.Operation("void unbind(java.lang.String)") - }; - - private static java.lang.reflect.Method $method_bind_0; - private static java.lang.reflect.Method $method_list_1; - private static java.lang.reflect.Method $method_lookup_2; - private static java.lang.reflect.Method $method_rebind_3; - private static java.lang.reflect.Method $method_unbind_4; - - static { - try { - java.rmi.server.RemoteRef.class.getMethod("invoke", new java.lang.Class[] { java.rmi.Remote.class, java.lang.reflect.Method.class, java.lang.Object[].class, long.class }); - useNewInvoke = false; - $method_bind_0 = gnu.java.rmi.registry.RegistryImpl.class.getMethod("bind", new java.lang.Class[] {java.lang.String.class, java.rmi.Remote.class}); - $method_list_1 = gnu.java.rmi.registry.RegistryImpl.class.getMethod("list", new java.lang.Class[] {}); - $method_lookup_2 = gnu.java.rmi.registry.RegistryImpl.class.getMethod("lookup", new java.lang.Class[] {java.lang.String.class}); - $method_rebind_3 = gnu.java.rmi.registry.RegistryImpl.class.getMethod("rebind", new java.lang.Class[] {java.lang.String.class, java.rmi.Remote.class}); - $method_unbind_4 = gnu.java.rmi.registry.RegistryImpl.class.getMethod("unbind", new java.lang.Class[] {java.lang.String.class}); - - } - catch (java.lang.NoSuchMethodException e) { - useNewInvoke = false; - } - } - - public RegistryImpl_Stub() { - super(); - } - public RegistryImpl_Stub(java.rmi.server.RemoteRef ref) { - super(ref); - } - - public void bind(java.lang.String $param_0, java.rmi.Remote $param_1) throws java.rmi.AccessException, java.rmi.AlreadyBoundException, java.rmi.RemoteException { - try { - if (useNewInvoke) { - ref.invoke(this, $method_bind_0, new java.lang.Object[] {$param_0, $param_1}, 7583982177005850366L); - } - else { - java.rmi.server.RemoteCall call = ref.newCall((java.rmi.server.RemoteObject)this, operations, 0, interfaceHash); - try { - java.io.ObjectOutput out = call.getOutputStream(); - out.writeObject($param_0); - out.writeObject($param_1); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling arguments", e); - } - ref.invoke(call); - try { - java.io.ObjectInput in = call.getInputStream(); - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling return", e); - } - finally { - ref.done(call); - } - } - } - catch (java.rmi.AccessException e) { - throw e; - } - catch (java.rmi.AlreadyBoundException e) { - throw e; - } - catch (java.rmi.RemoteException e) { - throw e; - } - catch (java.lang.Exception e) { - throw new java.rmi.UnexpectedException("undeclared checked exception", e); - } - } - - public java.lang.String[] list() throws java.rmi.AccessException, java.rmi.RemoteException { - try { - if (useNewInvoke) { - java.lang.Object $result = ref.invoke(this, $method_list_1, null, 2571371476350237748L); - return ((java.lang.String[])$result); - } - else { - java.rmi.server.RemoteCall call = ref.newCall((java.rmi.server.RemoteObject)this, operations, 1, interfaceHash); - try { - java.io.ObjectOutput out = call.getOutputStream(); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling arguments", e); - } - ref.invoke(call); - java.lang.String[] $result; - try { - java.io.ObjectInput in = call.getInputStream(); - $result = (java.lang.String[])in.readObject(); - return ($result); - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling return", e); - } - finally { - ref.done(call); - } - } - } - catch (java.rmi.AccessException e) { - throw e; - } - catch (java.rmi.RemoteException e) { - throw e; - } - catch (java.lang.Exception e) { - throw new java.rmi.UnexpectedException("undeclared checked exception", e); - } - } - - public java.rmi.Remote lookup(java.lang.String $param_0) throws java.rmi.AccessException, java.rmi.NotBoundException, java.rmi.RemoteException { - try { - if (useNewInvoke) { - java.lang.Object $result = ref.invoke(this, $method_lookup_2, new java.lang.Object[] {$param_0}, -7538657168040752697L); - return ((java.rmi.Remote)$result); - } - else { - java.rmi.server.RemoteCall call = ref.newCall((java.rmi.server.RemoteObject)this, operations, 2, interfaceHash); - try { - java.io.ObjectOutput out = call.getOutputStream(); - out.writeObject($param_0); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling arguments", e); - } - ref.invoke(call); - java.rmi.Remote $result; - try { - java.io.ObjectInput in = call.getInputStream(); - $result = (java.rmi.Remote)in.readObject(); - return ($result); - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling return", e); - } - finally { - ref.done(call); - } - } - } - catch (java.rmi.AccessException e) { - throw e; - } - catch (java.rmi.NotBoundException e) { - throw e; - } - catch (java.rmi.RemoteException e) { - throw e; - } - catch (java.lang.Exception e) { - throw new java.rmi.UnexpectedException("undeclared checked exception", e); - } - } - - public void rebind(java.lang.String $param_0, java.rmi.Remote $param_1) throws java.rmi.AccessException, java.rmi.RemoteException { - try { - if (useNewInvoke) { - ref.invoke(this, $method_rebind_3, new java.lang.Object[] {$param_0, $param_1}, -8381844669958460146L); - } - else { - java.rmi.server.RemoteCall call = ref.newCall((java.rmi.server.RemoteObject)this, operations, 3, interfaceHash); - try { - java.io.ObjectOutput out = call.getOutputStream(); - out.writeObject($param_0); - out.writeObject($param_1); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling arguments", e); - } - ref.invoke(call); - try { - java.io.ObjectInput in = call.getInputStream(); - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling return", e); - } - finally { - ref.done(call); - } - } - } - catch (java.rmi.AccessException e) { - throw e; - } - catch (java.rmi.RemoteException e) { - throw e; - } - catch (java.lang.Exception e) { - throw new java.rmi.UnexpectedException("undeclared checked exception", e); - } - } - - public void unbind(java.lang.String $param_0) throws java.rmi.AccessException, java.rmi.NotBoundException, java.rmi.RemoteException { - try { - if (useNewInvoke) { - ref.invoke(this, $method_unbind_4, new java.lang.Object[] {$param_0}, 7305022919901907578L); - } - else { - java.rmi.server.RemoteCall call = ref.newCall((java.rmi.server.RemoteObject)this, operations, 4, interfaceHash); - try { - java.io.ObjectOutput out = call.getOutputStream(); - out.writeObject($param_0); - } - catch (java.io.IOException e) { - throw new java.rmi.MarshalException("error marshalling arguments", e); - } - ref.invoke(call); - try { - java.io.ObjectInput in = call.getInputStream(); - } - catch (java.io.IOException e) { - throw new java.rmi.UnmarshalException("error unmarshalling return", e); - } - finally { - ref.done(call); - } - } - } - catch (java.rmi.AccessException e) { - throw e; - } - catch (java.rmi.NotBoundException e) { - throw e; - } - catch (java.rmi.RemoteException e) { - throw e; - } - catch (java.lang.Exception e) { - throw new java.rmi.UnexpectedException("undeclared checked exception", e); - } - } - -} diff --git a/libjava/gnu/java/rmi/server/ConnectionRunnerPool.java b/libjava/gnu/java/rmi/server/ConnectionRunnerPool.java deleted file mode 100644 index 9cc57b2289f..00000000000 --- a/libjava/gnu/java/rmi/server/ConnectionRunnerPool.java +++ /dev/null @@ -1,156 +0,0 @@ -/* gnu.java.rmi.server.ConnectionRunnerPool - Copyright (C) 2002, 2004, 2005 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.java.rmi.server; - -import java.util.ArrayList; -import java.util.Arrays; - -//Should I generalize this class? - -class ConnectionRunnerPool -{ - - public static - class ConnectionRunner extends Thread{ - private UnicastConnection conn; - private volatile boolean exiting = false; - - public ConnectionRunner(ThreadGroup group, String id){ - super(group, id); - } - - public synchronized void run(){ - while(!exiting){ - if(conn == null) - try{ - wait(); - }catch(InterruptedException e){ - continue; - } - else{ - conn.run(); - conn = null; - synchronized(ConnectionRunnerPool.class){ - freelist.add(this); - if(freelist.size() == 1) - ConnectionRunnerPool.class.notifyAll(); - } - } - } - } - - public synchronized void dispatch(UnicastConnection conn){ - this.conn = conn; - notify(); - } - - void exit(){ - exiting = true; - if(conn != null) - try{ - join(500); - }catch(InterruptedException e){} - interrupt(); - } - - } - - // Should this value equal to number of CPU? - private static int size = 5; - private static int max_size = 10; - - // Package-private to avoid a trampoline. - static ArrayList freelist; - - private static ThreadGroup group = new ThreadGroup("pool"); - - static { - ConnectionRunner[] pools = new ConnectionRunner[size]; - for(int i = 0; i < pools.length; i++){ - pools[i] = new ConnectionRunner(group, new Integer(i).toString()); - pools[i].setContextClassLoader(Thread.currentThread().getContextClassLoader()); - pools[i].start(); - } - freelist = new ArrayList(Arrays.asList(pools)); - } - - public static void setSize(int size_){ - size = size_; - } - - public static void setMaxSize(int size){ - max_size = size; - } - - private static synchronized ConnectionRunner getConnectionRunner() - { - if(freelist.size() == 0){ - if(size < max_size){ - ++size; - ConnectionRunner a = new ConnectionRunner(group, new Integer(size).toString()); - a.start(); - freelist.add(a); - }else - while(freelist.size() == 0) - try{ - ConnectionRunnerPool.class.wait(); - }catch(InterruptedException e){} - } - - // always let the first in pool most busy or other scheduling plan?? - ConnectionRunner a = (ConnectionRunner)freelist.get(0); - freelist.remove(a); - return a; - } - - public static void dispatchConnection(UnicastConnection conn) - { - ConnectionRunner r = getConnectionRunner(); - r.dispatch(conn); - } - - public static void exit() - { - Thread[] list = new Thread[group.activeCount()]; - group.enumerate(list); - for(int i = 0; i < list.length; i++) - ((ConnectionRunner)list[i]).exit(); - } - -} diff --git a/libjava/gnu/java/rmi/server/ProtocolConstants.java b/libjava/gnu/java/rmi/server/ProtocolConstants.java deleted file mode 100644 index 30fb5e89b39..00000000000 --- a/libjava/gnu/java/rmi/server/ProtocolConstants.java +++ /dev/null @@ -1,62 +0,0 @@ -/* ProtocolConstants.java -- - Copyright (c) 1996, 1997, 1998, 1999 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.java.rmi.server; - -public interface ProtocolConstants -{ - int PROTOCOL_HEADER = 0x4a524d49; // JRMI - int PROTOCOL_VERSION = 2; - - int STREAM_PROTOCOL = 0x4b; - int SINGLE_OP_PROTOCOL = 0x4c; - int MULTIPLEX_PROTOCOL = 0x4d; - - int PROTOCOL_ACK = 0x4e; - int PROTOCOL_NACK = 0x4f; - - int MESSAGE_CALL = 0x50; - int MESSAGE_CALL_ACK = 0x51; - int MESSAGE_PING = 0x52; - int MESSAGE_PING_ACK = 0x53; - int MESSAGE_DGCACK = 0x54; - - int RETURN_ACK = 0x01; - int RETURN_NACK = 0x02; - - int DEFAULT_PROTOCOL = STREAM_PROTOCOL; -} diff --git a/libjava/gnu/java/rmi/server/RMIDefaultSocketFactory.java b/libjava/gnu/java/rmi/server/RMIDefaultSocketFactory.java deleted file mode 100644 index 628e1cc8799..00000000000 --- a/libjava/gnu/java/rmi/server/RMIDefaultSocketFactory.java +++ /dev/null @@ -1,59 +0,0 @@ -/* RMIDefaultSocketFactory.java -- - Copyright (c) 1996, 1997, 1998, 1999, 2005 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.java.rmi.server; - -import java.io.IOException; -import java.net.ServerSocket; -import java.net.Socket; -import java.rmi.server.RMISocketFactory; - -public class RMIDefaultSocketFactory - extends RMISocketFactory { - -public RMIDefaultSocketFactory() { -} - -public Socket createSocket(String host, int port) throws IOException { - return (new Socket(host, port)); -} - -public ServerSocket createServerSocket(int port) throws IOException { - return (new ServerSocket(port)); -} - -} diff --git a/libjava/gnu/java/rmi/server/RMIHashes.java b/libjava/gnu/java/rmi/server/RMIHashes.java deleted file mode 100644 index 5a414404d4f..00000000000 --- a/libjava/gnu/java/rmi/server/RMIHashes.java +++ /dev/null @@ -1,98 +0,0 @@ -/* RMIHashes.java -- - Copyright (c) 1996, 1997, 1998, 1999, 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.java.rmi.server; - -import gnu.java.lang.reflect.TypeSignature; - -import java.io.ByteArrayOutputStream; -import java.io.DataOutputStream; -import java.lang.reflect.Method; -import java.security.MessageDigest; - -public class RMIHashes -{ - //There're other places using DigestOutputStream to generate hash in classpath, but I think the way I used - //here is more efficient, anyway, you can switch to DigestOutputStream by doing like "//or:" comments say. - - //or:add this statement: private static final NullOutputStream nullOutputStream = new NullOutputStream (); - public static long getMethodHash(Method meth) - { - //Object Serialization Spec 8.3 - try - { - MessageDigest md = MessageDigest.getInstance ("SHA"); - //or:remove this statement: DigestOutputStream digest_out = new DigestOutputStream (nullOutputStream, md); - ByteArrayOutputStream digest_out = new ByteArrayOutputStream(); - DataOutputStream data_out = new DataOutputStream (digest_out); - - StringBuffer sbuf = new StringBuffer(); - sbuf.append(meth.getName()); - sbuf.append('('); - Class params[] = meth.getParameterTypes(); - for(int i = 0; i < params.length; i++) - sbuf.append(TypeSignature.getEncodingOfClass(params[i])); - sbuf.append(')'); - Class rcls = meth.getReturnType(); - if(rcls != Void.TYPE) - sbuf.append(TypeSignature.getEncodingOfClass(rcls)); - else - sbuf.append('V'); - - data_out.writeUTF (sbuf.toString()); - data_out.flush(); - data_out.close (); - - md.update(digest_out.toByteArray()); //or:remove this statement - byte[] sha = md.digest (); - long result = 0; - int len = sha.length < 8 ? sha.length : 8; - for (int i=0; i < len; i++) - result += (long)(sha[i] & 0xFF) << (8 * i); - return result; - }catch(Exception _){ - return -1L; - } - } - - public static long getInterfaceHash(Class clazz) - { - return clazz.hashCode (); - } -} - diff --git a/libjava/gnu/java/rmi/server/RMIIncomingThread.java b/libjava/gnu/java/rmi/server/RMIIncomingThread.java deleted file mode 100644 index 990d37bc521..00000000000 --- a/libjava/gnu/java/rmi/server/RMIIncomingThread.java +++ /dev/null @@ -1,58 +0,0 @@ -/* RMIIncomingThread.java -- - Copyright (c) 1996, 1997, 1998, 1999, 2002 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.java.rmi.server; - -public class RMIIncomingThread extends Thread { - - private String clientHost = null; - - public RMIIncomingThread(Runnable runnable, String s_clientHost) { - super(runnable); - clientHost = s_clientHost; - } - - public String toString() { - return "RMIIncoming from " + clientHost + " " + super.toString(); - } - - public String getClientHost() { - return clientHost; - } - - -} diff --git a/libjava/gnu/java/rmi/server/RMIObjectInputStream.java b/libjava/gnu/java/rmi/server/RMIObjectInputStream.java deleted file mode 100644 index 888b30bf6b6..00000000000 --- a/libjava/gnu/java/rmi/server/RMIObjectInputStream.java +++ /dev/null @@ -1,126 +0,0 @@ -/* RMIObjectInputStream.java -- - Copyright (c) 1996, 1997, 1998, 1999, 2002, 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.java.rmi.server; - -import java.io.IOException; -import java.io.InputStream; -import java.io.ObjectInputStream; -import java.io.ObjectStreamClass; -import java.lang.reflect.Proxy; -import java.net.MalformedURLException; -import java.rmi.server.RMIClassLoader; - -public class RMIObjectInputStream - extends ObjectInputStream { - -public RMIObjectInputStream(InputStream strm) throws IOException { - super(strm); - enableResolveObject(true); -} - -protected Class resolveClass(ObjectStreamClass desc) throws IOException, ClassNotFoundException { - String annotation = (String)getAnnotation(); - - try { - if(annotation == null) - return (RMIClassLoader.loadClass(desc.getName())); - else - return (RMIClassLoader.loadClass(annotation, desc.getName())); - } - catch (MalformedURLException _) { - throw new ClassNotFoundException(desc.getName()); - } -} - -//Separate it for override by MarshalledObject -protected Object getAnnotation() - throws IOException, ClassNotFoundException -{ - return readObject(); -} - -protected Class resolveProxyClass(String intfs[]) - throws IOException, ClassNotFoundException -{ - String annotation = (String)getAnnotation(); - - Class clss[] = new Class[intfs.length]; - if(annotation == null) - clss[0] = RMIClassLoader.loadClass(intfs[0]); - else - clss[0] = RMIClassLoader.loadClass(annotation, intfs[0]); - - //assume all interfaces can be loaded by the same classloader - ClassLoader loader = clss[0].getClassLoader(); - for (int i = 0; i < intfs.length; i++) - clss[i] = Class.forName(intfs[i], false, loader); - - try { - return Proxy.getProxyClass(loader, clss); - } catch (IllegalArgumentException e) { - throw new ClassNotFoundException(null, e); - } -} - -protected Object readValue(Class valueClass) throws IOException, ClassNotFoundException { - if(valueClass.isPrimitive()){ - if(valueClass == Boolean.TYPE) - return new Boolean(readBoolean()); - if(valueClass == Byte.TYPE) - return new Byte(readByte()); - if(valueClass == Character.TYPE) - return new Character(readChar()); - if(valueClass == Short.TYPE) - return new Short(readShort()); - if(valueClass == Integer.TYPE) - return new Integer(readInt()); - if(valueClass == Long.TYPE) - return new Long(readLong()); - if(valueClass == Float.TYPE) - return new Float(readFloat()); - if(valueClass == Double.TYPE) - return new Double(readDouble()); - else - throw new Error("Unsupported primitive class: " + valueClass); - } else - return readObject(); -} - -} diff --git a/libjava/gnu/java/rmi/server/RMIObjectOutputStream.java b/libjava/gnu/java/rmi/server/RMIObjectOutputStream.java deleted file mode 100644 index d42908a4147..00000000000 --- a/libjava/gnu/java/rmi/server/RMIObjectOutputStream.java +++ /dev/null @@ -1,114 +0,0 @@ -/* RMIObjectOutputStream.java - - Copyright (c) 1996, 1997, 1998, 1999, 2002, 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.java.rmi.server; - -import java.io.IOException; -import java.io.ObjectOutputStream; -import java.io.OutputStream; -import java.rmi.Remote; -import java.rmi.server.RMIClassLoader; -import java.rmi.server.RemoteStub; - -public class RMIObjectOutputStream - extends ObjectOutputStream { - -public RMIObjectOutputStream(OutputStream strm) throws IOException { - super(strm); - enableReplaceObject(true); -} - -//Separate it for override by MarshalledObject -protected void setAnnotation(String annotation) throws IOException{ - writeObject(annotation); -} - -protected void annotateClass(Class cls) throws IOException { - setAnnotation(RMIClassLoader.getClassAnnotation(cls)); -} - -protected void annotateProxyClass(Class cls) - throws IOException -{ - annotateClass(cls); -} - -protected Object replaceObject(Object obj) - throws IOException -{ - if((obj instanceof Remote) && !(obj instanceof RemoteStub)){ - UnicastServerRef ref = UnicastServer.getExportedRef((Remote)obj); - if (ref != null) - return ref.getStub(); - } - return obj; -} - -protected void writeValue(Object value, Class valueClass) throws IOException{ - if(valueClass.isPrimitive()){ - if(valueClass == Boolean.TYPE) - writeBoolean(((Boolean)value).booleanValue()); - else - if(valueClass == Byte.TYPE) - writeByte(((Byte)value).byteValue()); - else - if(valueClass == Character.TYPE) - writeChar(((Character)value).charValue()); - else - if(valueClass == Short.TYPE) - writeShort(((Short)value).shortValue()); - else - if(valueClass == Integer.TYPE) - writeInt(((Integer)value).intValue()); - else - if(valueClass == Long.TYPE) - writeLong(((Long)value).longValue()); - else - if(valueClass == Float.TYPE) - writeFloat(((Float)value).floatValue()); - else - if(valueClass == Double.TYPE) - writeDouble(((Double)value).doubleValue()); - else - throw new Error("Unsupported primitive class: " + valueClass); - } else - writeObject(value); -} - -} diff --git a/libjava/gnu/java/rmi/server/RMIVoidValue.java b/libjava/gnu/java/rmi/server/RMIVoidValue.java deleted file mode 100644 index 8e5546d3523..00000000000 --- a/libjava/gnu/java/rmi/server/RMIVoidValue.java +++ /dev/null @@ -1,51 +0,0 @@ -/* RMIVoidValue.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., 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.java.rmi.server; - -/** - * Package private class used to indicate a void return type. - * INSTANCE is the only object of this class ever made. - */ -final class RMIVoidValue -{ - static RMIVoidValue INSTANCE = new RMIVoidValue(); - - private RMIVoidValue() - { - } -} diff --git a/libjava/gnu/java/rmi/server/UnicastConnection.java b/libjava/gnu/java/rmi/server/UnicastConnection.java deleted file mode 100644 index 216e453e72f..00000000000 --- a/libjava/gnu/java/rmi/server/UnicastConnection.java +++ /dev/null @@ -1,231 +0,0 @@ -/* UnicastConnection.java -- - Copyright (c) 1996, 1997, 1998, 1999, 2002, 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.java.rmi.server; - -import java.io.BufferedInputStream; -import java.io.BufferedOutputStream; -import java.io.DataInputStream; -import java.io.DataOutputStream; -import java.io.IOException; -import java.io.ObjectInputStream; -import java.io.ObjectOutputStream; -import java.net.Socket; -import java.rmi.RemoteException; - -public class UnicastConnection - implements Runnable, ProtocolConstants { - -UnicastConnectionManager manager; -Socket sock; -DataInputStream din; -DataOutputStream dout; -ObjectInputStream oin; -ObjectOutputStream oout; - -// reviveTime and expireTime make UnicastConnection pool-able -long reviveTime = 0; -long expireTime = Long.MAX_VALUE; - -UnicastConnection(UnicastConnectionManager man, Socket sock) { - this.manager = man; - this.sock = sock; -} - -void acceptConnection() throws IOException { -//System.out.println("Accepting connection on " + sock); - //Use BufferedXXXStream would be more efficient - din = new DataInputStream(new BufferedInputStream(sock.getInputStream())); - dout = new DataOutputStream(new BufferedOutputStream(sock.getOutputStream())); - - int sig = din.readInt(); - if (sig != PROTOCOL_HEADER) { - throw new IOException("bad protocol header"); - } - short ver = din.readShort(); - if (ver != PROTOCOL_VERSION) { - throw new IOException("bad protocol version"); - } - int protocol = din.readUnsignedByte(); - if (protocol != SINGLE_OP_PROTOCOL) { - // Send an ACK - dout.writeByte(PROTOCOL_ACK); - - // Send my hostname and port - dout.writeUTF(manager.serverName); - dout.writeInt(manager.serverPort); - dout.flush(); - - // Read their hostname and port - String rhost = din.readUTF(); - int rport = din.readInt(); - } - // Okay, ready to roll ... -} - -void makeConnection(int protocol) throws IOException { - //Use BufferedXXXStream would be more efficient - din = new DataInputStream(new BufferedInputStream(sock.getInputStream())); - - dout = new DataOutputStream(new BufferedOutputStream(sock.getOutputStream())); - - // Send header - dout.writeInt(PROTOCOL_HEADER); - dout.writeShort(PROTOCOL_VERSION); - dout.writeByte(protocol); - dout.flush(); - - if (protocol != SINGLE_OP_PROTOCOL) { - // Get back ack. - int ack = din.readUnsignedByte(); - if (ack != PROTOCOL_ACK) { - throw new RemoteException("Unsupported protocol"); - } - - // Read in host and port - String dicard_rhost = din.readUTF(); - int discard_rport = din.readInt(); - - // Send them my endpoint - dout.writeUTF(manager.serverName); - dout.writeInt(manager.serverPort); - dout.flush(); - } - // Okay, ready to roll ... -} - -DataInputStream getDataInputStream() throws IOException { - return (din); -} - -DataOutputStream getDataOutputStream() throws IOException { - return (dout); -} - -/* -* -* get ObjectInputStream for reading more objects -* -*/ -ObjectInputStream getObjectInputStream() throws IOException { - if (oin == null) { - throw new IOException("no ObjectInputtream for reading more objects"); - } - return (oin); -} - -/** -* -* starts ObjectInputStream. -* -*/ -ObjectInputStream startObjectInputStream() throws IOException { - return (oin = new RMIObjectInputStream(din)); -} - -/** -* -* get ObjectOutputStream for sending more objects -* -*/ -ObjectOutputStream getObjectOutputStream() throws IOException { - if (oout == null) { - throw new IOException("no ObjectOutputStream for sending more objects"); - } - return (oout); -} - -/** -* -* starts ObjectOutputStream. -* -*/ -ObjectOutputStream startObjectOutputStream() throws IOException { - return (oout = new RMIObjectOutputStream(dout)); -} - -void disconnect() { - try { - if(oout != null) - oout.close(); - sock.close(); - } - catch (IOException _) { - } - - oin = null; - oout = null; - din = null; - dout = null; - sock = null; -} - -public static final long CONNECTION_TIMEOUT = 10000L; - -static boolean isExpired(UnicastConnection conn, long l){ - if (l <= conn.expireTime ) - return false; - return true; -} - -static void resetTime(UnicastConnection conn){ - long l = System.currentTimeMillis(); - conn.reviveTime = l; - conn.expireTime = l + CONNECTION_TIMEOUT; -} - -/** - * We run connects on the server. Dispatch it then discard it. - */ -public void run() { - do{ - try { - UnicastServer.dispatch(this); - //don't discardConnection explicitly, only when - // exception happens or the connection's expireTime - // comes - } catch (Exception e ){ - manager.discardConnection(this); - break; - } - }while(true); -} - - -} diff --git a/libjava/gnu/java/rmi/server/UnicastConnectionManager.java b/libjava/gnu/java/rmi/server/UnicastConnectionManager.java deleted file mode 100644 index 08f6a9bc394..00000000000 --- a/libjava/gnu/java/rmi/server/UnicastConnectionManager.java +++ /dev/null @@ -1,446 +0,0 @@ -/* UnicastConnectionManager.java -- - Copyright (c) 1996, 1997, 1998, 1999, 2002, 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.java.rmi.server; - -import java.io.IOException; -import java.io.ObjectInput; -import java.io.ObjectOutput; -import java.net.InetAddress; -import java.net.ServerSocket; -import java.net.Socket; -import java.net.UnknownHostException; -import java.rmi.RemoteException; -import java.rmi.server.RMIClientSocketFactory; -import java.rmi.server.RMIServerSocketFactory; -import java.rmi.server.RMISocketFactory; -import java.util.ArrayList; -import java.util.ConcurrentModificationException; -import java.util.Hashtable; -import java.util.Iterator; - -public class UnicastConnectionManager - implements Runnable, ProtocolConstants { - -private static String localhost; -// use different maps for server/client type UnicastConnectionManager -private static Hashtable servers = new Hashtable(); -// Package-private to avoid trampolines. -static Hashtable clients = new Hashtable(); -ArrayList connections; //client connection pool - -// make serverThread volatile for poll -private volatile Thread serverThread; -private ServerSocket ssock; -String serverName; -int serverPort; - -// Package-private to avoid a trampoline. -static Thread scavenger; - -// If client and server are in the same VM, serverobj represents server -Object serverobj; - -private static RMISocketFactory defaultSocketFactory = RMISocketFactory.getSocketFactory(); -private RMIServerSocketFactory serverFactory; -private RMIClientSocketFactory clientFactory; - -// The following is for debug -private static int ncsock = 0; //count of client socket -private static int nssock = 0; //count of server socket -private static int ncmanager = 0; //count of client manager -private static int nsmanager = 0; //count of server manager - -private static final boolean debug = false; - -private static final Object GLOBAL_LOCK = new Object(); - -static { - try { - //Use host address instead of host name to avoid name resolving issues - //localhost = InetAddress.getLocalHost().getHostName(); - localhost = InetAddress.getLocalHost().getHostAddress(); - } - catch (UnknownHostException _) { - localhost = "localhost"; - } - - -} - -//Only one scavenger thread running globally -private static void startScavenger(){ - scavenger = new Thread(new Runnable(){ - public void run(){ - if (debug) System.out.println("************* start scavenger."); - boolean liveon = true; - while (liveon){ - // Sleep for the expire timeout - try{ - Thread.sleep(UnicastConnection.CONNECTION_TIMEOUT); - }catch(InterruptedException _ie){ - break; - } - liveon = false; - // Scavenge all clients' connections that're expired - Iterator iter = clients.values().iterator(); - long l = System.currentTimeMillis(); - try{ - while(iter.hasNext()){ - UnicastConnectionManager man = (UnicastConnectionManager)iter.next(); - ArrayList conns = man.connections; - synchronized(conns) { // is the lock a little coarser? - for (int last = conns.size() - 1; - last >= 0; - --last) - { - UnicastConnection conn = (UnicastConnection)conns.get(last); - if (UnicastConnection.isExpired(conn, l)){ - conns.remove(last); - conn.disconnect(); - conn = null; - }else - liveon = true; //there're still live connections - } - } - } - }catch(ConcurrentModificationException cme) { - // handle it lazily - liveon = true; - } - } - scavenger = null; - if (debug) System.out.println("************* exit scavenger."); - } - }); - // As it is used for client connection, we may put this thread - // in daemon state to prevent the VM from blocking when exiting. - scavenger.setDaemon(true); - scavenger.start(); -} - -/** - * Client UnicastConnectionManager constructor - */ -private UnicastConnectionManager(String host, int port, RMIClientSocketFactory csf) { - ssock = null; - serverName = host; - serverPort = port; - serverFactory = null; - clientFactory = csf; - connections = new ArrayList(); -} - -/** - * Server UnicastConnectionManager constructor - */ -private UnicastConnectionManager(int port, RMIServerSocketFactory ssf) throws RemoteException { - - try { - ssock = ssf.createServerSocket(port); - serverPort = ssock.getLocalPort(); - } - catch (IOException ioex) { - ssock = null; - serverPort = 0; - throw new java.rmi.server.ExportException("can not create Server Socket on port " + port,ioex); - } - serverName = localhost; - serverFactory = ssf; - clientFactory = null; -} - -/** - * Return a client connection manager which will connect to the given - * host/port. - */ -public static synchronized UnicastConnectionManager getInstance(String host, int port, RMIClientSocketFactory csf) { -//System.out.println("getInstance: " + host + "," + port + "," + csf); - if (csf == null) { - csf = defaultSocketFactory; - } - // change host name to host address to avoid name resolving issues - try{ - host = InetAddress.getByName(host).getHostAddress(); - }catch(Exception _){} - - TripleKey key = new TripleKey(host, port, csf); - UnicastConnectionManager man = (UnicastConnectionManager)clients.get(key); - if (man == null) { - man = new UnicastConnectionManager(host, port, csf); - if (debug) { - ncmanager++; - System.out.println("\n\n ====== " + ncmanager + " client managers.\n\n"); - } - clients.put(key, man); - - // Detect if client and server are in the same VM, i.e., their keys are equal - UnicastConnectionManager svrman = (UnicastConnectionManager)servers.get(key); - if(svrman != null){ // server and client are in the same VM - man.serverobj = svrman.serverobj; - } - } - return (man); -} - -/** - * Return a server connection manager which will accept connection on the - * given port. - */ -public static synchronized UnicastConnectionManager getInstance(int port, RMIServerSocketFactory ssf) throws RemoteException { -//System.out.println("getInstance: " + port + "," + ssf); - if (ssf == null) { - ssf = defaultSocketFactory; - } - TripleKey key = new TripleKey(localhost, port, ssf); - UnicastConnectionManager man = (UnicastConnectionManager)servers.get(key); - if (man == null) { - man = new UnicastConnectionManager(port, ssf); - if (debug) { - nsmanager++; - System.out.println("\n\n ****** " + nsmanager + " server managers.\n\n"); - } - // The provided port might not be the set port. - key.port = man.serverPort; - servers.put(key, man); - } - return (man); -} - -/** - * Get a connection from this manager. - */ -public UnicastConnection getConnection() throws IOException { - if (ssock == null) { - return (getClientConnection()); - } - else { - return (getServerConnection()); - } -} - -/** - * Accept a connection to this server. - */ -private UnicastConnection getServerConnection() throws IOException { - Socket sock = ssock.accept(); - sock.setTcpNoDelay(true); //?? - UnicastConnection conn = new UnicastConnection(this, sock); - conn.acceptConnection(); - if (debug){ - nssock++; - System.out.println("\n\n ****** " + nssock + " server socks.\n\n"); - } - //System.out.println("Server connection " + sock); - return (conn); -} - -/** - * Make a conection from this client to the server. - */ -private UnicastConnection getClientConnection() throws IOException { - ArrayList conns = connections; - UnicastConnection conn; - - synchronized(conns) { - int nconn = conns.size() - 1; - - // if there're free connections in connection pool - if(nconn >= 0) { - conn = (UnicastConnection)conns.get(nconn); - //Should we check if conn is alive using Ping?? - conns.remove(nconn); - - // Check if the connection is already expired - long l = System.currentTimeMillis(); - if (!UnicastConnection.isExpired(conn, l)){ - return conn; - }else { - conn.disconnect(); - conn = null; - } - } - } - - Socket sock = clientFactory.createSocket(serverName, serverPort); - conn = new UnicastConnection(this, sock); - conn.makeConnection(DEFAULT_PROTOCOL); - - if (debug) { - ncsock++; - System.out.println("\n\n ====== " + ncsock + " client socks.\n\n"); - } - - return (conn); -} - -/** - * Discard a connection when we're done with it - maybe it can be - * recycled. - */ -public void discardConnection(UnicastConnection conn) { -//System.out.println("Discarding connection " + conn); - //conn.disconnect(); - if (ssock != null) //server connection - conn.disconnect(); - else { - // To client connection, we'd like to return back to pool - UnicastConnection.resetTime(conn); - //Ensure there're only one scavenger globally - synchronized(GLOBAL_LOCK) { - connections.add(conn); //borrow this lock to garantee thread safety - if (scavenger == null) - startScavenger(); - } - } -} - -/** - * Start a server on this manager if it's a server socket and we've not - * already got one running. - */ -public void startServer() { - synchronized(this) { - if (ssock == null || serverThread != null) { - return; - } - serverThread = new Thread(this); - // The following is not necessary when java.lang.Thread's constructor do this. - // serverThread.setContextClassLoader(Thread.currentThread().getContextClassLoader()); - } - serverThread.start(); -} - -/** - * Stop a server on this manager - */ -public void stopServer() { - synchronized(this) { - if(serverThread != null){ - serverThread = null; - try{ - ssock.close(); - }catch(Exception _){} - } - } -} - -/** - * Server thread for connection manager. - */ -public void run() { - for (;serverThread != null;) { // if serverThread==null, then exit thread - try { -//System.out.println("Waiting for connection on " + serverPort); - UnicastConnection conn = getServerConnection(); - - // get address of remote host for the RMIIncomingThread object - String remoteHost = null; - if (conn.sock != null) { - remoteHost = conn.sock.getInetAddress().getHostAddress(); - } - - // use a thread pool to improve performance - //ConnectionRunnerPool.dispatchConnection(conn); - (new RMIIncomingThread(conn, remoteHost)).start(); -// (new Thread(conn)).start(); - } - catch (Exception e) { - e.printStackTrace(); - } - } -} - -/** - * Serialization routine. - */ -void write(ObjectOutput out) throws IOException { - out.writeUTF(serverName); - out.writeInt(serverPort); -} - -/** - * Serialization routine. - */ -static UnicastConnectionManager read(ObjectInput in) throws IOException { - String host = in.readUTF(); - int port = in.readInt(); - //RMIClientSocketFactory csf = ((RMIObjectInputStream)in).manager.clientFactory; - //return (getInstance(host, port, csf)); - return (getInstance(host, port, null)); -} - -} - -/** - * This is use as the hashkey for the client/server connections. - */ -class TripleKey { - -String host; -int port; -Object other; - -TripleKey(String host, int port, Object other) { - this.host = host; - this.port = port; - this.other = other; -} - -/** - * Hash code just include the host and other - we ignore the port since - * this has unusual matching behaviour. - */ -public int hashCode() { - return (host.hashCode() ^ other.hashCode()); -} - -public boolean equals(Object obj) { - if (obj instanceof TripleKey) { - TripleKey other = (TripleKey)obj; - if (this.host.equals(other.host) && - this.other == other.other && - (this.port == other.port /* || this.port == 0 || other.port == 0*/)) { - return (true); - } - } - return (false); -} - -} diff --git a/libjava/gnu/java/rmi/server/UnicastRef.java b/libjava/gnu/java/rmi/server/UnicastRef.java deleted file mode 100644 index c1b871fb8e5..00000000000 --- a/libjava/gnu/java/rmi/server/UnicastRef.java +++ /dev/null @@ -1,278 +0,0 @@ -/* UnicastRef.java -- - Copyright (c) 1996, 1997, 1998, 1999, 2002, 2005 - 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.java.rmi.server; - -import java.io.DataInputStream; -import java.io.DataOutputStream; -import java.io.IOException; -import java.io.ObjectInput; -import java.io.ObjectInputStream; -import java.io.ObjectOutput; -import java.io.ObjectOutputStream; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.rmi.Remote; -import java.rmi.RemoteException; -import java.rmi.server.ObjID; -import java.rmi.server.Operation; -import java.rmi.server.RMIClientSocketFactory; -import java.rmi.server.RemoteCall; -import java.rmi.server.RemoteObject; -import java.rmi.server.RemoteRef; -import java.rmi.server.UID; - -public class UnicastRef - implements RemoteRef, ProtocolConstants { - -public ObjID objid; -UnicastConnectionManager manager; - -/** - * Used by serialization, and let subclass capable of having default constructor - */ -// must be public otherwise java.rmi.RemoteObject cannot instantiate this class -// -- iP -public UnicastRef() { -} - -public UnicastRef(ObjID objid, String host, int port, RMIClientSocketFactory csf) { - this(objid); - manager = UnicastConnectionManager.getInstance(host, port, csf); -} - -public UnicastRef(ObjID objid) { - this.objid = objid; -} - -public Object invoke(Remote obj, Method method, Object[] params, long opnum) throws Exception { - // Check if client and server are in the same VM, then local call can be used to - // replace remote call, but it's somewhat violating remote semantic. - Object svrobj = manager.serverobj; - - // Make sure that the server object is compatible. It could be loaded from a different - // classloader --iP - if(svrobj != null && method.getDeclaringClass().isInstance(svrobj)){ - //local call - Object ret = null; - try{ - ret = method.invoke(svrobj, params); - }catch(InvocationTargetException e){ - throw (Exception)e.getTargetException(); - } - //System.out.println("\n\n ***** local call: " + method + "\nreturn: " + ret + "\n\n"); - return ret; - } - //System.out.println("***************** remote call:" + manager.serverPort); - return (invokeCommon(obj, method, params, -1, opnum)); -} - -private Object invokeCommon(Remote obj, Method method, Object[] params, int opnum, long hash) throws Exception { - UnicastConnection conn; - try { - conn = manager.getConnection(); - } - catch (IOException e1) { - throw new RemoteException("connection failed to host: " + manager.serverName, e1); - } - - ObjectOutputStream out; - DataOutputStream dout; - try { - dout = conn.getDataOutputStream(); - dout.writeByte(MESSAGE_CALL); - - out = conn.startObjectOutputStream(); // (re)start ObjectOutputStream - - objid.write(out); - out.writeInt(opnum); - out.writeLong(hash); - - // must handle primitive class and their wrapper classes - Class clss[] = method.getParameterTypes(); - for(int i = 0; i < clss.length; i++) - ((RMIObjectOutputStream)out).writeValue(params[i], clss[i]); - - out.flush(); - } - catch (IOException e2) { - throw new RemoteException("call failed: ", e2); - } - - int returncode; - Object returnval; - DataInputStream din; - ObjectInputStream in; - UID ack; - try { - din = conn.getDataInputStream(); - - if ((returncode = din.readUnsignedByte()) != MESSAGE_CALL_ACK) { - conn.disconnect(); - throw new RemoteException("Call not acked:" + returncode); - } - - in = conn.startObjectInputStream(); // (re)start ObjectInputStream - returncode = in.readUnsignedByte(); - ack = UID.read(in); - - Class cls = method.getReturnType(); - - if (returncode == RETURN_NACK) { - returnval = in.readObject(); // get Exception - - } else if(cls == Void.TYPE) { - returnval = null; - // in.readObject() // not required! returntype 'void' means no field is returned. - } else { - returnval = ((RMIObjectInputStream)in).readValue(cls); // get returnvalue - } - } catch (IOException e3) { - //for debug: e3.printStackTrace(); - throw new RemoteException("call return failed: ", e3); - } - - /* if DGCAck is necessary?? - //According to RMI wire protocol, send a DGCAck - // to indicate receiving return value - dout.writeByte(MESSAGE_DGCACK); - ack.write(dout); - out.flush(); - */ - - manager.discardConnection(conn); - - if (returncode != RETURN_ACK && returnval != null) { - if (returncode == RETURN_NACK) throw (Exception)returnval; - else throw new RemoteException("unexpected returncode: " + returncode); - } - - return (returnval); -} - -/** - * @deprecated - */ -public RemoteCall newCall(RemoteObject obj, Operation[] op, int opnum, long hash) throws RemoteException { - UnicastConnection conn; - - try { - conn = manager.getConnection(); - } - catch (IOException e1) { - throw new RemoteException("connection failed to host: " + manager.serverName, e1); - } - - //obj: useless? - - return (new UnicastRemoteCall(conn, objid, opnum, hash)); -} - -/** - * @deprecated - */ -public void invoke(RemoteCall call) throws Exception { - UnicastRemoteCall c = (UnicastRemoteCall)call; - call.executeCall(); -} - -/** - * @deprecated - */ -public void done(RemoteCall call) throws RemoteException { - UnicastRemoteCall c = (UnicastRemoteCall)call; - try{ - c.done(); - } catch(IOException e){} - UnicastConnection conn = c.getConnection(); - manager.discardConnection(conn); -} - -public void writeExternal(ObjectOutput out) throws IOException { - if (manager == null) { - throw new IOException("no connection"); - } - manager.write(out); - objid.write(out); - // This byte is somewhat confusing when interoperating with JDK - out.writeByte(0); //RETURN_ACK); -} - -public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException { - manager = UnicastConnectionManager.read(in); - objid = ObjID.read(in); - byte ack = in.readByte(); - // This byte is somewhat confusing when interoperating with JDK - if (ack != RETURN_ACK && ack != 0/*jdk ack value*/) { - throw new IOException("no ack found"); - } -} - -public boolean remoteEquals(RemoteRef ref) { - throw new Error("Not implemented"); -} - -public int remoteHashCode() { - throw new Error("Not implemented"); -} - -public String getRefClass(ObjectOutput out) { - return ("UnicastRef"); -} - -public String remoteToString() { - throw new Error("Not implemented"); -} - -public void dump(UnicastConnection conn) { - try { - DataInputStream din = conn.getDataInputStream(); - for (;;) { - int b = din.readUnsignedByte(); - System.out.print(Integer.toHexString(b)); - if (b >= 32 && b < 128) { - System.out.print(": " + (char)b); - } - System.out.println(); - } - } - catch (IOException _) { - } -} - -} diff --git a/libjava/gnu/java/rmi/server/UnicastRemoteCall.java b/libjava/gnu/java/rmi/server/UnicastRemoteCall.java deleted file mode 100644 index c5206e76df2..00000000000 --- a/libjava/gnu/java/rmi/server/UnicastRemoteCall.java +++ /dev/null @@ -1,525 +0,0 @@ -/* UnicastRemoteCall.java - Copyright (c) 1996, 1997, 1998, 1999, 2002, 2004, 2005 - 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.java.rmi.server; - -import java.io.DataInputStream; -import java.io.DataOutputStream; -import java.io.IOException; -import java.io.ObjectInput; -import java.io.ObjectOutput; -import java.io.StreamCorruptedException; -import java.rmi.MarshalException; -import java.rmi.RemoteException; -import java.rmi.UnmarshalException; -import java.rmi.server.ObjID; -import java.rmi.server.RemoteCall; -import java.rmi.server.UID; -import java.util.Vector; - -public class UnicastRemoteCall - implements RemoteCall, ProtocolConstants -{ - - private UnicastConnection conn; - private Object result; - private Object object; - private int opnum; - private long hash; - // These are package-private due to inner class access. - Vector vec; - int ptr; - private ObjID objid; - - private ObjectOutput oout; - private ObjectInput oin; - - /** - * Incoming call. - */ - UnicastRemoteCall(UnicastConnection conn) - { - this.conn = conn; - } - - /** - * Outgoing call. - */ - UnicastRemoteCall(UnicastConnection conn, ObjID objid, int opnum, long hash) - throws RemoteException - { - this.conn = conn; - this.opnum = opnum; - this.hash = hash; - this.objid = objid; - } - - UnicastConnection getConnection() - { - return conn; - } - - public ObjectOutput getOutputStream() throws IOException - { - if (vec == null) - vec = new Vector(); - return (new DummyObjectOutputStream()); - } - - public void releaseOutputStream() throws IOException - { - if (vec != null) - { - oout = conn.getObjectOutputStream(); - - for (int i = 0; i < vec.size(); i += 2) - { - boolean primitive = ((Boolean)vec.elementAt(i)).booleanValue(); - Object data = vec.elementAt(i+1); - - // No type, this is - if (!primitive) - oout.writeObject(data); - else - { - if (data instanceof Boolean) - oout.writeBoolean(((Boolean)data).booleanValue()); - else if (data instanceof Character) - oout.writeChar(((Character)data).charValue()); - else if (data instanceof Byte) - oout.writeByte(((Byte)data).byteValue()); - else if (data instanceof Short) - oout.writeShort(((Short)data).shortValue()); - else if (data instanceof Integer) - oout.writeInt(((Integer)data).intValue()); - else if (data instanceof Long) - oout.writeLong(((Long)data).longValue()); - } - } - vec = null; - } - if(oout != null) - oout.flush(); - } - - /** - * - * (re)starts ObjectInputStream - * - */ - public ObjectInput startInputStream() throws IOException - { - if (conn != null) { - return (oin = conn.startObjectInputStream()); - } else { - return getInputStream(); // dummy Input Stream - } - - } - - public ObjectInput getInputStream() throws IOException - { - if (conn != null) - { - if(oin == null) - return (oin = conn.getObjectInputStream()); - else - return oin; - } - else - { - ptr = 0; - return (new DummyObjectInputStream()); - } - } - - public void releaseInputStream() throws IOException - { - // Does nothing. - } - - public ObjectOutput getResultStream(boolean success) - throws IOException, StreamCorruptedException - { - vec = new Vector(); - return new DummyObjectOutputStream(); - } - - public void executeCall() throws Exception - { - byte returncode; - ObjectInput oin; - - // signal the call when constructing - try - { - DataOutputStream dout = conn.getDataOutputStream(); - dout.write(MESSAGE_CALL); - - oout = conn.startObjectOutputStream(); // (re)start ObjectOutputStream - objid.write(oout); - oout.writeInt(opnum); - oout.writeLong(hash); - } - catch(IOException ex) - { - throw new MarshalException("Try to write header but failed.", ex); - } - - try - { - releaseOutputStream(); - DataInputStream din = conn.getDataInputStream(); - if (din.readByte() != MESSAGE_CALL_ACK) - throw new RemoteException("Call not acked"); - - oin = startInputStream(); - returncode = oin.readByte(); - UID.read(oin); - } - catch(IOException ex) - { - throw new UnmarshalException("Try to read header but failed:", ex); - } - - //check return code - switch(returncode) - { - case RETURN_ACK: //it's ok - return; - case RETURN_NACK: - Object returnobj; - try - { - returnobj = oin.readObject(); - } - catch(Exception ex2) - { - throw new UnmarshalException - ("Try to read exception object but failed", ex2); - } - - if(!(returnobj instanceof Exception)) - throw new UnmarshalException("Should be Exception type here: " - + returnobj); - throw (Exception)returnobj; - - default: - throw new UnmarshalException("Invalid return code"); - } - } - - public void done() throws IOException - { - // conn.disconnect(); - } - - boolean isReturnValue() - { - return vec.size() > 0; - } - - Object returnValue() - { - // This is not the first one (Boolean) but the second. - return vec.elementAt(1); - } - - Object[] getArguments() - { - return vec.toArray(); - } - - Object getObject() - { - return object; - } - - int getOpnum() - { - return opnum; - } - - long getHash() - { - return hash; - } - - void setReturnValue(Object obj) - { - vec.removeAllElements(); - vec.addElement(obj); - } - - /** - * Dummy object output class. - */ - private class DummyObjectOutputStream implements ObjectOutput - { - /** - * Non-private constructor to reduce bytecode emitted. - */ - DummyObjectOutputStream() - { - } - - public void writeBoolean(boolean v) throws IOException - { - vec.addElement(Boolean.TRUE); - vec.addElement(Boolean.valueOf(v)); - } - - public void writeByte(int v) throws IOException - { - vec.addElement(Boolean.TRUE); - vec.addElement(new Byte((byte) v)); - } - - public void writeChar(int v) throws IOException - { - vec.addElement(Boolean.TRUE); - vec.addElement(new Character((char) v)); - } - - public void writeDouble(double v) throws IOException - { - vec.addElement(Boolean.TRUE); - vec.addElement(new Double(v)); - } - - public void writeFloat(float v) throws IOException - { - vec.addElement(Boolean.TRUE); - vec.addElement(new Float(v)); - } - - public void writeInt(int v) throws IOException - { - vec.addElement(Boolean.TRUE); - vec.addElement(new Integer(v)); - } - - public void writeLong(long v) throws IOException - { - vec.addElement(Boolean.TRUE); - vec.addElement(new Long(v)); - } - - public void writeShort(int v) throws IOException - { - vec.addElement(Boolean.TRUE); - vec.addElement(new Short((short) v)); - } - - public void writeObject(Object obj) throws IOException - { - vec.addElement(Boolean.FALSE); - vec.addElement(obj); - } - - public void write(byte b[]) throws IOException - { - throw new IOException("not required"); - } - - public void write(byte b[], int off, int len) throws IOException - { - throw new IOException("not required"); - } - - public void write(int b) throws IOException - { - throw new IOException("not required"); - } - - public void writeBytes(String s) throws IOException - { - throw new IOException("not required"); - } - - public void writeChars(String s) throws IOException - { - throw new IOException("not required"); - } - - public void writeUTF(String str) throws IOException - { - throw new IOException("not required"); - } - - public void flush() throws IOException - { - } - - public void close() throws IOException - { - } - } // class DummyObjectOutputStream - - /** - * Dummy object input class. - */ - private class DummyObjectInputStream implements ObjectInput - { - /** - * Non-private constructor to reduce bytecode emitted. - */ - DummyObjectInputStream() - { - } - - public boolean readBoolean() throws IOException - { - Object obj = vec.elementAt(ptr++); - return ((Boolean) obj).booleanValue(); - } - - public byte readByte() throws IOException - { - Object obj = vec.elementAt(ptr++); - return ((Byte) obj).byteValue(); - } - - public char readChar() throws IOException - { - Object obj = vec.elementAt(ptr++); - return ((Character) obj).charValue(); - } - - public double readDouble() throws IOException - { - Object obj = vec.elementAt(ptr++); - return ((Double) obj).doubleValue(); - } - - public float readFloat() throws IOException - { - Object obj = vec.elementAt(ptr++); - return ((Float) obj).floatValue(); - } - - public int readInt() throws IOException - { - Object obj = vec.elementAt(ptr++); - return ((Integer) obj).intValue(); - } - - public long readLong() throws IOException - { - Object obj = vec.elementAt(ptr++); - return ((Long) obj).longValue(); - } - - public short readShort() throws IOException - { - Object obj = vec.elementAt(ptr++); - return ((Short) obj).shortValue(); - } - - public Object readObject() throws IOException - { - return vec.elementAt(ptr++); - } - - public int read(byte b[]) throws IOException - { - throw new IOException("not required"); - } - - public int read(byte b[], int off, int len) throws IOException - { - throw new IOException("not required"); - } - - public int read() throws IOException - { - throw new IOException("not required"); - } - - public long skip(long n) throws IOException - { - throw new IOException("not required"); - } - - public int available() throws IOException - { - throw new IOException("not required"); - } - - public void readFully(byte b[]) throws IOException - { - throw new IOException("not required"); - } - - public void readFully(byte b[], int off, int len) throws IOException - { - throw new IOException("not required"); - } - - public String readLine() throws IOException - { - throw new IOException("not required"); - } - - public String readUTF() throws IOException - { - throw new IOException("not required"); - } - - public int readUnsignedByte() throws IOException - { - throw new IOException("not required"); - } - - public int readUnsignedShort() throws IOException - { - throw new IOException("not required"); - } - - public int skipBytes(int n) throws IOException - { - throw new IOException("not required"); - } - - public void close() throws IOException - { - } - } // class DummyObjectInputStream - -} diff --git a/libjava/gnu/java/rmi/server/UnicastRemoteStub.java b/libjava/gnu/java/rmi/server/UnicastRemoteStub.java deleted file mode 100644 index 87e932de559..00000000000 --- a/libjava/gnu/java/rmi/server/UnicastRemoteStub.java +++ /dev/null @@ -1,50 +0,0 @@ -/* UnicastRemoteStub.java -- - Copyright (c) 1996, 1997, 1998, 1999 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.java.rmi.server; - -import java.rmi.server.RemoteRef; -import java.rmi.server.RemoteStub; - -public class UnicastRemoteStub - extends RemoteStub { - -public static void setStubRef(RemoteStub stub, RemoteRef ref) { - setRef(stub, ref); -} - -} diff --git a/libjava/gnu/java/rmi/server/UnicastServer.java b/libjava/gnu/java/rmi/server/UnicastServer.java deleted file mode 100644 index 065ef8c77ee..00000000000 --- a/libjava/gnu/java/rmi/server/UnicastServer.java +++ /dev/null @@ -1,167 +0,0 @@ -/* UnicastServer.java -- - Copyright (c) 1996, 1997, 1998, 1999, 2002, 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.java.rmi.server; - -import gnu.java.rmi.dgc.DGCImpl; - -import java.io.DataOutputStream; -import java.io.IOException; -import java.io.ObjectInputStream; -import java.io.ObjectOutputStream; -import java.rmi.NoSuchObjectException; -import java.rmi.Remote; -import java.rmi.RemoteException; -import java.rmi.ServerError; -import java.rmi.server.ObjID; -import java.rmi.server.UID; -import java.util.Hashtable; - -public class UnicastServer - implements ProtocolConstants { - -static private Hashtable objects = new Hashtable(); //mapping OBJID to server ref -static private Hashtable refcache = new Hashtable(); //mapping obj itself to server ref -static private DGCImpl dgc; - -public static void exportObject(UnicastServerRef obj) { - startDGC(); - objects.put(obj.objid, obj); - refcache.put(obj.myself, obj); - obj.manager.startServer(); -} - -// FIX ME: I haven't handle force parameter -public static boolean unexportObject(UnicastServerRef obj, boolean force) { - objects.remove(obj.objid); - refcache.remove(obj.myself); - obj.manager.stopServer(); - return true; -} - -public static UnicastServerRef getExportedRef(Remote remote){ - return (UnicastServerRef)refcache.get(remote); -} - -private static synchronized void startDGC() { - if (dgc == null) { - try { - dgc = new DGCImpl(); - // Changed DGCImpl to inherit UnicastServerRef directly - //((UnicastServerRef)dgc.getRef()).exportObject(dgc); - dgc.exportObject(dgc); - } - catch (RemoteException e) { - e.printStackTrace(); - } - } -} - -public static void dispatch(UnicastConnection conn) throws Exception { - switch (conn.getDataInputStream().readUnsignedByte()) { - case MESSAGE_CALL: - incomingMessageCall(conn); - break; - case MESSAGE_PING: - // jdk sends a ping before each method call -> answer it! - DataOutputStream out = conn.getDataOutputStream(); - out.writeByte(MESSAGE_PING_ACK); - out.flush(); - break; - default: - throw new Exception("bad method type"); - } -} - -private static void incomingMessageCall(UnicastConnection conn) throws IOException { - ObjectInputStream in = conn.startObjectInputStream(); // (re)start ObjectInputStream - - ObjID objid = ObjID.read(in); - int method = in.readInt(); - long hash = in.readLong(); - -//System.out.println("ObjID: " + objid + ", method: " + method + ", hash: " + hash); - - // Use the objid to locate the relevant UnicastServerRef - UnicastServerRef uref = (UnicastServerRef)objects.get(objid); - Object returnval; - int returncode = RETURN_ACK; - // returnval is from Method.invoke(), so we must check the return class to see - // if it's primitive type - Class returncls = null; - if (uref != null) { - try { - // Dispatch the call to it. - returnval = uref.incomingMessageCall(conn, method, hash); - returncls = uref.getMethodReturnType(method, hash); - } - catch (Exception e) { - returnval = e; - returncode = RETURN_NACK; - } - catch (Error e) { - returnval = new ServerError ("An Error is thrown while processing the invocation on the server", e); - returncode = RETURN_NACK; - } - } - else { - returnval = new NoSuchObjectException(""); - returncode = RETURN_NACK; - } - - conn.getDataOutputStream().writeByte(MESSAGE_CALL_ACK); - - ObjectOutputStream out = conn.startObjectOutputStream(); // (re)start ObjectOutputStream - - out.writeByte(returncode); - (new UID()).write(out); - - //System.out.println("returnval=" + returnval + " returncls=" + returncls); - - if(returnval != null && returncls != null) - ((RMIObjectOutputStream)out).writeValue(returnval, returncls); - - // 1.1/1.2 void return type detection: - else if (!(returnval instanceof RMIVoidValue || returncls == Void.TYPE)) - out.writeObject(returnval); - - out.flush(); -} - -} diff --git a/libjava/gnu/java/rmi/server/UnicastServerRef.java b/libjava/gnu/java/rmi/server/UnicastServerRef.java deleted file mode 100644 index 1f6eedec68a..00000000000 --- a/libjava/gnu/java/rmi/server/UnicastServerRef.java +++ /dev/null @@ -1,306 +0,0 @@ -/* UnicastServerRef.java -- - Copyright (c) 1996, 1997, 1998, 1999, 2002, 2003, 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.java.rmi.server; - -import java.io.ObjectInputStream; -import java.lang.reflect.Constructor; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.rmi.Remote; -import java.rmi.RemoteException; -import java.rmi.server.ObjID; -import java.rmi.server.RMIServerSocketFactory; -import java.rmi.server.RemoteRef; -import java.rmi.server.RemoteServer; -import java.rmi.server.RemoteStub; -import java.rmi.server.ServerNotActiveException; -import java.rmi.server.ServerRef; -import java.rmi.server.Skeleton; -import java.util.Hashtable; - -public class UnicastServerRef - extends UnicastRef - implements ServerRef{ //SHOULD implement ServerRef - -final static private Class[] stubprototype = new Class[] { RemoteRef.class }; - -Remote myself; //save the remote object itself -private Skeleton skel; -private RemoteStub stub; -private Hashtable methods = new Hashtable(); - -/** - * Used by serialization. - */ -UnicastServerRef() -{ -} - -public UnicastServerRef(ObjID id, int port, RMIServerSocketFactory ssf) throws RemoteException { - super(id); - manager = UnicastConnectionManager.getInstance(port, ssf); -} - -public RemoteStub exportObject(Remote obj) throws RemoteException { - if (myself == null) { - myself = obj; - // Save it to server manager, to let client calls in the same VM to issue - // local call - manager.serverobj = obj; - - // Find and install the stub - Class cls = obj.getClass(); - Class expCls; - try { - // where ist the _Stub? (check superclasses also) - expCls = findStubSkelClass(cls); - } catch (Exception ex) { - throw new RemoteException("can not find stubs for class: " + cls, ex); - } - - stub = (RemoteStub)getHelperClass(expCls, "_Stub"); - if (stub == null) { - throw new RemoteException("failed to export: " + cls); - } - - // Find and install the skeleton (if there is one) - skel = (Skeleton)getHelperClass(expCls, "_Skel"); - - // Build hash of methods which may be called. - buildMethodHash(obj.getClass(), true); - - // Export it. - UnicastServer.exportObject(this); - } - - return (stub); -} - -public RemoteStub exportObject(Remote remote, Object obj) - throws RemoteException -{ - //FIX ME - return exportObject(remote); -} - -public RemoteStub getStub(){ - return stub; -} - - -public boolean unexportObject(Remote obj, boolean force) { - // Remove all hashes of methods which may be called. - buildMethodHash(obj.getClass(), false); - return UnicastServer.unexportObject(this, force); -} - -/** -* -* The Subs/Skels might not there for the actual class, but maybe -* for one of the superclasses. -* -*/ -private Class findStubSkelClass(Class startCls) throws Exception { - Class cls = startCls; - - while (true) { - try { - String stubClassname = cls.getName() + "_Stub"; - ClassLoader cl = cls.getClassLoader(); - Class scls = cl == null ? Class.forName(stubClassname) - : cl.loadClass(stubClassname); - return cls; // found it - } catch (ClassNotFoundException e) { - Class superCls = cls.getSuperclass(); - if (superCls == null - || superCls == java.rmi.server.UnicastRemoteObject.class) - { - throw new Exception("Neither " + startCls - + " nor one of their superclasses (like" + cls + ")" - + " has a _Stub"); - } - cls = superCls; - } - } -} - - - -private Object getHelperClass(Class cls, String type) { - try { - String classname = cls.getName(); - ClassLoader cl = cls.getClassLoader(); - Class scls = cl == null ? Class.forName(classname + type) - : cl.loadClass(classname + type); - if (type.equals("_Stub")) { - try { - // JDK 1.2 stubs - Constructor con = scls.getConstructor(stubprototype); - return (con.newInstance(new Object[]{this})); - } - catch (NoSuchMethodException e) { - } - catch (InstantiationException e) { - } - catch (IllegalAccessException e) { - } - catch (IllegalArgumentException e) { - } - catch (InvocationTargetException e) { - } - // JDK 1.1 stubs - RemoteStub stub = (RemoteStub)scls.newInstance(); - UnicastRemoteStub.setStubRef(stub, this); - return (stub); - } - else { - // JDK 1.1 skel - return (scls.newInstance()); - } - } - catch (ClassNotFoundException e) { - } - catch (InstantiationException e) { - } - catch (IllegalAccessException e) { - } - return (null); -} - - - -public String getClientHost() throws ServerNotActiveException { - return RemoteServer.getClientHost(); -} - -private void buildMethodHash(Class cls, boolean build) { - Method[] meths = cls.getMethods(); - for (int i = 0; i < meths.length; i++) { - /* Don't need to include any java.xxx related stuff */ - if (meths[i].getDeclaringClass().getName().startsWith("java.")) { - continue; - } - long hash = RMIHashes.getMethodHash(meths[i]); - if(build) - methods.put(new Long (hash), meths[i]); - else - methods.remove(new Long (hash)); -//System.out.println("meth = " + meths[i] + ", hash = " + hash); - } -} - -Class getMethodReturnType(int method, long hash) throws Exception -{ - if (method == -1) { - Method meth = (Method)methods.get(new Long (hash)); - return meth.getReturnType(); - }else - return null; -} - -public Object incomingMessageCall(UnicastConnection conn, int method, long hash) throws Exception { -//System.out.println("method = " + method + ", hash = " + hash); - // If method is -1 then this is JDK 1.2 RMI - so use the hash - // to locate the method - if (method == -1) { - Method meth = (Method)methods.get(new Long (hash)); -//System.out.println("class = " + myself.getClass() + ", meth = " + meth); - if (meth == null) { - throw new NoSuchMethodException(); - } - - ObjectInputStream in = conn.getObjectInputStream(); - int nrargs = meth.getParameterTypes().length; - Object[] args = new Object[nrargs]; - for (int i = 0; i < nrargs; i++) { - /** - * For debugging purposes - we don't handle CodeBases - * quite right so we don't always find the stubs. This - * lets us know that. - */ - try { - // need to handle primitive types - args[i] = ((RMIObjectInputStream)in).readValue(meth.getParameterTypes()[i]); - - } - catch (Exception t) { - t.printStackTrace(); - throw t; - } - } - //We must reinterpret the exception thrown by meth.invoke() - //return (meth.invoke(myself, args)); - Object ret = null; - try{ - ret = meth.invoke(myself, args); - }catch(InvocationTargetException e){ - Throwable cause = e.getTargetException(); - if (cause instanceof Exception) { - throw (Exception)cause; - } - else if (cause instanceof Error) { - throw (Error)cause; - } - else { - throw new Error("The remote method threw a java.lang.Throwable that is neither java.lang.Exception nor java.lang.Error.", e); - } - } - return ret; - } - // Otherwise this is JDK 1.1 style RMI - we find the skeleton - // and invoke it using the method number. We wrap up our - // connection system in a UnicastRemoteCall so it appears in a - // way the Skeleton can handle. - else { - if (skel == null) { - throw new NoSuchMethodException(); - } - UnicastRemoteCall call = new UnicastRemoteCall(conn); - skel.dispatch(myself, call, method, hash); - if (!call.isReturnValue()) - return RMIVoidValue.INSTANCE; - else - return (call.returnValue()); - } -} - -} - - diff --git a/libjava/gnu/java/security/Engine.java b/libjava/gnu/java/security/Engine.java deleted file mode 100644 index b75de5caa95..00000000000 --- a/libjava/gnu/java/security/Engine.java +++ /dev/null @@ -1,237 +0,0 @@ -/* Engine -- generic getInstance method. - 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., 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.java.security; - -import java.lang.reflect.Constructor; -import java.lang.reflect.InvocationTargetException; - -import java.security.NoSuchAlgorithmException; -import java.security.Provider; - -/** - * Generic implementation of the getInstance methods in the various - * engine classes in java.security. - *

- * These classes ({@link java.security.Signature} for example) can be - * thought of as the "chrome, upholstery, and steering wheel", and the SPI - * (service provider interface, e.g. {@link java.security.SignatureSpi}) - * classes can be thought of as the "engine" -- providing the actual - * functionality of whatever cryptographic algorithm the instance - * represents. - * - * @see Provider - * @author Casey Marshall - */ -public final class Engine -{ - - // Constants. - // ------------------------------------------------------------------------ - - /** Prefix for aliases. */ - private static final String ALG_ALIAS = "Alg.Alias."; - - /** Maximum number of aliases to try. */ - private static final int MAX_ALIASES = 5; - - /** Argument list for no-argument constructors. */ - private static final Object[] NO_ARGS = new Object[0]; - - // Constructor. - // ------------------------------------------------------------------------ - - /** This class cannot be instantiated. */ - private Engine() { } - - // Class method. - // ------------------------------------------------------------------------ - - /** - * Get the implementation for algorithm for service - * service from provider. The service is e.g. - * "Signature", and the algorithm "DSA". - * - * @param service The service name. - * @param algorithm The name of the algorithm to get. - * @param provider The provider to get the implementation from. - * @return The engine class for the specified algorithm; the object - * returned is typically a subclass of the SPI class for that - * service, but callers should check that this is so. - * @throws NoSuchAlgorithmException If the implementation cannot be - * found or cannot be instantiated. - * @throws InvocationTargetException If the SPI class's constructor - * throws an exception. - * @throws IllegalArgumentException If any of the three arguments are null. - */ - public static Object getInstance(String service, String algorithm, - Provider provider) - throws InvocationTargetException, NoSuchAlgorithmException - { - return getInstance(service, algorithm, provider, NO_ARGS); - } - - /** - * Get the implementation for algorithm for service - * service from provider, passing initArgs to the - * SPI class's constructor (which cannot be null; pass a zero-length - * array if the SPI takes no arguments). The service is e.g. - * "Signature", and the algorithm "DSA". - * - * @param service The service name. - * @param algorithm The name of the algorithm to get. - * @param provider The provider to get the implementation from. - * @param initArgs The arguments to pass to the SPI class's - * constructor (cannot be null). - * @return The engine class for the specified algorithm; the object - * returned is typically a subclass of the SPI class for that - * service, but callers should check that this is so. - * @throws NoSuchAlgorithmException If the implementation cannot be - * found or cannot be instantiated. - * @throws InvocationTargetException If the SPI class's constructor - * throws an exception. - * @throws IllegalArgumentException If any of the four arguments are null. - */ - public static Object getInstance(String service, String algorithm, - Provider provider, Object[] initArgs) - throws InvocationTargetException, NoSuchAlgorithmException - { - if (service == null || algorithm == null - || provider == null || initArgs == null) - throw new IllegalArgumentException(); - - // If there is no property "service.algorithm" - if (provider.getProperty(service + "." + algorithm) == null) - { - // Iterate through aliases, until we find the class name or resolve - // too many aliases. - String alias = null; - int count = 0; - while ((alias = provider.getProperty( - ALG_ALIAS + service + "." + algorithm)) != null) - { - if (algorithm.equals(alias)) // Refers to itself! - break; - algorithm = alias; - if (count++ > MAX_ALIASES) - throw new NoSuchAlgorithmException("too many aliases"); - } - if (provider.getProperty(service + "." + algorithm) == null) - throw new NoSuchAlgorithmException(algorithm); - } - - // Find and instantiate the implementation. - Class clazz = null; - ClassLoader loader = provider.getClass().getClassLoader(); - Constructor constructor = null; - String error = algorithm; - - try - { - if (loader != null) - clazz = loader.loadClass(provider.getProperty(service+"."+algorithm)); - else - clazz = Class.forName(provider.getProperty(service+"."+algorithm)); - constructor = getCompatibleConstructor(clazz, initArgs); - return constructor.newInstance(initArgs); - } - catch (ClassNotFoundException cnfe) - { - error = "class not found: " + algorithm; - } - catch (IllegalAccessException iae) - { - error = "illegal access: " + iae.getMessage(); - } - catch (InstantiationException ie) - { - error = "instantiation exception: " + ie.getMessage(); - } - catch (ExceptionInInitializerError eiie) - { - error = "exception in initializer: " + eiie.getMessage(); - } - catch (SecurityException se) - { - error = "security exception: " + se.getMessage(); - } - catch (NoSuchMethodException nsme) - { - error = "no appropriate constructor found"; - } - - throw new NoSuchAlgorithmException(error); - } - - // Own methods. - // ------------------------------------------------------------------------ - - /** - * Find a constructor in the given class that can take the specified - * argument list, allowing any of which to be null. - * - * @param clazz The class from which to get the constructor. - * @param initArgs The argument list to be passed to the constructor. - * @return The constructor. - * @throws NoSuchMethodException If no constructor of the given class - * can take the specified argument array. - */ - private static Constructor getCompatibleConstructor(Class clazz, - Object[] initArgs) - throws NoSuchMethodException - { - Constructor[] c = clazz.getConstructors(); - outer:for (int i = 0; i < c.length; i++) - { - Class[] argTypes = c[i].getParameterTypes(); - if (argTypes.length != initArgs.length) - continue; - for (int j = 0; j < argTypes.length; j++) - { - if (initArgs[j] != null && - !argTypes[j].isAssignableFrom(initArgs[j].getClass())) - continue outer; - } - // If we reach this point, we know this constructor (c[i]) has - // the same number of parameters as the target parameter list, - // and all our parameters are either (1) null, or (2) assignable - // to the target parameter type. - return c[i]; - } - throw new NoSuchMethodException(); - } -} diff --git a/libjava/gnu/java/security/OID.java b/libjava/gnu/java/security/OID.java deleted file mode 100644 index 8cda43eeee8..00000000000 --- a/libjava/gnu/java/security/OID.java +++ /dev/null @@ -1,509 +0,0 @@ -/* OID.java -- numeric representation of an object identifier - Copyright (C) 2003, 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.java.security; - -import gnu.java.security.der.DEREncodingException; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.util.StringTokenizer; - -/** - * This immutable class represents an object identifier, or OID. - * - *

OIDs are represented as a series of hierarcical tokens, each of - * which is usually represented as a single, unsigned integer. The - * hierarchy works so that later tokens are considered within the group - * of earlier tokens. Thus, the OID for the Serpent block cipher, - * 1.3.6.1.4.1.11591.13.2, is maintained by the GNU project, whose OID - * is 1.3.6.1.4.1.11591 (which is, in turn, part of bigger, more general - * bodies; the topmost, 1, stands for the OIDs assigned by the - * International Standards Organization, ISO). - * - *

OIDs can be represented in a variety of ways, including the - * dotted-decimal form we use here. - * - *

OIDs may be relative, in which case the first two elements of the - * OID are omitted. - * - * @author Casey Marshall (csm@gnu.org) - */ -public class OID implements Cloneable, Comparable, java.io.Serializable -{ - - // Fields. - // ------------------------------------------------------------------------ - - /** - * The numeric ID structure. - */ - private int[] components; - - /** - * The string representation of this OID, in dotted-decimal format. - */ - private transient String strRep; - - /** - * The DER encoding of this OID. - */ - private transient byte[] der; - - /** - * Whether or not this OID is relative. - */ - private boolean relative; - - // Constructors. - // ------------------------------------------------------------------------ - - /** - * Create a new OID from the given byte array. The argument (which can - * neither be null nor zero-length) is copied to prevent subsequent - * modification. - * - * @param components The numeric IDs. - * @throws IllegalArgumentException If components is null or empty. - */ - public OID(int[] components) - { - this(components, false); - } - - /** - * Create a new OID from the given byte array. The argument (which can - * neither be null nor zero-length) is copied to prevent subsequent - * modification. - * - * @param components The numeric IDs. - * @param relative The relative flag. - * @throws IllegalArgumentException If components is null or empty. - */ - public OID(int[] components, boolean relative) - { - if (components == null || components.length == 0) - throw new IllegalArgumentException(); - this.components = (int[]) components.clone(); - this.relative = relative; - } - - /** - * Create a new OID from the given dotted-decimal representation. - * - * @param strRep The string representation of the OID. - * @throws IllegalArgumentException If the string does not contain at - * least one integer. - * @throws NumberFormatException If the string does not contain only - * numbers and periods ('.'). - */ - public OID(String strRep) - { - this(strRep, false); - } - - /** - * Create a new OID from the given dotted-decimal representation. - * - * @param strRep The string representation of the OID. - * @param relative The relative flag. - * @throws IllegalArgumentException If the string does not contain at - * least one integer. - * @throws NumberFormatException If the string does not contain only - * numbers and periods ('.'). - */ - public OID(String strRep, boolean relative) - { - this.relative = relative; - this.strRep = strRep; - components = fromString(strRep); - } - - /** - * Construct a new OID from the DER bytes in an input stream. This method - * does not read the tag or the length field from the input stream, so - * the caller must supply the number of octets in this OID's encoded - * form. - * - * @param derIn The DER input stream. - * @param len The number of bytes in the encoded form. - * @throws IOException If an error occurs reading the OID. - */ - public OID(InputStream derIn, int len) throws IOException - { - this(derIn, len, false); - } - - /** - * Construct a new OID from the DER bytes in an input stream. This method - * does not read the tag or the length field from the input stream, so - * the caller must supply the number of octets in this OID's encoded - * form. - * - * @param derIn The DER input stream. - * @param len The number of bytes in the encoded form. - * @param relative The relative flag. - * @throws IOException If an error occurs reading the OID. - */ - public OID(InputStream derIn, int len, boolean relative) throws IOException - { - der = new byte[len]; - derIn.read(der); - this.relative = relative; - try - { - components = fromDER(der, relative); - } - catch (ArrayIndexOutOfBoundsException aioobe) - { - aioobe.printStackTrace(); - throw aioobe; - } - } - - /** - * Construct a new OID from the given DER bytes. - * - * @param encoded The DER encoded OID. - * @throws IOException If an error occurs reading the OID. - */ - public OID(byte[] encoded) throws IOException - { - this(encoded, false); - } - - /** - * Construct a new OID from the given DER bytes. - * - * @param root The root OID. - * @param encoded The encoded relative OID. - * @param relative The relative flag. - */ - public OID(byte[] encoded, boolean relative) throws IOException - { - der = (byte[]) encoded.clone(); - this.relative = relative; - try - { - components = fromDER(der, relative); - } - catch (ArrayIndexOutOfBoundsException aioobe) - { - aioobe.printStackTrace(); - throw aioobe; - } - } - - /** - * Our private constructor. - */ - private OID() - { - } - - // Instance methods. - // ------------------------------------------------------------------------ - - /** - * Return the numeric IDs of this OID. The value returned is copied to - * prevent modification. - * - * @return The IDs in a new integer array. - */ - public int[] getIDs() - { - return (int[]) components.clone(); - } - - /** - * Get the DER encoding of this OID, minus the tag and length fields. - * - * @return The DER bytes. - */ - public byte[] getDER() - { - if (der == null) - { - ByteArrayOutputStream bout = new ByteArrayOutputStream(); - int i = 0; - if (!relative) - { - int b = components[i++] * 40 + (components.length > 1 - ? components[i++] : 0); - encodeSubID(bout, b); - } - for ( ; i < components.length; i++) - encodeSubID(bout, components[i]); - der = bout.toByteArray(); - } - return (byte[]) der.clone(); - } - - /** - * Get the parent OID of this OID. That is, if this OID is "1.2.3.4", - * then the parent OID will be "1.2.3". If this OID is a top-level - * OID, this method returns null. - * - * @return The parent OID, or null. - */ - public OID getParent() - { - if (components.length == 1) - return null; - int[] parent = new int[components.length - 1]; - System.arraycopy(components, 0, parent, 0, parent.length); - return new OID(parent); - } - - public OID getChild(int id) - { - int[] child = new int[components.length + 1]; - System.arraycopy(components, 0, child, 0, components.length); - child[child.length - 1] = id; - return new OID(child); - } - - /** - * Get the root OID of this OID. That is, the first two components. - * - * @return The root OID. - */ - public OID getRoot() - { - if (components.length <= 2) - return this; - int[] root = new int[2]; - root[0] = components[0]; - root[1] = components[1]; - return new OID(root); - } - - public boolean isRelative() - { - return relative; - } - - /** - * Returns a copy of this OID. - * - * @return The copy. - */ - public Object clone() - { - OID oid = new OID(); - oid.components = this.components; - oid.strRep = this.strRep; - return oid; - } - - /* Nice idea, but possibly too expensive for whatever benefit it - * provides. - - public String getShortName() - { - return OIDTable.getShortName(this); - } - - public String getLongName() - { - return OIDTable.getLongName(this); - } - - */ - - /** - * Returns the value of this OID in dotted-decimal format. - * - * @return The string representation. - */ - public String toString() - { - if (strRep != null) - return strRep; - else - { - StringBuffer buf = new StringBuffer(); - for (int i = 0; i < components.length; i++) - { - buf.append((long) components[i] & 0xFFFFFFFFL); - if (i < components.length - 1) - buf.append('.'); - } - return (strRep = buf.toString()); - } - } - - /** - * Computes a hash code for this OID. - * - * @return The hash code. - */ - public int hashCode() - { - int ret = 0; - for (int i = 0; i < components.length; i++) - ret += components[i] << (i & 31); - return ret; - } - - /** - * Tests whether or not this OID equals another. - * - * @return Whether or not this OID equals the other. - */ - public boolean equals(Object o) - { - if (!(o instanceof OID)) - return false; - return java.util.Arrays.equals(components, ((OID) o).components); - } - - /** - * Compares this OID to another. The comparison is essentially - * lexicographic, where the two OIDs are compared until their - * first difference, then that difference is returned. If one OID is - * shorter, but all elements equal between the two for the shorter - * length, then the shorter OID is lesser than the longer. - * - * @param o The object to compare. - * @return An integer less than, equal to, or greater than zero if - * this object is less than, equal to, or greater than the - * argument. - * @throws ClassCastException If o is not an OID. - */ - public int compareTo(Object o) - { - if (equals(o)) - return 0; - int[] components2 = ((OID) o).components; - int len = Math.min(components.length, components2.length); - for (int i = 0; i < len; i++) - { - if (components[i] != components2[i]) - return (components[i] < components2[i]) ? -1 : 1; - } - if (components.length == components2.length) - return 0; - return (components.length < components2.length) ? -1 : 1; - } - - // Own methods. - // ------------------------------------------------------------------------ - - private static int[] fromDER(byte[] der, boolean relative) - throws DEREncodingException - { - // cannot be longer than this. - int[] components = new int[der.length + 1]; - int count = 0; - int i = 0; - if (!relative && i < der.length) - { - // Non-relative OIDs have the first two arcs coded as: - // - // i = first_arc * 40 + second_arc; - // - int j = (der[i] & 0xFF); - components[count++] = j / 40; - components[count++] = j % 40; - i++; - } - while (i < der.length) - { - int j = 0; - do - { - j = der[i++] & 0xFF; - components[count] <<= 7; - components[count] |= j & 0x7F; - if (i >= der.length && (j & 0x80) != 0) - throw new DEREncodingException("malformed OID"); - } - while ((j & 0x80) != 0); - count++; - } - if (count == components.length) - return components; - int[] ret = new int[count]; - System.arraycopy(components, 0, ret, 0, count); - return ret; - } - - private static int[] fromString(String strRep) throws NumberFormatException - { - if (strRep.startsWith("OID.") || strRep.startsWith("oid.")) - strRep = strRep.substring(4); - StringTokenizer tok = new StringTokenizer(strRep, "."); - if (tok.countTokens() == 0) - throw new IllegalArgumentException(); - int[] components = new int[tok.countTokens()]; - int i = 0; - while (tok.hasMoreTokens()) - { - components[i++] = Integer.parseInt(tok.nextToken()); - } - return components; - } - - private static void encodeSubID(ByteArrayOutputStream out, int id) - { - if (id < 128) - { - out.write(id); - } - else if (id < 16384) - { - out.write((id >>> 7) | 0x80); - out.write(id & 0x7F); - } - else if (id < 2097152) - { - out.write((id >>> 14) | 0x80); - out.write(((id >>> 7) | 0x80) & 0xFF); - out.write(id & 0x7F); - } - else if (id < 268435456) - { - out.write( (id >>> 21) | 0x80); - out.write(((id >>> 14) | 0x80) & 0xFF); - out.write(((id >>> 7) | 0x80) & 0xFF); - out.write(id & 0x7F); - } - } -} diff --git a/libjava/gnu/java/security/PolicyFile.java b/libjava/gnu/java/security/PolicyFile.java deleted file mode 100644 index dd3a4dec4c4..00000000000 --- a/libjava/gnu/java/security/PolicyFile.java +++ /dev/null @@ -1,667 +0,0 @@ -/* PolicyFile.java -- policy file reader - Copyright (C) 2004, 2005 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.java.security; - -import java.io.File; -import java.io.IOException; -import java.io.InputStreamReader; -import java.io.StreamTokenizer; -import java.lang.reflect.Constructor; -import java.net.MalformedURLException; -import java.net.URL; -import java.security.AccessController; -import java.security.CodeSource; -import java.security.KeyStore; -import java.security.KeyStoreException; -import java.security.Permission; -import java.security.PermissionCollection; -import java.security.Permissions; -import java.security.Policy; -import java.security.Principal; -import java.security.PrivilegedActionException; -import java.security.PrivilegedExceptionAction; -import java.security.Security; -import java.security.UnresolvedPermission; -import java.security.cert.Certificate; -import java.security.cert.X509Certificate; -import java.util.Enumeration; -import java.util.HashMap; -import java.util.Iterator; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; -import java.util.StringTokenizer; - -/** - * An implementation of a {@link java.security.Policy} object whose - * permissions are specified by a policy file. - * - *

The approximate syntax of policy files is:

- * - *
- * policyFile ::= keystoreOrGrantEntries ;
- *
- * keystoreOrGrantEntries ::= keystoreOrGrantEntry |
- *                            keystoreOrGrantEntries keystoreOrGrantEntry |
- *                            EMPTY ;
- *
- * keystoreOrGrantEntry ::= keystoreEntry | grantEntry ;
- *
- * keystoreEntry ::= "keystore" keystoreUrl ';' |
- *                   "keystore" keystoreUrl ',' keystoreAlgorithm ';' ;
- *
- * keystoreUrl ::= URL ;
- * keystoreAlgorithm ::= STRING ;
- *
- * grantEntry ::= "grant" domainParameters '{' permissions '}' ';'
- *
- * domainParameters ::= domainParameter |
- *                      domainParameter ',' domainParameters ;
- *
- * domainParameter ::= "signedBy" signerNames |
- *                     "codeBase" codeBaseUrl |
- *                     "principal" principalClassName principalName |
- *                     "principal" principalName ;
- *
- * signerNames ::= quotedString ;
- * codeBaseUrl ::= URL ;
- * principalClassName ::= STRING ;
- * principalName ::= quotedString ;
- *
- * quotedString ::= quoteChar STRING quoteChar ;
- * quoteChar ::= '"' | '\'';
- *
- * permissions ::= permission | permissions permission ;
- *
- * permission ::= "permission" permissionClassName permissionTarget permissionAction |
- *                "permission" permissionClassName permissionTarget |
- *                "permission" permissionClassName;
- * 
- * - *

Comments are either form of Java comments. Keystore entries only - * affect subsequent grant entries, so if a grant entry preceeds a - * keystore entry, that grant entry is not affected by that keystore - * entry. Certian instances of ${property-name} will be - * replaced with System.getProperty("property-name") in - * quoted strings.

- * - *

This class will load the following files when created or - * refreshed, in order:

- * - *
    - *
  1. The file ${java.home}/lib/security/java.policy.
  2. - *
  3. All URLs specified by security properties - * "policy.file.n", for increasing n - * starting from 1. The sequence stops at the first undefined - * property, so you must set "policy.file.1" if you also - * set "policy.file.2", and so on.
  4. - *
  5. The URL specified by the property - * "java.security.policy".
  6. - *
- * - * @author Casey Marshall (csm@gnu.org) - * @see java.security.Policy - */ -public final class PolicyFile extends Policy -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - private static final boolean DEBUG = true; - // Package-private to avoid a trampoline. - static void debug(String msg) - { - System.err.print(">> PolicyFile: "); - System.err.println(msg); - } - - private static void debug(Throwable t) - { - System.err.println(">> PolicyFile"); - t.printStackTrace(System.err); - } - - private static final String DEFAULT_POLICY = System.getProperty("java.home") - + System.getProperty("file.separator") + "lib" - + System.getProperty("file.separator") + "security" - + System.getProperty("file.separator") + "java.policy"; - - private final Map cs2pc; - - // Constructors. - // ------------------------------------------------------------------------- - - public PolicyFile() - { - cs2pc = new HashMap(); - refresh(); - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public PermissionCollection getPermissions(CodeSource codeSource) - { - Permissions perms = new Permissions(); - for (Iterator it = cs2pc.entrySet().iterator(); it.hasNext(); ) - { - Map.Entry e = (Map.Entry) it.next(); - CodeSource cs = (CodeSource) e.getKey(); - if (cs.implies(codeSource)) - { - if (DEBUG) debug(cs+" -> "+codeSource); - PermissionCollection pc = (PermissionCollection) e.getValue(); - for (Enumeration ee = pc.elements(); ee.hasMoreElements(); ) - { - perms.add((Permission) ee.nextElement()); - } - } - else - if (DEBUG) debug(cs+" !-> "+codeSource); - } - if (DEBUG) debug ("returning permissions " + perms + " for " + codeSource); - return perms; - } - - public void refresh() - { - cs2pc.clear(); - List policyFiles = new LinkedList(); - try - { - policyFiles.add(new File(DEFAULT_POLICY).toURL()); - if (DEBUG) debug ("defualt policy is " + DEFAULT_POLICY); - policyFiles.addAll((List) AccessController.doPrivileged( - new PrivilegedExceptionAction() - { - public Object run() throws Exception - { - LinkedList l = new LinkedList(); - for (int i = 1; ; i++) - { - String s = Security.getProperty("policy.file."+i); - if (DEBUG) debug("policy.file."+i+"="+s); - if (s == null) - break; - l.add(new URL(s)); - } - String s = System.getProperty("java.security.policy"); - if (DEBUG) debug("java.security.policy="+s); - if (s != null) - l.add(new URL(s)); - return l; - } - })); - } - catch (PrivilegedActionException pae) - { - if (DEBUG) debug(pae); - } - catch (MalformedURLException mue) - { - if (DEBUG) debug(mue); - } - for (Iterator it = policyFiles.iterator(); it.hasNext(); ) - { - try - { - URL url = (URL) it.next(); - parse(url); - } - catch (IOException ioe) - { - if (DEBUG) debug(ioe); - } - } - } - - public String toString() - { - return super.toString() + " [ " + cs2pc.toString() + " ]"; - } - - // Own methods. - // ------------------------------------------------------------------------- - - private static final int STATE_BEGIN = 0; - private static final int STATE_GRANT = 1; - private static final int STATE_PERMS = 2; - - /** - * Parse a policy file, incorporating the permission definitions - * described therein. - * - * @param url The URL of the policy file to read. - * @throws IOException if an I/O error occurs, or if the policy file - * cannot be parsed. - */ - private void parse(final URL url) throws IOException - { - if (DEBUG) debug ("reading policy file from " + url); - final StreamTokenizer in = new StreamTokenizer(new InputStreamReader(url.openStream())); - in.resetSyntax(); - in.slashSlashComments(true); - in.slashStarComments(true); - in.wordChars('A', 'Z'); - in.wordChars('a', 'z'); - in.wordChars('0', '9'); - in.wordChars('.', '.'); - in.wordChars('_', '_'); - in.wordChars('$', '$'); - in.whitespaceChars(' ', ' '); - in.whitespaceChars('\t', '\t'); - in.whitespaceChars('\f', '\f'); - in.whitespaceChars('\n', '\n'); - in.whitespaceChars('\r', '\r'); - in.quoteChar('\''); - in.quoteChar('"'); - - int tok; - int state = STATE_BEGIN; - List keystores = new LinkedList(); - URL currentBase = null; - List currentCerts = new LinkedList(); - Permissions currentPerms = new Permissions(); - while ((tok = in.nextToken()) != StreamTokenizer.TT_EOF) - { - switch (tok) - { - case '{': - if (state != STATE_GRANT) - error(url, in, "spurious '{'"); - state = STATE_PERMS; - tok = in.nextToken(); - break; - case '}': - if (state != STATE_PERMS) - error(url, in, "spurious '}'"); - state = STATE_BEGIN; - currentPerms.setReadOnly(); - Certificate[] c = null; - if (!currentCerts.isEmpty()) - c = (Certificate[]) currentCerts.toArray(new Certificate[currentCerts.size()]); - cs2pc.put(new CodeSource(currentBase, c), currentPerms); - currentCerts.clear(); - currentPerms = new Permissions(); - currentBase = null; - tok = in.nextToken(); - if (tok != ';') - in.pushBack(); - continue; - } - if (tok != StreamTokenizer.TT_WORD) - { - error(url, in, "expecting word token"); - } - - // keystore "" [',' ""] ';' - if (in.sval.equalsIgnoreCase("keystore")) - { - String alg = KeyStore.getDefaultType(); - tok = in.nextToken(); - if (tok != '"' && tok != '\'') - error(url, in, "expecting key store URL"); - String store = in.sval; - tok = in.nextToken(); - if (tok == ',') - { - tok = in.nextToken(); - if (tok != '"' && tok != '\'') - error(url, in, "expecting key store type"); - alg = in.sval; - tok = in.nextToken(); - } - if (tok != ';') - error(url, in, "expecting semicolon"); - try - { - KeyStore keystore = KeyStore.getInstance(alg); - keystore.load(new URL(url, store).openStream(), null); - keystores.add(keystore); - } - catch (Exception x) - { - error(url, in, x.toString()); - } - } - else if (in.sval.equalsIgnoreCase("grant")) - { - if (state != STATE_BEGIN) - error(url, in, "extraneous grant keyword"); - state = STATE_GRANT; - } - else if (in.sval.equalsIgnoreCase("signedBy")) - { - if (state != STATE_GRANT && state != STATE_PERMS) - error(url, in, "spurious 'signedBy'"); - if (keystores.isEmpty()) - error(url, in, "'signedBy' with no keystores"); - tok = in.nextToken(); - if (tok != '"' && tok != '\'') - error(url, in, "expecting signedBy name"); - StringTokenizer st = new StringTokenizer(in.sval, ","); - while (st.hasMoreTokens()) - { - String alias = st.nextToken(); - for (Iterator it = keystores.iterator(); it.hasNext(); ) - { - KeyStore keystore = (KeyStore) it.next(); - try - { - if (keystore.isCertificateEntry(alias)) - currentCerts.add(keystore.getCertificate(alias)); - } - catch (KeyStoreException kse) - { - error(url, in, kse.toString()); - } - } - } - tok = in.nextToken(); - if (tok != ',') - { - if (state != STATE_GRANT) - error(url, in, "spurious ','"); - in.pushBack(); - } - } - else if (in.sval.equalsIgnoreCase("codeBase")) - { - if (state != STATE_GRANT) - error(url, in, "spurious 'codeBase'"); - tok = in.nextToken(); - if (tok != '"' && tok != '\'') - error(url, in, "expecting code base URL"); - String base = expand(in.sval); - if (File.separatorChar != '/') - base = base.replace(File.separatorChar, '/'); - try - { - currentBase = new URL(base); - } - catch (MalformedURLException mue) - { - error(url, in, mue.toString()); - } - tok = in.nextToken(); - if (tok != ',') - in.pushBack(); - } - else if (in.sval.equalsIgnoreCase("principal")) - { - if (state != STATE_GRANT) - error(url, in, "spurious 'principal'"); - tok = in.nextToken(); - if (tok == StreamTokenizer.TT_WORD) - { - tok = in.nextToken(); - if (tok != '"' && tok != '\'') - error(url, in, "expecting principal name"); - String name = in.sval; - Principal p = null; - try - { - Class pclass = Class.forName(in.sval); - Constructor c = - pclass.getConstructor(new Class[] { String.class }); - p = (Principal) c.newInstance(new Object[] { name }); - } - catch (Exception x) - { - error(url, in, x.toString()); - } - for (Iterator it = keystores.iterator(); it.hasNext(); ) - { - KeyStore ks = (KeyStore) it.next(); - try - { - for (Enumeration e = ks.aliases(); e.hasMoreElements(); ) - { - String alias = (String) e.nextElement(); - if (ks.isCertificateEntry(alias)) - { - Certificate cert = ks.getCertificate(alias); - if (!(cert instanceof X509Certificate)) - continue; - if (p.equals(((X509Certificate) cert).getSubjectDN()) || - p.equals(((X509Certificate) cert).getSubjectX500Principal())) - currentCerts.add(cert); - } - } - } - catch (KeyStoreException kse) - { - error(url, in, kse.toString()); - } - } - } - else if (tok == '"' || tok == '\'') - { - String alias = in.sval; - for (Iterator it = keystores.iterator(); it.hasNext(); ) - { - KeyStore ks = (KeyStore) it.next(); - try - { - if (ks.isCertificateEntry(alias)) - currentCerts.add(ks.getCertificate(alias)); - } - catch (KeyStoreException kse) - { - error(url, in, kse.toString()); - } - } - } - else - error(url, in, "expecting principal"); - tok = in.nextToken(); - if (tok != ',') - in.pushBack(); - } - else if (in.sval.equalsIgnoreCase("permission")) - { - if (state != STATE_PERMS) - error(url, in, "spurious 'permission'"); - tok = in.nextToken(); - if (tok != StreamTokenizer.TT_WORD) - error(url, in, "expecting permission class name"); - String className = in.sval; - Class clazz = null; - try - { - clazz = Class.forName(className); - } - catch (ClassNotFoundException cnfe) - { - } - tok = in.nextToken(); - if (tok == ';') - { - if (clazz == null) - { - currentPerms.add(new UnresolvedPermission(className, - null, null, (Certificate[]) currentCerts.toArray(new Certificate[0]))); - continue; - } - try - { - currentPerms.add((Permission) clazz.newInstance()); - } - catch (Exception x) - { - error(url, in, x.toString()); - } - continue; - } - if (tok != '"' && tok != '\'') - error(url, in, "expecting permission target"); - String target = expand(in.sval); - tok = in.nextToken(); - if (tok == ';') - { - if (clazz == null) - { - currentPerms.add(new UnresolvedPermission(className, - target, null, (Certificate[]) currentCerts.toArray(new Certificate[0]))); - continue; - } - try - { - Constructor c = - clazz.getConstructor(new Class[] { String.class }); - currentPerms.add((Permission) c.newInstance( - new Object[] { target })); - } - catch (Exception x) - { - error(url, in, x.toString()); - } - continue; - } - if (tok != ',') - error(url, in, "expecting ','"); - tok = in.nextToken(); - if (tok == StreamTokenizer.TT_WORD) - { - if (!in.sval.equalsIgnoreCase("signedBy")) - error(url, in, "expecting 'signedBy'"); - try - { - Constructor c = - clazz.getConstructor(new Class[] { String.class }); - currentPerms.add((Permission) c.newInstance( - new Object[] { target })); - } - catch (Exception x) - { - error(url, in, x.toString()); - } - in.pushBack(); - continue; - } - if (tok != '"' && tok != '\'') - error(url, in, "expecting permission action"); - String action = in.sval; - if (clazz == null) - { - currentPerms.add(new UnresolvedPermission(className, - target, action, (Certificate[]) currentCerts.toArray(new Certificate[0]))); - continue; - } - else - { - try - { - Constructor c = clazz.getConstructor( - new Class[] { String.class, String.class }); - currentPerms.add((Permission) c.newInstance( - new Object[] { target, action })); - } - catch (Exception x) - { - error(url, in, x.toString()); - } - } - tok = in.nextToken(); - if (tok != ';' && tok != ',') - error(url, in, "expecting ';' or ','"); - } - } - } - - /** - * Expand all instances of "${property-name}" into - * System.getProperty("property-name"). - */ - private static String expand(final String s) - { - final StringBuffer result = new StringBuffer(); - final StringBuffer prop = new StringBuffer(); - int state = 0; - for (int i = 0; i < s.length(); i++) - { - switch (state) - { - case 0: - if (s.charAt(i) == '$') - state = 1; - else - result.append(s.charAt(i)); - break; - case 1: - if (s.charAt(i) == '{') - state = 2; - else - { - state = 0; - result.append('$').append(s.charAt(i)); - } - break; - case 2: - if (s.charAt(i) == '}') - { - String p = prop.toString(); - if (p.equals("/")) - p = "file.separator"; - p = System.getProperty(p); - if (p == null) - p = ""; - result.append(p); - prop.setLength(0); - state = 0; - } - else - prop.append(s.charAt(i)); - break; - } - } - if (state != 0) - result.append('$').append('{').append(prop); - return result.toString(); - } - - /** - * I miss macros. - */ - private static void error(URL base, StreamTokenizer in, String msg) - throws IOException - { - throw new IOException(base+":"+in.lineno()+": "+msg); - } -} diff --git a/libjava/gnu/java/security/action/GetPropertyAction.java b/libjava/gnu/java/security/action/GetPropertyAction.java deleted file mode 100644 index 2886deb3474..00000000000 --- a/libjava/gnu/java/security/action/GetPropertyAction.java +++ /dev/null @@ -1,89 +0,0 @@ -/* GetPropertyAction.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., 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.java.security.action; - -import java.security.PrivilegedAction; - -/** - * PrivilegedAction implementation that calls System.getProperty() with - * the property name passed to its constructor. - * - * Example of use: - * - * GetPropertyAction action = new GetPropertyAction("http.proxyPort"); - * String port = AccessController.doPrivileged(action); - * - */ -public class GetPropertyAction implements PrivilegedAction -{ - String name; - String value = null; - - public GetPropertyAction() - { - } - - public GetPropertyAction(String propName) - { - setParameters(propName); - } - - public GetPropertyAction(String propName, String defaultValue) - { - setParameters(propName, defaultValue); - } - - public Object run() - { - return System.getProperty(name, value); - } - - public GetPropertyAction setParameters(String propName) - { - this.name = propName; - this.value = null; - return this; - } - - public GetPropertyAction setParameters(String propName, String defaultValue) - { - this.name = propName; - this.value = defaultValue; - return this; - } -} diff --git a/libjava/gnu/java/security/action/GetSecurityPropertyAction.java b/libjava/gnu/java/security/action/GetSecurityPropertyAction.java deleted file mode 100644 index 97fa15d03e5..00000000000 --- a/libjava/gnu/java/security/action/GetSecurityPropertyAction.java +++ /dev/null @@ -1,93 +0,0 @@ -/* GetSecurityPropertyAction.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., 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.java.security.action; - -import java.security.PrivilegedAction; -import java.security.Security; - -/** - * PrivilegedAction implementation that calls Security.getProperty() - * with the property name passed to its constructor. - * - * Example of use: - * - * GetSecurityPropertyAction action = new GetSecurityPropertyAction("javax.net.ssl.trustStorePassword"); - * String passwd = AccessController.doPrivileged(action); - * - */ -public class GetSecurityPropertyAction implements PrivilegedAction -{ - private String name; - private String value; - - public GetSecurityPropertyAction() - { - } - - public GetSecurityPropertyAction(String propName) - { - setParameters(propName); - } - - public GetSecurityPropertyAction(String propName, String defaultValue) - { - setParameters(propName, defaultValue); - } - - public GetSecurityPropertyAction setParameters(String propName) - { - this.name = propName; - this.value = null; - return this; - } - - public GetSecurityPropertyAction setParameters(String propName, String defaultValue) - { - this.name = propName; - this.value = defaultValue; - return this; - } - - public Object run() - { - String val = Security.getProperty(name); - if (val == null) - val = value; - return val; - } -} diff --git a/libjava/gnu/java/security/action/SetAccessibleAction.java b/libjava/gnu/java/security/action/SetAccessibleAction.java deleted file mode 100644 index 77e5fc988b8..00000000000 --- a/libjava/gnu/java/security/action/SetAccessibleAction.java +++ /dev/null @@ -1,77 +0,0 @@ -/* SetAccessibleAction.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., 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.java.security.action; - -import java.lang.reflect.AccessibleObject; -import java.security.PrivilegedAction; - -/** - * PrivilegedAction implementation that calls setAccessible(true) on the - * AccessibleObject passed to its constructor. - * - * Example of use: - * - * Field dataField = cl.getDeclaredField("data"); - * AccessController.doPrivileged(new SetAccessibleAction(dataField)); - * - */ -public class SetAccessibleAction implements PrivilegedAction -{ - AccessibleObject member; - - public SetAccessibleAction() - { - } - - public SetAccessibleAction(AccessibleObject member) - { - this.member = member; - } - - public Object run() - { - member.setAccessible(true); - return null; - } - - public SetAccessibleAction setMember(AccessibleObject member) - { - this.member = member; - return this; - } -} diff --git a/libjava/gnu/java/security/ber/BER.java b/libjava/gnu/java/security/ber/BER.java deleted file mode 100644 index 7efb1bf90cc..00000000000 --- a/libjava/gnu/java/security/ber/BER.java +++ /dev/null @@ -1,46 +0,0 @@ -/* BER.java -- basic encoding rules (BER) constants. - 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.java.security.ber; - -import gnu.java.security.der.DER; - -public interface BER extends DER -{ - BERValue END_OF_SEQUENCE = new BERValue(0, null); -} diff --git a/libjava/gnu/java/security/ber/BEREncodingException.java b/libjava/gnu/java/security/ber/BEREncodingException.java deleted file mode 100644 index aad10932cc4..00000000000 --- a/libjava/gnu/java/security/ber/BEREncodingException.java +++ /dev/null @@ -1,54 +0,0 @@ -/* BEREncodingException.java --- BER Encoding Exception - 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.java.security.ber; - -import gnu.java.security.der.DEREncodingException; - -public class BEREncodingException extends DEREncodingException -{ - public BEREncodingException() - { - super (); - } - - public BEREncodingException (String msg) - { - super (msg); - } -} diff --git a/libjava/gnu/java/security/ber/BERReader.java b/libjava/gnu/java/security/ber/BERReader.java deleted file mode 100644 index 53a3f3ee9a9..00000000000 --- a/libjava/gnu/java/security/ber/BERReader.java +++ /dev/null @@ -1,103 +0,0 @@ -/* BERReader.java -- basic encoding rules (BER) reader. - 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.java.security.ber; - -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; - -import java.io.EOFException; -import java.io.IOException; -import java.io.InputStream; - -public class BERReader extends DERReader implements BER -{ - - /** - * Create a new DER reader from a byte array. - * - * @param in The encoded bytes. - */ - public BERReader(byte[] in) - { - super(in); - } - - public BERReader (byte[] in, int off, int len) - { - super(in, off, len); - } - - /** - * Create a new DER readed from an input stream. - * - * @param in The encoded bytes. - */ - public BERReader(InputStream in) - { - super(in); - } - - public DERValue read() throws IOException - { - in.mark(2); - int tag = in.read(); - if (tag == -1) - throw new EOFException(); - int length = in.read(); - if (length == 0) - { - if (tag == 0) - return END_OF_SEQUENCE; - return new BERValue(tag, CONSTRUCTED_VALUE, new byte[] { (byte) tag, 0 }); - } - else - { - in.reset(); - return super.read(); - } - } - - public int peek() throws IOException - { - in.mark(1); - int ret = in.read(); - in.reset(); - return ret; - } -} diff --git a/libjava/gnu/java/security/ber/BERValue.java b/libjava/gnu/java/security/ber/BERValue.java deleted file mode 100644 index aeaef39bf2b..00000000000 --- a/libjava/gnu/java/security/ber/BERValue.java +++ /dev/null @@ -1,82 +0,0 @@ -/* BERReader.java -- basic encoding rules (BER) value. - 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.java.security.ber; - -import gnu.java.security.der.DERValue; - -public class BERValue extends DERValue -{ - - private boolean indefinite; - - public BERValue(int tag, Object value, byte[] encoded) - { - super(tag, 0, value, encoded); - indefinite = true; - } - - public BERValue(int tag, int length, Object value, byte[] encoded) - { - super(tag, length, value, encoded); - } - - public BERValue(int tag, Object value) - { - super(tag, 0, value, null); - } - - public static boolean isIndefinite(DERValue value) - { - if (value instanceof BERValue) - return ((BERValue) value).getIndefinite(); - return false; - } - - public boolean getIndefinite() - { - return indefinite; - } - - public int getLength() - { - if (indefinite) - return 0; - return super.getLength(); - } -} diff --git a/libjava/gnu/java/security/der/BitString.java b/libjava/gnu/java/security/der/BitString.java deleted file mode 100644 index b88b14541b6..00000000000 --- a/libjava/gnu/java/security/der/BitString.java +++ /dev/null @@ -1,317 +0,0 @@ -/* BitString.java -- Java representation of the BIT STRING type. - 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., 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.java.security.der; - -import java.math.BigInteger; -import java.util.Arrays; - -/** - * Immutable representation of a bit string, which is equivalent to a - * byte array except some number of the rightmost bits are ignored. For - * example, this could be the bit string: - * - *
   00010101 11101101 11010xxx
- * - *

Where the "xxx" represents three bits that should be ignored, and - * can have any value. - * - * @author Casey Marshall (csm@gnu.org) - */ -public class BitString implements Cloneable, Comparable -{ - - // Fields. - // ------------------------------------------------------------------------ - - /** The bits themselves. */ - private final byte[] bytes; - - /** - * The exportable byte array. This array has the ignored bits - * removed. - */ - private transient byte[] externBytes; - - /** The number of bits ignored at the end of the byte array. */ - private final int ignoredBits; - - /** This bit string as a boolean array. */ - private transient boolean[] boolVal; - - // Constructors. - // ------------------------------------------------------------------------ - - /** - * Create a new bit string, shifting the given byte array if needed. - * - * @param bytes The byte array holding the bit string. - * @param ignoredBits The number of bits to ignore. - * @param doShift Pass true in this parameter if the byte array has - * not yet been shifted left by ignoredBits. - * @throws IllegalArgumentException If ignoredBits is negative - * or greater than 7. - * @throws NullPointerException If bytes is null. - */ - public BitString(byte[] bytes, int ignoredBits, boolean doShift) - { - this(bytes, 0, bytes.length, ignoredBits, doShift); - } - - /** - * Create a new bit string, shifting the given byte array if needed. - * - * @param bytes The byte array holding the bit string. - * @param offset The offset where the meaningful bytes begin. - * @param length The number of meaningful bytes. - * @param ignoredBits The number of bits to ignore. - * @param doShift Pass true in this parameter if the byte array has - * not yet been shifted left by ignoredBits. - * @throws IllegalArgumentException If ignoredBits is negative - * or greater than 7. - * @throws NullPointerException If bytes is null. - */ - public BitString(byte[] bytes, int offset, int length, - int ignoredBits, boolean doShift) - { - if (ignoredBits < 0 || ignoredBits > 7) - throw new IllegalArgumentException(); - if (bytes == null) - throw new NullPointerException(); - if (doShift && ignoredBits > 0) - { - this.externBytes = new byte[length]; - System.arraycopy(bytes, offset, externBytes, 0, length); - this.bytes = new BigInteger(externBytes).shiftLeft(ignoredBits) - .toByteArray(); - } - else - { - this.bytes = new byte[length]; - System.arraycopy(bytes, offset, this.bytes, 0, length); - } - this.ignoredBits = ignoredBits; - } - - /** - * Create a new bit string. - * - * @param bytes The byte array holding the bit string. - * @param offset The offset where the meaningful bytes begin. - * @param length The number of meaningful bytes. - * @param ignoredBits The number of bits to ignore. - * @throws IllegalArgumentException If ignoredBits is negative - * or greater than 7. - * @throws NullPointerException If bytes is null. - */ - public BitString(byte[] bytes, int offset, int length, int ignoredBits) - { - this(bytes, offset, length, ignoredBits, false); - } - - /** - * Create a new bit string. - * - * @param bytes The byte array holding the bit string. - * @param ignoredBits The number of bits to ignore. - * @throws IllegalArgumentException If ignoredBits is negative - * or greater than 7. - * @throws NullPointerException If bytes is null. - */ - public BitString(byte[] bytes, int ignoredBits) - { - this(bytes, 0, bytes.length, ignoredBits, false); - } - - /** - * Create a new bit string. - * - * @param bytes The byte array holding the bit string. - * @param offset The offset where the meaningful bytes begin. - * @param length The number of meaningful bytes. - * @throws NullPointerException If bytes is null. - */ - public BitString(byte[] bytes, int offset, int length) - { - this(bytes, offset, length, 0, false); - } - - /** - * Create a new bit string. - * - * @param bytes The byte array holding the bit string. - * @throws NullPointerException If bytes is null. - */ - public BitString(byte[] bytes) - { - this(bytes, 0, bytes.length, 0, false); - } - - // Instance methods. - // ------------------------------------------------------------------------ - - /** - * Return this bit string as a byte array, with the ignored bits - * trimmed off. The byte array is cloned every time this method is - * called to prevent modification. - * - * @return The trimmed byte array. - */ - public byte[] toByteArray() - { - if (ignoredBits == 0) - return (byte[]) bytes.clone(); - if (externBytes == null) - externBytes = new BigInteger(bytes).shiftRight(ignoredBits).toByteArray(); - return (byte[]) externBytes.clone(); - } - - /** - * Returns this bit string as a byte array, with the ignored bits - * present. The byte array is cloned every time this method is - * called to prevent modification. - * - * @return The byte array. - */ - public byte[] getShiftedByteArray() - { - return (byte[]) bytes.clone(); - } - - /** - * Returns the number of ignored bits. - * - * @return The number of ignored bits. - */ - public int getIgnoredBits() - { - return ignoredBits; - } - - /** - * Returns the size, in bits, of this bit string. - * - * @return The size of this bit string. - */ - public int size() - { - return (bytes.length << 3) - ignoredBits; - } - - /** - * Return this bit string as a boolean array. The value returned is of - * size {@link #size()}, and each true value - * corresponding to each "1" in this bit string. The boolean array is - * cloned before it is returned. - * - * @return The boolean array. - */ - public boolean[] toBooleanArray() - { - if (boolVal == null) - { - boolVal = new boolean[size()]; - for (int i = 0, j = 7, k = 0; i < boolVal.length; i++) - { - boolVal[i] = (bytes[k] & 1 << j--) != 0; - if (j < 0) - { - j = 7; - k++; - } - } - } - return (boolean[]) boolVal.clone(); - } - - public Object clone() - { - try - { - return super.clone(); - } - catch (CloneNotSupportedException cce) - { - throw new InternalError(cce.getMessage()); - } - } - - public int compareTo(Object o) - { - BitString that = (BitString) o; - if (this.equals(that)) - return 0; - if (this.bytes.length != that.bytes.length) - return (this.bytes.length < that.bytes.length) ? -1 : 1; - if (this.ignoredBits != that.ignoredBits) - return (this.ignoredBits < that.ignoredBits) ? -1 : 1; - for (int i = 0; i < this.bytes.length; i++) - if (this.bytes[i] != that.bytes[i]) - return (this.bytes[i] < that.bytes[i]) ? -1 : 1; - return 0; // not reached. - } - - public boolean equals(Object o) - { - if (!(o instanceof BitString)) - return false; - BitString that = (BitString) o; - // True for cloned instances. - if (this.bytes == that.bytes && this.ignoredBits == that.ignoredBits) - return true; - if (this.ignoredBits == that.ignoredBits) - return Arrays.equals(this.bytes, that.bytes); - return false; - } - - public String toString() - { - StringBuffer sb = new StringBuffer(); - for (int i = 0, j = 7, k = 0; i < size(); i++) - { - sb.append((bytes[k] & 1 << j) != 0 ? "1" : "0"); - j--; - if (j < 0) - { - j = 7; - k++; - } - } - return sb.toString(); - } -} diff --git a/libjava/gnu/java/security/der/DER.java b/libjava/gnu/java/security/der/DER.java deleted file mode 100644 index a7eb4a6895e..00000000000 --- a/libjava/gnu/java/security/der/DER.java +++ /dev/null @@ -1,86 +0,0 @@ -/* DER.java -- Basic constants in DER sequences. - 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., 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.java.security.der; - -/** - * The set of tags for DER types. - * - * @author Casey Marshall (csm@gnu.org) - */ -public interface DER -{ - int UNIVERSAL = 0x00; - int APPLICATION = 0x40; - int CONTEXT = 0x80; - int PRIVATE = 0xC0; - - int CONSTRUCTED = 0x20; - - int ANY = 0x00; - int BOOLEAN = 0x01; - int INTEGER = 0x02; - int BIT_STRING = 0x03; - int OCTET_STRING = 0x04; - int NULL = 0x05; - int OBJECT_IDENTIFIER = 0x06; - int REAL = 0x09; - int ENUMERATED = 0x0a; - int RELATIVE_OID = 0x0d; - - int SEQUENCE = 0x10; - int SET = 0x11; - - Object CONSTRUCTED_VALUE = new Object(); - - int NUMERIC_STRING = 0x12; - int PRINTABLE_STRING = 0x13; - int T61_STRING = 0x14; - int VIDEOTEX_STRING = 0x15; - int IA5_STRING = 0x16; - int GRAPHIC_STRING = 0x19; - int ISO646_STRING = 0x1A; - int GENERAL_STRING = 0x1B; - - int UTF8_STRING = 0x0C; - int UNIVERSAL_STRING = 0x1C; - int BMP_STRING = 0x1E; - - int UTC_TIME = 0x17; - int GENERALIZED_TIME = 0x18; -} diff --git a/libjava/gnu/java/security/der/DEREncodingException.java b/libjava/gnu/java/security/der/DEREncodingException.java deleted file mode 100644 index 90042a3fc54..00000000000 --- a/libjava/gnu/java/security/der/DEREncodingException.java +++ /dev/null @@ -1,54 +0,0 @@ -/* DEREncodingException.java --- DER Encoding Exception - Copyright (C) 1999,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., 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.java.security.der; - -import java.io.IOException; - -public class DEREncodingException extends IOException -{ - public DEREncodingException() - { - super (); - } - - public DEREncodingException (String msg) - { - super (msg); - } -} diff --git a/libjava/gnu/java/security/der/DERReader.java b/libjava/gnu/java/security/der/DERReader.java deleted file mode 100644 index cb07f14325f..00000000000 --- a/libjava/gnu/java/security/der/DERReader.java +++ /dev/null @@ -1,437 +0,0 @@ -/* DERReader.java -- parses ASN.1 DER sequences - 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., 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.java.security.der; - -import gnu.java.security.OID; - -import java.io.BufferedInputStream; -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.EOFException; -import java.io.IOException; -import java.io.InputStream; -import java.math.BigInteger; -import java.util.Calendar; -import java.util.Date; -import java.util.TimeZone; - -/** - * This class decodes DER sequences into Java objects. The methods of - * this class do not have knowledge of higher-levels of structure in the - * DER stream -- such as ASN.1 constructions -- and it is therefore up - * to the calling application to determine if the data are structured - * properly by inspecting the {@link DERValue} that is returned. - * - * @author Casey Marshall (csm@gnu.org) - */ -public class DERReader implements DER -{ - - // Fields. - // ------------------------------------------------------------------------ - - protected InputStream in; - - protected final ByteArrayOutputStream encBuf; - - // Constructor. - // ------------------------------------------------------------------------ - - /** - * Create a new DER reader from a byte array. - * - * @param in The encoded bytes. - */ - public DERReader(byte[] in) - { - this(new ByteArrayInputStream(in)); - } - - public DERReader (byte[] in, int off, int len) - { - this (new ByteArrayInputStream (in, off, len)); - } - - /** - * Create a new DER readed from an input stream. - * - * @param in The encoded bytes. - */ - public DERReader(InputStream in) - { - if (!in.markSupported()) - this.in = new BufferedInputStream(in, 16384); - else - this.in = in; - encBuf = new ByteArrayOutputStream(2048); - } - - // Class methods. - // ------------------------------------------------------------------------ - - /** - * Convenience method for reading a single primitive value from the - * given byte array. - * - * @param encoded The encoded bytes. - * @throws IOException If the bytes do not represent an encoded - * object. - */ - public static DERValue read(byte[] encoded) throws IOException - { - return new DERReader(encoded).read(); - } - - // Instance methods. - // ------------------------------------------------------------------------ - - public void skip (int bytes) throws IOException - { - in.skip (bytes); - } - - /** - * Decode a single value from the input stream, returning it in a new - * {@link DERValue}. By "single value" we mean any single type in its - * entirety -- including constructed types such as SEQUENCE and all - * the values they contain. Usually it is sufficient to call this - * method once to parse and return the top-level structure, then to - * inspect the returned value for the proper contents. - * - * @return The parsed DER structure. - * @throws IOException If an error occurs reading from the input - * stream. - * @throws DEREncodingException If the input does not represent a - * valid DER stream. - */ - public DERValue read() throws IOException - { - int tag = in.read(); - if (tag == -1) - throw new EOFException(); - encBuf.write(tag); - int len = readLength(); - DERValue value = null; - if ((tag & CONSTRUCTED) == CONSTRUCTED) - { - in.mark(2048); - byte[] encoded = new byte[len]; - in.read(encoded); - encBuf.write(encoded); - value = new DERValue(tag, len, CONSTRUCTED_VALUE, encBuf.toByteArray()); - in.reset(); - encBuf.reset(); - return value; - } - switch (tag & 0xC0) - { - case UNIVERSAL: - value = new DERValue(tag, len, readUniversal(tag, len), - encBuf.toByteArray()); - encBuf.reset(); - break; - case CONTEXT: - byte[] encoded = new byte[len]; - in.read(encoded); - encBuf.write(encoded); - value = new DERValue(tag, len, encoded, encBuf.toByteArray()); - encBuf.reset(); - break; - case APPLICATION: - // This should not be reached, since (I think) APPLICATION is - // always constructed. - throw new DEREncodingException("non-constructed APPLICATION data"); - default: - throw new DEREncodingException("PRIVATE class not supported"); - } - return value; - } - - protected int readLength() throws IOException - { - int i = in.read(); - if (i == -1) - throw new EOFException(); - encBuf.write(i); - if ((i & ~0x7F) == 0) - { - return i; - } - else if (i < 0xFF) - { - byte[] octets = new byte[i & 0x7F]; - in.read(octets); - encBuf.write(octets); - return new BigInteger(1, octets).intValue(); - } - throw new DEREncodingException(); - } - - // Own methods. - // ------------------------------------------------------------------------ - - private Object readUniversal(int tag, int len) throws IOException - { - byte[] value = new byte[len]; - in.read(value); - encBuf.write(value); - switch (tag & 0x1F) - { - case BOOLEAN: - if (value.length != 1) - throw new DEREncodingException(); - return Boolean.valueOf(value[0] != 0); - case NULL: - if (len != 0) - throw new DEREncodingException(); - return null; - case INTEGER: - case ENUMERATED: - return new BigInteger(value); - case BIT_STRING: - byte[] bits = new byte[len - 1]; - System.arraycopy(value, 1, bits, 0, bits.length); - return new BitString(bits, value[0] & 0xFF); - case OCTET_STRING: - return value; - case NUMERIC_STRING: - case PRINTABLE_STRING: - case T61_STRING: - case VIDEOTEX_STRING: - case IA5_STRING: - case GRAPHIC_STRING: - case ISO646_STRING: - case GENERAL_STRING: - case UNIVERSAL_STRING: - case BMP_STRING: - case UTF8_STRING: - return makeString(tag, value); - case UTC_TIME: - case GENERALIZED_TIME: - return makeTime(tag, value); - case OBJECT_IDENTIFIER: - return new OID(value); - case RELATIVE_OID: - return new OID(value, true); - default: - throw new DEREncodingException("unknown tag " + tag); - } - } - - private static String makeString(int tag, byte[] value) - throws IOException - { - switch (tag & 0x1F) - { - case NUMERIC_STRING: - case PRINTABLE_STRING: - case T61_STRING: - case VIDEOTEX_STRING: - case IA5_STRING: - case GRAPHIC_STRING: - case ISO646_STRING: - case GENERAL_STRING: - return fromIso88591(value); - - case UNIVERSAL_STRING: - // XXX The docs say UniversalString is encoded in four bytes - // per character, but Java has no support (yet) for UTF-32. - //return new String(buf, "UTF-32"); - case BMP_STRING: - return fromUtf16Be(value); - - case UTF8_STRING: - return fromUtf8(value); - - default: - throw new DEREncodingException("unknown string tag"); - } - } - - private static String fromIso88591(byte[] bytes) - { - StringBuffer str = new StringBuffer(bytes.length); - for (int i = 0; i < bytes.length; i++) - str.append((char) (bytes[i] & 0xFF)); - return str.toString(); - } - - private static String fromUtf16Be(byte[] bytes) throws IOException - { - if ((bytes.length & 0x01) != 0) - throw new IOException("UTF-16 bytes are odd in length"); - StringBuffer str = new StringBuffer(bytes.length / 2); - for (int i = 0; i < bytes.length; i += 2) - { - char c = (char) ((bytes[i] << 8) & 0xFF); - c |= (char) (bytes[i+1] & 0xFF); - str.append(c); - } - return str.toString(); - } - - private static String fromUtf8(byte[] bytes) throws IOException - { - StringBuffer str = new StringBuffer((int)(bytes.length / 1.5)); - for (int i = 0; i < bytes.length; ) - { - char c = 0; - if ((bytes[i] & 0xE0) == 0xE0) - { - if ((i + 2) >= bytes.length) - throw new IOException("short UTF-8 input"); - c = (char) ((bytes[i++] & 0x0F) << 12); - if ((bytes[i] & 0x80) != 0x80) - throw new IOException("malformed UTF-8 input"); - c |= (char) ((bytes[i++] & 0x3F) << 6); - if ((bytes[i] & 0x80) != 0x80) - throw new IOException("malformed UTF-8 input"); - c |= (char) (bytes[i++] & 0x3F); - } - else if ((bytes[i] & 0xC0) == 0xC0) - { - if ((i + 1) >= bytes.length) - throw new IOException("short input"); - c = (char) ((bytes[i++] & 0x1F) << 6); - if ((bytes[i] & 0x80) != 0x80) - throw new IOException("malformed UTF-8 input"); - c |= (char) (bytes[i++] & 0x3F); - } - else if ((bytes[i] & 0xFF) < 0x80) - { - c = (char) (bytes[i++] & 0xFF); - } - else - throw new IOException("badly formed UTF-8 sequence"); - str.append(c); - } - return str.toString(); - } - - private Date makeTime(int tag, byte[] value) throws IOException - { - Calendar calendar = Calendar.getInstance(); - String str = makeString(PRINTABLE_STRING, value); - - // Classpath's SimpleDateFormat does not work for parsing these - // types of times, so we do this by hand. - String date = str; - String tz = ""; - if (str.indexOf("+") > 0) - { - date = str.substring(0, str.indexOf("+")); - tz = str.substring(str.indexOf("+")); - } - else if (str.indexOf("-") > 0) - { - date = str.substring(0, str.indexOf("-")); - tz = str.substring(str.indexOf("-")); - } - else if (str.endsWith("Z")) - { - date = str.substring(0, str.length()-2); - tz = "Z"; - } - if (!tz.equals("Z") && tz.length() > 0) - calendar.setTimeZone(TimeZone.getTimeZone(tz)); - else - calendar.setTimeZone(TimeZone.getTimeZone("UTC")); - if ((tag & 0x1F) == UTC_TIME) - { - if (date.length() < 10) // must be at least 10 chars long - throw new DEREncodingException("cannot parse date"); - // UTCTime is of the form "yyMMddHHmm[ss](Z|(+|-)hhmm)" - try - { - int year = Integer.parseInt(str.substring(0, 2)); - if (year < 50) - year += 2000; - else - year += 1900; - calendar.set(year, - Integer.parseInt(str.substring( 2, 4))-1, // month - Integer.parseInt(str.substring( 4, 6)), // day - Integer.parseInt(str.substring( 6, 8)), // hour - Integer.parseInt(str.substring( 8, 10))); // minute - if (date.length() == 12); - calendar.set(Calendar.SECOND, - Integer.parseInt(str.substring(10, 12))); - } - catch (NumberFormatException nfe) - { - throw new DEREncodingException("cannot parse date"); - } - } - else - { - if (date.length() < 10) // must be at least 10 chars long - throw new DEREncodingException("cannot parse date"); - // GeneralTime is of the form "yyyyMMddHH[mm[ss[(.|,)SSSS]]]" - // followed by "Z" or "(+|-)hh[mm]" - try - { - calendar.set( - Integer.parseInt(date.substring(0, 4)), // year - Integer.parseInt(date.substring(4, 6))-1, // month - Integer.parseInt(date.substring(6, 8)), // day - Integer.parseInt(date.substring(8, 10)), 0); // hour, min - switch (date.length()) - { - case 19: - case 18: - case 17: - case 16: - calendar.set(Calendar.MILLISECOND, - Integer.parseInt(date.substring(15))); - case 14: - calendar.set(Calendar.SECOND, - Integer.parseInt(date.substring(12, 14))); - case 12: - calendar.set(Calendar.MINUTE, - Integer.parseInt(date.substring(10, 12))); - } - } - catch (NumberFormatException nfe) - { - throw new DEREncodingException("cannot parse date"); - } - } - return calendar.getTime(); - } -} diff --git a/libjava/gnu/java/security/der/DERValue.java b/libjava/gnu/java/security/der/DERValue.java deleted file mode 100644 index 9a597d724cc..00000000000 --- a/libjava/gnu/java/security/der/DERValue.java +++ /dev/null @@ -1,170 +0,0 @@ -/* DERValue.java -- a value read or written to a DER encoding. - 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., 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.java.security.der; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; - -public class DERValue implements DER -{ - - // Fields. - // ------------------------------------------------------------------------ - - private final int tagClass; - private final boolean constructed; - private final int tag; - private int length; - private final Object value; - private byte[] encoded; - - // Constructor. - // ------------------------------------------------------------------------ - - public DERValue(int tag, int length, Object value, byte[] encoded) - { - tagClass = tag & 0xC0; - this.tag = tag & 0x1F; - constructed = (tag & CONSTRUCTED) == CONSTRUCTED; - this.length = length; - this.value = value; - if (encoded != null) - this.encoded = (byte[]) encoded.clone(); - } - - public DERValue(int tag, Object value) - { - this(tag, 0, value, null); - } - - // Instance methods. - // ------------------------------------------------------------------------ - - public int getExternalTag() - { - return tagClass | tag | (constructed ? 0x20 : 0x00); - } - - public int getTag() - { - return tag; - } - - public int getTagClass() - { - return tagClass; - } - - public boolean isConstructed() - { - return constructed; - } - - public int getLength() - { - if (encoded == null) - { - try - { - ByteArrayOutputStream out = new ByteArrayOutputStream(); - length = DERWriter.write(out, this); - encoded = out.toByteArray(); - } - catch (IOException ioe) - { - encoded = new byte[0]; - } - } - return length; - } - - public Object getValue() - { - return value; - } - - public Object getValueAs (final int derType) throws IOException - { - byte[] encoded = getEncoded (); - encoded[0] = (byte) derType; - return DERReader.read (encoded).getValue (); - } - - public byte[] getEncoded() - { - if (encoded == null) - { - try - { - ByteArrayOutputStream out = new ByteArrayOutputStream(); - length = DERWriter.write(out, this); - encoded = out.toByteArray(); - } - catch (IOException ioe) - { - encoded = new byte[0]; - } - } - return (byte[]) encoded.clone(); - } - - public int getEncodedLength() - { - if (encoded == null) - { - try - { - ByteArrayOutputStream out = new ByteArrayOutputStream(); - length = DERWriter.write(out, this); - encoded = out.toByteArray(); - } - catch (IOException ioe) - { - encoded = new byte[0]; - } - } - return encoded.length; - } - - public String toString() - { - return "DERValue [ tag=" + tag + ", class=" + tagClass + ", constructed=" - + constructed + ", value=" + value + " ]"; - } -} diff --git a/libjava/gnu/java/security/der/DERWriter.java b/libjava/gnu/java/security/der/DERWriter.java deleted file mode 100644 index 78524fc949f..00000000000 --- a/libjava/gnu/java/security/der/DERWriter.java +++ /dev/null @@ -1,349 +0,0 @@ -/* DERWriter.java -- write Java types in DER format. - Copyright (C) 2003, 2004, 2005 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.java.security.der; - -import gnu.java.security.OID; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.OutputStream; - -import java.math.BigInteger; - -import java.text.SimpleDateFormat; - -import java.util.Date; -import java.util.Iterator; -import java.util.List; -import java.util.Set; -import java.util.TimeZone; - -/** - * Methods that allow various Java types to be written as a DER - * (Distinguished Encoding Rules) stream to the specified output stream. - * DER is used to encode ASN.1 constructions, but this class provides no - * methods for interacting with ASN.1. Rather, callers should construct - * their output objects properly for whatever ASN.1 construct is being - * output. - * - *

This class only defines static methods; there are no instance - * variables needed. - * - * @author Casey Marshall (csm@gnu.org) - */ -public class DERWriter implements DER -{ - - // Constructors. - // ------------------------------------------------------------------------ - - /** This class only has static methods. */ - private DERWriter() - { - } - - // Class methods. - // ------------------------------------------------------------------------ - - public static int write(OutputStream out, DERValue object) - throws IOException - { - out.write(object.getExternalTag()); - Object value = object.getValue(); - if (value == null) - { - writeLength(out, 0); - return 0; - } - if (value instanceof Boolean) - return writeBoolean(out, (Boolean) value); - else if (value instanceof BigInteger) - return writeInteger(out, (BigInteger) value); - else if (value instanceof Date) - return writeDate(out, object.getExternalTag(), (Date) value); - else if (value instanceof String) - return writeString(out, object.getExternalTag(), (String) value); - else if (value instanceof List) - return writeSequence(out, (List) value); - else if (value instanceof Set) - return writeSet(out, (Set) value); - else if (value instanceof BitString) - return writeBitString(out, (BitString) value); - else if (value instanceof OID) - return writeOID(out, (OID) value); - else if (value instanceof byte[]) - { - writeLength(out, ((byte[]) value).length); - out.write((byte[]) value); - return ((byte[]) value).length; - } - else if (value instanceof DERValue) - { - ByteArrayOutputStream bout = new ByteArrayOutputStream(); - write(bout, (DERValue) value); - byte[] buf = bout.toByteArray(); - writeLength(out, buf.length); - out.write(buf); - return buf.length; - } - else - throw new DEREncodingException("cannot encode " + value.getClass().getName()); - } - - public static int definiteEncodingSize(int length) - { - if (length < 128) - return 1; - else if (length < 256) - return 2; - else if (length < 65536) - return 3; - else if (length < 16777216) - return 4; - else - return 5; - } - - // Own methods. - // ------------------------------------------------------------------------ - - /** - * Write a BOOLEAN type to the given output stream. - * - * @param out The sink output stream. - * @param b The boolean value to write. - */ - private static int writeBoolean(OutputStream out, Boolean b) - throws IOException - { - writeLength(out, 1); - if (b.booleanValue()) - out.write(0xFF); - else - out.write(0); - return 1; - } - - /** - * Write an INTEGER type to the given output stream. - * - * @param out The sink output stream. - * @param integer The integer to write. - */ - private static int writeInteger(OutputStream out, BigInteger integer) - throws IOException - { - byte[] bytes = integer.toByteArray(); - writeLength(out, bytes.length); - out.write(bytes); - return bytes.length; - } - - private static int writeSequence(OutputStream out, List sequence) - throws IOException - { - ByteArrayOutputStream bout = new ByteArrayOutputStream(); - for (Iterator i = sequence.iterator(); i.hasNext(); ) - { - write(bout, (DERValue) i.next()); - } - byte[] buf = bout.toByteArray(); - writeLength(out, buf.length); - out.write(buf); - return buf.length; - } - - private static int writeSet(OutputStream out, Set set) - throws IOException - { - ByteArrayOutputStream bout = new ByteArrayOutputStream(); - for (Iterator i = set.iterator(); i.hasNext(); ) - { - write(bout, (DERValue) i.next()); - } - byte[] buf = bout.toByteArray(); - writeLength(out, buf.length); - out.write(buf); - return buf.length; - } - - private static int writeOID(OutputStream out, OID oid) - throws IOException - { - byte[] der = oid.getDER(); - writeLength(out, der.length); - out.write(der); - return der.length; - } - - private static int writeBitString(OutputStream out, BitString bs) - throws IOException - { - byte[] buf = bs.getShiftedByteArray(); - out.write(buf.length + 1); - out.write(bs.getIgnoredBits()); - out.write(buf); - return buf.length; - } - - private static int writeString(OutputStream out, int tag, String str) - throws IOException - { - byte[] b = null; - switch (tag & 0x1F) - { - case NUMERIC_STRING: - case PRINTABLE_STRING: - case T61_STRING: - case VIDEOTEX_STRING: - case IA5_STRING: - case GRAPHIC_STRING: - case ISO646_STRING: - case GENERAL_STRING: - b = toIso88591(str); - break; - - case UNIVERSAL_STRING: - case BMP_STRING: - b = toUtf16Be(str); - break; - - case UTF8_STRING: - default: - b = toUtf8(str); - break; - } - writeLength(out, b.length); - out.write(b); - return b.length; - } - - private static byte[] toIso88591(String string) - { - byte[] result = new byte[string.length()]; - for (int i = 0; i < string.length(); i++) - result[i] = (byte) string.charAt(i); - return result; - } - - private static byte[] toUtf16Be(String string) - { - byte[] result = new byte[string.length() * 2]; - for (int i = 0; i < string.length(); i++) - { - result[i*2 ] = (byte) ((string.charAt(i) >>> 8) & 0xFF); - result[i*2+1] = (byte) (string.charAt(i) & 0xFF); - } - return result; - } - - private static byte[] toUtf8(String string) - { - ByteArrayOutputStream buf = - new ByteArrayOutputStream((int)(string.length() * 1.5)); - for (int i = 0; i < string.length(); i++) - { - char c = string.charAt(i); - if (c < 0x0080) - buf.write(c & 0xFF); - else if (c < 0x0800) - { - buf.write(0xC0 | ((c >>> 6) & 0x3F)); - buf.write(0x80 | (c & 0x3F)); - } - else - { - buf.write(0xE0 | ((c >>> 12) & 0x0F)); - buf.write(0x80 | ((c >>> 6) & 0x3F)); - buf.write(0x80 | (c & 0x3F)); - } - } - return buf.toByteArray(); - } - - private static int writeDate(OutputStream out, int tag, Date date) - throws IOException - { - SimpleDateFormat sdf = null; - if ((tag & 0x1F) == UTC_TIME) - sdf = new SimpleDateFormat("yyMMddHHmmss'Z'"); - else - sdf = new SimpleDateFormat("yyyyMMddHHmmss'.'SSS'Z'"); - sdf.setTimeZone(TimeZone.getTimeZone("UTC")); - byte[] b = sdf.format(date).getBytes("ISO-8859-1"); - writeLength(out, b.length); - out.write(b); - return b.length; - } - - // Package method. - // ------------------------------------------------------------------------ - - static void writeLength(OutputStream out, int len) throws IOException - { - if (len < 128) - out.write(len); - else if (len < 256) - { - out.write(0x81); - out.write(len); - } - else if (len < 65536) - { - out.write(0x82); - out.write(len >> 8); - out.write(len); - } - else if (len < 16777216) - { - out.write(0x83); - out.write(len >> 16); - out.write(len >> 8); - out.write(len); - } - else - { - out.write(0x84); - out.write(len >> 24); - out.write(len >> 16); - out.write(len >> 8); - out.write(len); - } - } -} diff --git a/libjava/gnu/java/security/pkcs/PKCS7SignedData.java b/libjava/gnu/java/security/pkcs/PKCS7SignedData.java deleted file mode 100644 index ba5efc7222f..00000000000 --- a/libjava/gnu/java/security/pkcs/PKCS7SignedData.java +++ /dev/null @@ -1,364 +0,0 @@ -/* PKCS7SignedData.java -- reader for PKCS#7 signedData objects - Copyright (C) 2004, 2005 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.java.security.pkcs; - -import gnu.java.security.OID; -import gnu.java.security.ber.BER; -import gnu.java.security.ber.BEREncodingException; -import gnu.java.security.ber.BERReader; -import gnu.java.security.ber.BERValue; -import gnu.java.security.der.DERValue; - -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; - -import java.math.BigInteger; - -import java.security.cert.CRL; -import java.security.cert.CRLException; -import java.security.cert.Certificate; -import java.security.cert.CertificateException; -import java.security.cert.CertificateFactory; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashSet; -import java.util.Iterator; -import java.util.LinkedList; -import java.util.List; -import java.util.Set; - -/** - * The SignedData object in PKCS #7. This is a read-only implementation of - * this format, and is used to provide signed Jar file support. - * - * @author Casey Marshall (csm@gnu.org) - */ -public class PKCS7SignedData -{ - - public static final OID PKCS7_DATA = new OID("1.2.840.113549.1.7.1"); - public static final OID PKCS7_SIGNED_DATA = new OID("1.2.840.113549.1.7.2"); - - private BigInteger version; - private Set digestAlgorithms; - private OID contentType; - private byte[] content; - private Certificate[] certificates; - private CRL[] crls; - private Set signerInfos; - - private static final boolean DEBUG = false; - private static void debug(String msg) - { - System.err.print("PKCS7SignedData >> "); - System.err.println(msg); - } - - public PKCS7SignedData(InputStream in) - throws CRLException, CertificateException, IOException - { - this(new BERReader(in)); - } - - /** - * Parse an encoded PKCS#7 SignedData object. The ASN.1 format of this - * object is: - * - *

-   * SignedData ::= SEQUENCE {
-   *   version Version,
-   *   digestAlgorithms DigestAlgorithmIdentifiers,
-   *   contentInfo ContentInfo,
-   *   certificates
-   *     [0] IMPLICIT ExtendedCertificatesAndCertificates OPTIONAL,
-   *   crls
-   *     [1] IMPLICIT CertificateRevocationLists OPTIONAL,
-   *   signerInfos SignerInfos }
-   *
-   * Version ::= INTEGER
-   *
-   * DigestAlgorithmIdentifiers ::= SET OF DigestAlgorithmIdentifier
-   *
-   * DigestAlgorithmIdentifier ::= AlgorithmIdentifier
-   *
-   * ContentInfo ::= SEQUENCE {
-   *   contentType ContentType,
-   *   content [0] EXPLICIT ANY DEFINED BY contentType OPTIONAL }
-   *
-   * ContentType ::= OBJECT IDENTIFIER
-   *
-   * ExtendedCertificatesAndCertificates ::=
-   *   SET OF ExtendedCertificatesAndCertificate
-   *
-   * ExtendedCertificatesAndCertificate ::= CHOICE {
-   *   certificate Certificate, -- from X.509
-   *   extendedCertificate [0] IMPLICIT ExtendedCertificate }
-   *
-   * CertificateRevocationLists ::= SET OF CertificateRevocationList
-   *   -- from X.509
-   *
-   * SignerInfos ::= SET OF SignerInfo
-   *
-   * SignerInfo ::= SEQUENCE {
-   *   version Version,
-   *   issuerAndSerialNumber IssuerAndSerialNumber,
-   *   digestAlgorithm DigestAlgorithmIdentifier,
-   *   authenticatedAttributes
-   *     [0] IMPLICIT Attributes OPTIONAL,
-   *   digestEncryptionAlgorithm DigestEncryptionAlgorithmIdentifier,
-   *   encryptedDigest EncryptedDigest,
-   *   unauthenticatedAttributes
-   *     [1] IMPLICIT Attributes OPTIONAL }
-   *
-   * EncryptedDigest ::= OCTET STRING
-   * 
- * - *

(Readers who are confused as to why it takes 40 levels of indirection - * to specify "data with a signature", rest assured that the present author - * is as confused as you are).

- */ - public PKCS7SignedData(BERReader ber) - throws CRLException, CertificateException, IOException - { - CertificateFactory x509 = CertificateFactory.getInstance("X509"); - DERValue val = ber.read(); - if (!val.isConstructed()) - throw new BEREncodingException("malformed ContentInfo"); - - val = ber.read(); - if (val.getTag() != BER.OBJECT_IDENTIFIER) - throw new BEREncodingException("malformed ContentType"); - - if (!PKCS7_SIGNED_DATA.equals(val.getValue())) - throw new BEREncodingException("content is not SignedData"); - - val = ber.read(); - if (val.getTag() != 0) - throw new BEREncodingException("malformed Content"); - - val = ber.read(); - if (!val.isConstructed()) - throw new BEREncodingException("malformed SignedData"); - - if (DEBUG) - debug("SignedData: " + val); - - val = ber.read(); - if (val.getTag() != BER.INTEGER) - throw new BEREncodingException("expecting Version"); - version = (BigInteger) val.getValue(); - - if (DEBUG) - debug(" Version: " + version); - - digestAlgorithms = new HashSet(); - val = ber.read(); - if (!val.isConstructed()) - throw new BEREncodingException("malformed DigestAlgorithmIdentifiers"); - if (DEBUG) - debug(" DigestAlgorithmIdentifiers: " + val); - int count = 0; - DERValue val2 = ber.read(); - while (val2 != BER.END_OF_SEQUENCE && - (val.getLength() > 0 && val.getLength() > count)) - { - if (!val2.isConstructed()) - throw new BEREncodingException("malformed AlgorithmIdentifier"); - if (DEBUG) - debug(" AlgorithmIdentifier: " + val2); - count += val2.getEncodedLength(); - val2 = ber.read(); - if (val2.getTag() != BER.OBJECT_IDENTIFIER) - throw new BEREncodingException("malformed AlgorithmIdentifier"); - if (DEBUG) - debug(" ID: " + val2.getValue()); - List algId = new ArrayList(2); - algId.add(val2.getValue()); - val2 = ber.read(); - if (val2 != BER.END_OF_SEQUENCE) - { - count += val2.getEncodedLength(); - if (val2.getTag() == BER.NULL) - algId.add(null); - else - algId.add(val2.getEncoded()); - if (DEBUG) - debug(" params: " + new BigInteger(1, val2.getEncoded()).toString(16)); - if (val2.isConstructed()) - ber.skip(val2.getLength()); - if (BERValue.isIndefinite(val)) - val2 = ber.read(); - } - else - algId.add(null); - digestAlgorithms.add(algId); - } - - val = ber.read(); - if (!val.isConstructed()) - throw new BEREncodingException("malformed ContentInfo"); - if (DEBUG) - debug(" ContentInfo: " + val); - val2 = ber.read(); - if (val2.getTag() != BER.OBJECT_IDENTIFIER) - throw new BEREncodingException("malformed ContentType"); - contentType = (OID) val2.getValue(); - if (DEBUG) - debug(" ContentType: " + contentType); - if (BERValue.isIndefinite(val) - || (val.getLength() > 0 && val.getLength() > val2.getEncodedLength())) - { - val2 = ber.read(); - if (val2 != BER.END_OF_SEQUENCE) - { - content = val2.getEncoded(); - if (BERValue.isIndefinite(val)) - val2 = ber.read(); - if (DEBUG) - debug(" Content: " + new BigInteger(1, content).toString(16)); - } - } - - val = ber.read(); - if (val.getTag() == 0) - { - if (!val.isConstructed()) - throw new BEREncodingException("malformed ExtendedCertificatesAndCertificates"); - if (DEBUG) - debug(" ExtendedCertificatesAndCertificates: " + val); - count = 0; - val2 = ber.read(); - List certs = new LinkedList(); - while (val2 != BER.END_OF_SEQUENCE && - (val.getLength() > 0 && val.getLength() > count)) - { - Certificate cert = - x509.generateCertificate(new ByteArrayInputStream(val2.getEncoded())); - if (DEBUG) - debug(" Certificate: " + cert); - certs.add(cert); - count += val2.getEncodedLength(); - ber.skip(val2.getLength()); - if (BERValue.isIndefinite(val) || val.getLength() > count) - val2 = ber.read(); - } - certificates = (Certificate[]) certs.toArray(new Certificate[certs.size()]); - val = ber.read(); - } - - if (val.getTag() == 1) - { - if (!val.isConstructed()) - throw new BEREncodingException("malformed CertificateRevocationLists"); - if (DEBUG) - debug(" CertificateRevocationLists: " + val); - count = 0; - val2 = ber.read(); - List crls = new LinkedList(); - while (val2 != BER.END_OF_SEQUENCE && - (val.getLength() > 0 && val.getLength() > count)) - { - CRL crl = x509.generateCRL(new ByteArrayInputStream(val2.getEncoded())); - if (DEBUG) - debug (" CRL: " + crl); - crls.add(crl); - count += val2.getEncodedLength(); - ber.skip(val2.getLength()); - if (BERValue.isIndefinite(val) || val.getLength() > count) - val2 = ber.read(); - } - this.crls = (CRL[]) crls.toArray(new CRL[crls.size()]); - val = ber.read(); - } - - signerInfos = new HashSet(); - if (!val.isConstructed()) - throw new BEREncodingException("malformed SignerInfos"); - - if (DEBUG) - debug(" SignerInfos: " + val); - - // FIXME read this more carefully. - // Since we are just reading a file (probably) we just read until we - // reach the end. - while (true) - { - int i = ber.peek(); - if (i == 0 || i == -1) - break; - signerInfos.add(new SignerInfo(ber)); - } - } - - public BigInteger getVersion() - { - return version; - } - - public Certificate[] getCertificates() - { - return (certificates != null ? (Certificate[]) certificates.clone() - : null); - } - - public OID getContentType() - { - return contentType; - } - - public byte[] getContent() - { - return (content != null ? (byte[]) content.clone() : null); - } - - public Set getDigestAlgorithms() - { - // FIXME copy contents too, they are mutable!!! - return Collections.unmodifiableSet(digestAlgorithms); - } - - public Set getSignerInfos() - { - Set copy = new HashSet(); - for (Iterator it = signerInfos.iterator(); it.hasNext(); ) - copy.add(it.next()); - return Collections.unmodifiableSet(copy); - } -} diff --git a/libjava/gnu/java/security/pkcs/SignerInfo.java b/libjava/gnu/java/security/pkcs/SignerInfo.java deleted file mode 100644 index c976799bb0c..00000000000 --- a/libjava/gnu/java/security/pkcs/SignerInfo.java +++ /dev/null @@ -1,279 +0,0 @@ -/* SignerInfo.java -- a SignerInfo object, from PKCS #7 - Copyright (C) 2004, 2005 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.java.security.pkcs; - -import gnu.java.security.OID; -import gnu.java.security.ber.BER; -import gnu.java.security.ber.BEREncodingException; -import gnu.java.security.ber.BERReader; -import gnu.java.security.ber.BERValue; -import gnu.java.security.der.DERValue; - -import java.io.IOException; - -import java.math.BigInteger; - -import javax.security.auth.x500.X500Principal; - -public class SignerInfo -{ - private final BigInteger version; - private final BigInteger serialNumber; - private final X500Principal issuer; - private final OID digestAlgorithmId; - private final byte[] digestAlgorithmParams; - private final byte[] authenticatedAttributes; - private final OID digestEncryptionAlgorithmId; - private final byte[] digestEncryptionAlgorithmParams; - private final byte[] encryptedDigest; - private final byte[] unauthenticatedAttributes; - - private static final boolean DEBUG = false; - private static void debug(String msg) - { - System.err.print("SignerInfo >> "); - System.err.println(msg); - } - - /** - * Parse a SignerInfo object. - */ - public SignerInfo(BERReader ber) throws IOException - { - DERValue val = ber.read(); - if (DEBUG) - debug("SignerInfo: " + val); - if (!val.isConstructed()) - throw new BEREncodingException("malformed SignerInfo"); - - val = ber.read(); - if (val.getTag() != BER.INTEGER) - throw new BEREncodingException("malformed Version"); - version = (BigInteger) val.getValue(); - - if (DEBUG) - debug(" Version: " + version); - - val = ber.read(); - if (!val.isConstructed()) - throw new BEREncodingException("malformed IssuerAndSerialNumber"); - - if (DEBUG) - debug(" IssuerAndSerialNumber: " + val); - - val = ber.read(); - if (!val.isConstructed()) - throw new BEREncodingException("malformed Issuer"); - issuer = new X500Principal(val.getEncoded()); - ber.skip(val.getLength()); - if (DEBUG) - debug(" Issuer: " + issuer); - - val = ber.read(); - if (val.getTag() != BER.INTEGER) - throw new BEREncodingException("malformed SerialNumber"); - serialNumber = (BigInteger) val.getValue(); - if (DEBUG) - debug(" SerialNumber: " + serialNumber); - - val = ber.read(); - if (!val.isConstructed()) - throw new BEREncodingException("malformed DigestAlgorithmIdentifier"); - if (DEBUG) - debug(" DigestAlgorithmIdentifier: " + val); - - int count = 0; - DERValue val2 = ber.read(); - if (val2.getTag() != BER.OBJECT_IDENTIFIER) - throw new BEREncodingException("malformed AlgorithmIdentifier"); - digestAlgorithmId = (OID) val2.getValue(); - if (DEBUG) - debug(" OID: " + digestAlgorithmId); - - if (BERValue.isIndefinite(val)) - { - val2 = ber.read(); - if (val2 != BER.END_OF_SEQUENCE) - { - digestAlgorithmParams = val2.getEncoded(); - val2 = ber.read(); - if (val2 != BER.END_OF_SEQUENCE) - throw new BEREncodingException("expecting BER end-of-sequence"); - } - else - digestAlgorithmParams = null; - } - else if (val2.getEncodedLength() < val.getLength()) - { - val2 = ber.read(); - digestAlgorithmParams = val2.getEncoded(); - if (val2.isConstructed()) - ber.skip(val2.getLength()); - } - else - digestAlgorithmParams = null; - if(DEBUG) - debug(" params: " + (digestAlgorithmParams == null ? null - : new BigInteger(digestAlgorithmParams).toString(16))); - - val = ber.read(); - if (val.getTag() == 0) - { - authenticatedAttributes = val.getEncoded(); - val = ber.read(); - if (val.isConstructed()) - ber.skip(val.getLength()); - if (DEBUG) - debug(" AuthenticatedAttributes: " + val); - val = ber.read(); - } - else - authenticatedAttributes = null; - - if (!val.isConstructed()) - throw new BEREncodingException("malformed DigestEncryptionAlgorithmIdentifier"); - if (DEBUG) - debug(" DigestEncryptionAlgorithmIdentifier: " + val); - count = 0; - val2 = ber.read(); - if (val2.getTag() != BER.OBJECT_IDENTIFIER) - throw new BEREncodingException("malformed AlgorithmIdentifier"); - digestEncryptionAlgorithmId = (OID) val2.getValue(); - if (DEBUG) - debug(" OID: " + digestEncryptionAlgorithmId); - - if (BERValue.isIndefinite(val)) - { - val2 = ber.read(); - if (val2 != BER.END_OF_SEQUENCE) - { - digestEncryptionAlgorithmParams = val2.getEncoded(); - val2 = ber.read(); - if (val2 != BER.END_OF_SEQUENCE) - throw new BEREncodingException("expecting BER end-of-sequence"); - } - else - digestEncryptionAlgorithmParams = null; - } - else if (val2.getEncodedLength() < val.getLength()) - { - val2 = ber.read(); - digestEncryptionAlgorithmParams = val2.getEncoded(); - if (val2.isConstructed()) - ber.skip(val2.getLength()); - } - else - digestEncryptionAlgorithmParams = null; - if(DEBUG) - debug(" params: " + (digestEncryptionAlgorithmParams == null ? null - : new BigInteger(digestEncryptionAlgorithmParams).toString(16))); - - val = ber.read(); - if (val.getTag() != BER.OCTET_STRING) - throw new BEREncodingException("malformed EncryptedDigest"); - encryptedDigest = (byte[]) val.getValue(); - if (DEBUG) - debug(" EncryptedDigest: " + new BigInteger(1, encryptedDigest).toString(16)); - - if (ber.peek() == 1) - unauthenticatedAttributes = ber.read().getEncoded(); - else - unauthenticatedAttributes = null; - - if (ber.peek() == 0) - ber.read(); - } - - public BigInteger getVersion() - { - return version; - } - - public BigInteger getSerialNumber() - { - return serialNumber; - } - - public X500Principal getIssuer() - { - return issuer; - } - - public OID getDigestAlgorithmId() - { - return digestAlgorithmId; - } - - public byte[] getDigestAlgorithmParams() - { - return (digestAlgorithmParams != null - ? (byte[]) digestAlgorithmParams.clone() - : null); - } - - public byte[] getAuthenticatedAttributes() - { - return (authenticatedAttributes != null - ? (byte[]) authenticatedAttributes.clone() - : null); - } - - public OID getDigestEncryptionAlgorithmId() - { - return digestEncryptionAlgorithmId; - } - - public byte[] getDigestEncryptionAlgorithmParams() - { - return (digestEncryptionAlgorithmParams != null - ? (byte[]) digestEncryptionAlgorithmParams.clone() - : null); - } - - public byte[] getEncryptedDigest() - { - return (encryptedDigest != null ? (byte[]) encryptedDigest.clone() : null); - } - - public byte[] getUnauthenticatedAttributes() - { - return (unauthenticatedAttributes != null - ? (byte[]) unauthenticatedAttributes.clone() - : null); - } -} diff --git a/libjava/gnu/java/security/provider/CollectionCertStoreImpl.java b/libjava/gnu/java/security/provider/CollectionCertStoreImpl.java deleted file mode 100644 index 4bf3d5434ef..00000000000 --- a/libjava/gnu/java/security/provider/CollectionCertStoreImpl.java +++ /dev/null @@ -1,102 +0,0 @@ -/* CollectionCertStore.java -- Collection-based cert store. - 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.java.security.provider; - -import java.security.InvalidAlgorithmParameterException; -import java.security.cert.CRL; -import java.security.cert.CRLSelector; -import java.security.cert.CertSelector; -import java.security.cert.CertStoreException; -import java.security.cert.CertStoreParameters; -import java.security.cert.CertStoreSpi; -import java.security.cert.Certificate; -import java.security.cert.CollectionCertStoreParameters; -import java.util.Collection; -import java.util.Iterator; -import java.util.LinkedList; - -public final class CollectionCertStoreImpl extends CertStoreSpi -{ - - // Fields. - // ------------------------------------------------------------------------- - - private final Collection store; - - // Constructors. - // ------------------------------------------------------------------------- - - public CollectionCertStoreImpl(CertStoreParameters params) - throws InvalidAlgorithmParameterException - { - super(params); - if (! (params instanceof CollectionCertStoreParameters)) - throw new InvalidAlgorithmParameterException("not a CollectionCertStoreParameters object"); - store = ((CollectionCertStoreParameters) params).getCollection(); - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public Collection engineGetCertificates(CertSelector selector) - throws CertStoreException - { - LinkedList result = new LinkedList(); - for (Iterator it = store.iterator(); it.hasNext(); ) - { - Object o = it.next(); - if ((o instanceof Certificate) && selector.match((Certificate) o)) - result.add(o); - } - return result; - } - - public Collection engineGetCRLs(CRLSelector selector) - throws CertStoreException - { - LinkedList result = new LinkedList(); - for (Iterator it = store.iterator(); it.hasNext(); ) - { - Object o = it.next(); - if ((o instanceof CRL) && selector.match((CRL) o)) - result.add(o); - } - return result; - } -} diff --git a/libjava/gnu/java/security/provider/DSAKeyFactory.java b/libjava/gnu/java/security/provider/DSAKeyFactory.java deleted file mode 100644 index 7e154e27473..00000000000 --- a/libjava/gnu/java/security/provider/DSAKeyFactory.java +++ /dev/null @@ -1,134 +0,0 @@ -/* DSAKeyFactory.java -- DSA key factory. - 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., 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.java.security.provider; - -import java.security.InvalidKeyException; -import java.security.Key; -import java.security.KeyFactorySpi; -import java.security.PrivateKey; -import java.security.PublicKey; -import java.security.interfaces.DSAPrivateKey; -import java.security.interfaces.DSAPublicKey; -import java.security.spec.DSAPrivateKeySpec; -import java.security.spec.DSAPublicKeySpec; -import java.security.spec.InvalidKeySpecException; -import java.security.spec.KeySpec; - -/** - * DSA key factory. - * - * @author Casey Marshall (rsdio@metastatic.org) - */ -public class DSAKeyFactory extends KeyFactorySpi -{ - - // Constructor. - // ------------------------------------------------------------------------ - - public DSAKeyFactory() - { - super(); - } - - // Instance methods. - // ------------------------------------------------------------------------ - - protected PrivateKey engineGeneratePrivate(KeySpec keySpec) - throws InvalidKeySpecException - { - if (!(keySpec instanceof DSAPrivateKeySpec)) - throw new InvalidKeySpecException(); - return new GnuDSAPrivateKey( - ((DSAPrivateKeySpec) keySpec).getX(), - ((DSAPrivateKeySpec) keySpec).getP(), - ((DSAPrivateKeySpec) keySpec).getQ(), - ((DSAPrivateKeySpec) keySpec).getG()); - } - - protected PublicKey engineGeneratePublic(KeySpec keySpec) - throws InvalidKeySpecException - { - if (!(keySpec instanceof DSAPublicKeySpec)) - throw new InvalidKeySpecException(); - return new GnuDSAPublicKey( - ((DSAPublicKeySpec) keySpec).getY(), - ((DSAPublicKeySpec) keySpec).getP(), - ((DSAPublicKeySpec) keySpec).getQ(), - ((DSAPublicKeySpec) keySpec).getG()); - } - - protected KeySpec engineGetKeySpec(Key key, Class keySpec) - throws InvalidKeySpecException - { - if ((key instanceof DSAPublicKey) && - keySpec.isAssignableFrom(DSAPublicKeySpec.class)) - { - return new DSAPublicKeySpec(((DSAPublicKey) key).getY(), - ((DSAPublicKey) key).getParams().getP(), - ((DSAPublicKey) key).getParams().getQ(), - ((DSAPublicKey) key).getParams().getG()); - } - if ((key instanceof DSAPrivateKey) && - keySpec.isAssignableFrom(DSAPrivateKeySpec.class)) - { - return new DSAPrivateKeySpec(((DSAPrivateKey) key).getX(), - ((DSAPrivateKey) key).getParams().getP(), - ((DSAPrivateKey) key).getParams().getQ(), - ((DSAPrivateKey) key).getParams().getG()); - } - throw new InvalidKeySpecException(); - } - - protected Key engineTranslateKey(Key key) throws InvalidKeyException - { - if ((key instanceof GnuDSAPublicKey) || (key instanceof GnuDSAPrivateKey)) - return key; - if (key instanceof DSAPublicKey) - return new GnuDSAPublicKey(((DSAPublicKey) key).getY(), - ((DSAPublicKey) key).getParams().getP(), - ((DSAPublicKey) key).getParams().getQ(), - ((DSAPublicKey) key).getParams().getG()); - if (key instanceof DSAPrivateKey) - return new GnuDSAPrivateKey(((DSAPrivateKey) key).getX(), - ((DSAPrivateKey) key).getParams().getP(), - ((DSAPrivateKey) key).getParams().getQ(), - ((DSAPrivateKey) key).getParams().getG()); - throw new InvalidKeyException(); - } -} diff --git a/libjava/gnu/java/security/provider/DSAKeyPairGenerator.java b/libjava/gnu/java/security/provider/DSAKeyPairGenerator.java deleted file mode 100644 index 2c643d5c367..00000000000 --- a/libjava/gnu/java/security/provider/DSAKeyPairGenerator.java +++ /dev/null @@ -1,171 +0,0 @@ -/* GnuDSAKeyPairGenerator.java --- Gnu DSA Key Pair Generator - Copyright (C) 1999 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.java.security.provider; - -import java.math.BigInteger; -import java.security.AlgorithmParameterGenerator; -import java.security.AlgorithmParameters; -import java.security.InvalidAlgorithmParameterException; -import java.security.InvalidParameterException; -import java.security.KeyPair; -import java.security.KeyPairGeneratorSpi; -import java.security.SecureRandom; -import java.security.interfaces.DSAParams; -import java.security.spec.AlgorithmParameterSpec; -import java.security.spec.DSAParameterSpec; -import java.util.Random; - -public class DSAKeyPairGenerator extends KeyPairGeneratorSpi - implements java.security.interfaces.DSAKeyPairGenerator -{ -int keysize; -SecureRandom random; -private BigInteger q = null; // the small prime -private BigInteger p = null; // the big prime -private BigInteger g = null; - -DSAKeyPairGenerator() -{ - keysize = 1024; -} - -public void initialize(int keysize, SecureRandom random) -{ - //if( ((keysize % 64) != 0) || (keysize < 512) || (keysize > 1024) ) - // throw new InvalidAlgorithmParameterException("Invalid key size"); - - this.keysize = keysize; - this.random = random; -} - -public void initialize(AlgorithmParameterSpec params, - SecureRandom random) - throws InvalidAlgorithmParameterException -{ - if( !( params instanceof DSAParameterSpec ) ) - throw new InvalidAlgorithmParameterException("Must be DSAParameterSpec"); - - DSAParameterSpec dsaparameterspec = (DSAParameterSpec)params; - p = dsaparameterspec.getP(); - q = dsaparameterspec.getQ(); - g = dsaparameterspec.getG(); - this.random = random; -} - -public void initialize(DSAParams params, SecureRandom random) - throws InvalidParameterException -{ - if(params.getP() != null) - p = params.getP(); - else - throw new InvalidParameterException(); - - if(params.getQ() != null) - q = params.getQ(); - else - throw new InvalidParameterException(); - - if(params.getG() != null) - g = params.getG(); - else - throw new InvalidParameterException(); - - this.random = random; -} - -public void initialize(int modlen, boolean genParams, SecureRandom random) - throws InvalidParameterException -{ - if( ((modlen % 64) != 0) || (modlen < 512) || (modlen > 1024) ) - throw new InvalidParameterException(); - - if( (genParams == false) && (modlen != 512) && (modlen != 768) && (modlen != 1024) ) - throw new InvalidParameterException(); - this.keysize = modlen; - this.random = random; - p = null; - q = null; - g = null; -} - -public KeyPair generateKeyPair() -{ - if( getDefaults() == false) { - try { - AlgorithmParameterGenerator apgDSA = AlgorithmParameterGenerator.getInstance("DSA"); - AlgorithmParameters apDSA = apgDSA.generateParameters(); - DSAParameterSpec dsaparameterspec = (DSAParameterSpec)apDSA.getParameterSpec( DSAParameterSpec.class ); - p = dsaparameterspec.getP(); - q = dsaparameterspec.getQ(); - g = dsaparameterspec.getG(); - } catch ( Exception e ) { - return null; - } - } - - BigInteger x = new BigInteger( 159, new Random() ); - - BigInteger y = g.modPow( x, p ); - - return new KeyPair( new GnuDSAPublicKey(y,p,q,g), new GnuDSAPrivateKey(x,p,q,g)); - //return new KeyPair( public, private ); -} - -//These constants are Sun's Constants copied from the -//Cryptography Specification -private boolean getDefaults() -{ - if( keysize == 512) { - p = new BigInteger("fca682ce8e12caba26efccf7110e526db078b05edecbcd1eb4a208f3ae1617ae01f35b91a47e6df63413c5e12ed0899bcd132acd50d99151bdc43ee737592e17", 16); - q = new BigInteger("962eddcc369cba8ebb260ee6b6a126d9346e38c5", 16); - g = new BigInteger("678471b27a9cf44ee91a49c5147db1a9aaf244f05a434d6486931d2d14271b9e35030b71fd73da179069b32e2935630e1c2062354d0da20a6c416e50be794ca4", 16); - return true; - } else if( keysize == 768) { - p = new BigInteger("e9e642599d355f37c97ffd3567120b8e25c9cd43e927b3a9670fbec5d890141922d2c3b3ad2480093799869d1e846aab49fab0ad26d2ce6a22219d470bce7d777d4a21fbe9c270b57f607002f3cef8393694cf45ee3688c11a8c56ab127a3daf", 16); - q = new BigInteger("9cdbd84c9f1ac2f38d0f80f42ab952e7338bf511", 16); - g = new BigInteger("30470ad5a005fb14ce2d9dcd87e38bc7d1b1c5facbaecbe95f190aa7a31d23c4dbbcbe06174544401a5b2c020965d8c2bd2171d3668445771f74ba084d2029d83c1c158547f3a9f1a2715be23d51ae4d3e5a1f6a7064f316933a346d3f529252", 16); - } else if( keysize == 512) { - p = new BigInteger("fd7f53811d75122952df4a9c2eece4e7f611b7523cef4400c31e3f80b6512669455d402251fb593d8d58fabfc5f5ba30f6cb9b556cd7813b801d346ff26660b76b9950a5a49f9fe8047b1022c24fbba9d7feb7c61bf83b57e7c6a8a6150f04fb83f6d3c51ec3023554135a169132f675f3ae2b61d72aeff22203199dd14801c7", 16); - q = new BigInteger("9760508f15230bccb292b982a2eb840bf0581cf5", 16); - g = new BigInteger("f7e1a085d69b3ddecbbcab5c36b857b97994afbbfa3aea82f9574c0b3d0782675159578ebad4594fe67107108180b449167123e84c281613b7cf09328cc8a6e13c167a8b547c8d28e0a3ae1e2bb3a675916ea37f0bfa213562f1fb627a01243bcca4f1bea8519089a883dfe15ae59f06928b665e807b552564014c3bfecf492a", 16); - } - return false; -} - -} diff --git a/libjava/gnu/java/security/provider/DSAParameterGenerator.java b/libjava/gnu/java/security/provider/DSAParameterGenerator.java deleted file mode 100644 index ccec1136cd3..00000000000 --- a/libjava/gnu/java/security/provider/DSAParameterGenerator.java +++ /dev/null @@ -1,128 +0,0 @@ -/* DSAParameterGenerator.java --- DSA Parameter Generator Implementation - Copyright (C) 1999 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.java.security.provider; - -import gnu.java.security.util.Prime; - -import java.math.BigInteger; -import java.security.AlgorithmParameterGeneratorSpi; -import java.security.AlgorithmParameters; -import java.security.InvalidAlgorithmParameterException; -import java.security.NoSuchAlgorithmException; -import java.security.SecureRandom; -import java.security.spec.AlgorithmParameterSpec; -import java.security.spec.DSAParameterSpec; -import java.security.spec.InvalidParameterSpecException; -import java.util.Random; - -public class DSAParameterGenerator extends AlgorithmParameterGeneratorSpi -{ - private int size; - private SecureRandom random = null; - - public DSAParameterGenerator() - { - size = 1024; - } - - public void engineInit(int size, SecureRandom random) - { - if( (size < 512) || (size > 1024) || ( (size % 64) != 0) ) - //throw new InvalidAlgorithmParameterException("Invalid Size"); - return; - this.size = size; - this.random = random; - } - - public void engineInit(AlgorithmParameterSpec genParamSpec, SecureRandom random) - throws InvalidAlgorithmParameterException - { - if( !( genParamSpec instanceof DSAParameterSpec ) ) - throw new InvalidAlgorithmParameterException("Must be DSAParameterSpec"); - - DSAParameterSpec dsaparameterspec = (DSAParameterSpec)genParamSpec; - int tmp = dsaparameterspec.getP().bitLength(); - - if( (tmp < 512) || (tmp > 1024) || ( (tmp % 64) != 0) ) - throw new InvalidAlgorithmParameterException("Invalid Size"); - - this.random = random; - } - - //For more information see IEEE P1363 A.16.1 (10/05/98 Draft) - public AlgorithmParameters engineGenerateParameters() - { - DSAParameterSpec dsaparameterspec; - - int L = size; - BigInteger r, p, k, h, g; - - //q 2^159 < q < 2^160 - r = Prime.generateRandomPrime( 159, 160, BigInteger.valueOf(1)); - - // 2^(L-1) < p < 2^L - p = Prime.generateRandomPrime( r, BigInteger.valueOf(1), L - 1, L, BigInteger.valueOf(1)); - - k = p.subtract( BigInteger.valueOf(1) ); - k = k.divide( r ); - - Random rand = new Random(); - h = BigInteger.valueOf(1); - - for(;;) { - h = h.add(BigInteger.valueOf( 1 ) ); - - g = h.modPow(k, p); - - if( g.compareTo( BigInteger.valueOf(1) ) != 1 ) - break; - } - - try { - dsaparameterspec = new DSAParameterSpec(p, r, g); - AlgorithmParameters ap = AlgorithmParameters.getInstance("DSA"); - ap.init( dsaparameterspec ); - return ap; - } catch ( NoSuchAlgorithmException nsae ) { - return null; - } catch ( InvalidParameterSpecException ipse) { - return null; - } - } -} diff --git a/libjava/gnu/java/security/provider/DSAParameters.java b/libjava/gnu/java/security/provider/DSAParameters.java deleted file mode 100644 index 77d648956ee..00000000000 --- a/libjava/gnu/java/security/provider/DSAParameters.java +++ /dev/null @@ -1,150 +0,0 @@ -/* DSAParameters.java --- DSA Parameters Implementation - Copyright (C) 1999, 2003, 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.java.security.provider; - -import gnu.java.io.ASN1ParsingException; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; -import gnu.java.security.der.DERWriter; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.math.BigInteger; -import java.security.AlgorithmParametersSpi; -import java.security.spec.AlgorithmParameterSpec; -import java.security.spec.DSAParameterSpec; -import java.security.spec.InvalidParameterSpecException; -import java.util.ArrayList; - -/* - ASN.1 Encoding for DSA from rfc2459 - - id-dsa ID ::= { iso(1) member-body(2) us(840) x9-57(10040) - x9cm(4) 1 } - - Dss-Parms ::= SEQUENCE { - p INTEGER, - q INTEGER, - g INTEGER } - -*/ -public class DSAParameters extends AlgorithmParametersSpi -{ -private BigInteger q; // the small prime -private BigInteger p; // the big prime -private BigInteger g; - - -public void engineInit(AlgorithmParameterSpec paramSpec) - throws InvalidParameterSpecException -{ - if( paramSpec instanceof DSAParameterSpec ) { - DSAParameterSpec dsaParamSpec = (DSAParameterSpec)paramSpec; - p = dsaParamSpec.getP(); - q = dsaParamSpec.getQ(); - g = dsaParamSpec.getG(); - } - else - throw new InvalidParameterSpecException("Only accepts DSAParameterSpec"); -} - -public void engineInit(byte[] params) - throws IOException -{ - DERReader in = new DERReader(params); - DERValue val = in.read(); - if (val.getValue() != DER.CONSTRUCTED_VALUE) - throw new ASN1ParsingException("badly formed parameters"); - try - { - p = (BigInteger) in.read().getValue(); - q = (BigInteger) in.read().getValue(); - g = (BigInteger) in.read().getValue(); - } - catch (Exception x) - { - throw new ASN1ParsingException("badly formed parameters"); - } -} - -public void engineInit(byte[] params, String format) - throws IOException -{ - if( !format.equals("ASN.1") ) - throw new IOException("Invalid Format: Only accepts ASN.1"); - engineInit( params ); -} - -public AlgorithmParameterSpec engineGetParameterSpec(Class paramSpec) - throws InvalidParameterSpecException -{ - if( paramSpec.isAssignableFrom(DSAParameterSpec.class) ) - return new DSAParameterSpec(p, q, g); - else - throw new InvalidParameterSpecException("Only accepts DSAParameterSpec"); -} - -public byte[] engineGetEncoded() - throws IOException -{ - ByteArrayOutputStream bout = new ByteArrayOutputStream(); - ArrayList seq = new ArrayList(3); - seq.add(new DERValue(DER.INTEGER, p)); - seq.add(new DERValue(DER.INTEGER, q)); - seq.add(new DERValue(DER.INTEGER, g)); - DERWriter.write(bout, new DERValue(DER.CONSTRUCTED | DER.SEQUENCE, seq)); - return bout.toByteArray(); -} - - -public byte[] engineGetEncoded(String format) - throws IOException -{ - if( !format.equals("ASN.1") ) - throw new IOException("Invalid Format: Only accepts ASN.1"); - return engineGetEncoded(); -} - -public String engineToString() -{ - return ("q: " + q + " p: " + p + " g: " + g); -} - -} diff --git a/libjava/gnu/java/security/provider/DSASignature.java b/libjava/gnu/java/security/provider/DSASignature.java deleted file mode 100644 index 1d3875d28e3..00000000000 --- a/libjava/gnu/java/security/provider/DSASignature.java +++ /dev/null @@ -1,251 +0,0 @@ -/* DSASignature.java -- - Copyright (C) 1999, 2003, 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.java.security.provider; - -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; -import gnu.java.security.der.DERWriter; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.math.BigInteger; -import java.security.InvalidAlgorithmParameterException; -import java.security.InvalidKeyException; -import java.security.InvalidParameterException; -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; -import java.security.PrivateKey; -import java.security.PublicKey; -import java.security.SecureRandom; -import java.security.SignatureException; -import java.security.SignatureSpi; -import java.security.interfaces.DSAPrivateKey; -import java.security.interfaces.DSAPublicKey; -import java.security.spec.AlgorithmParameterSpec; -import java.util.ArrayList; -import java.util.Random; - -public class DSASignature extends SignatureSpi -{ - private DSAPublicKey publicKey; - private DSAPrivateKey privateKey; - private final MessageDigest digest; - private final SecureRandom random; - - public DSASignature() throws NoSuchAlgorithmException - { - random = new SecureRandom(); - digest = MessageDigest.getInstance ("SHA1"); - } - - private void init() - { - digest.reset(); - } - - public void engineInitVerify (PublicKey publicKey) - throws InvalidKeyException - { - if (publicKey instanceof DSAPublicKey) - this.publicKey = (DSAPublicKey) publicKey; - else - throw new InvalidKeyException(); - init(); - } - - public void engineInitSign (PrivateKey privateKey) - throws InvalidKeyException - { - if (privateKey instanceof DSAPrivateKey) - this.privateKey = (DSAPrivateKey) privateKey; - else - throw new InvalidKeyException ("not a DSA private key"); - - init(); - } - - public void engineInitSign (PrivateKey privateKey, - SecureRandom random) - throws InvalidKeyException - { - if (privateKey instanceof DSAPrivateKey) - this.privateKey = (DSAPrivateKey) privateKey; - else - throw new InvalidKeyException ("not a DSA private key"); - - appRandom = random; - init(); - } - - public void engineUpdate(byte b) - throws SignatureException - { - digest.update (b); - } - - public void engineUpdate (byte[] b, int off, int len) - throws SignatureException - { - digest.update (b, off, len); - } - - public byte[] engineSign() throws SignatureException - { - if (privateKey == null) - throw new SignatureException ("not initialized for signing"); - - try - { - BigInteger g = privateKey.getParams().getG(); - BigInteger p = privateKey.getParams().getP(); - BigInteger q = privateKey.getParams().getQ(); - - BigInteger x = privateKey.getX(); - - BigInteger k = new BigInteger (159, appRandom != null ? appRandom : random); - - BigInteger r = g.modPow(k, p); - r = r.mod(q); - - byte bytes[] = digest.digest(); - BigInteger sha = new BigInteger (1, bytes); - - BigInteger s = sha.add (x.multiply (r)); - s = s.multiply (k.modInverse(q)).mod (q); - - ByteArrayOutputStream bout = new ByteArrayOutputStream(); - ArrayList seq = new ArrayList (2); - seq.add(0, new DERValue (DER.INTEGER, r)); - seq.add(1, new DERValue (DER.INTEGER, s)); - DERWriter.write (bout, new DERValue (DER.CONSTRUCTED | DER.SEQUENCE, seq)); - return bout.toByteArray(); - } - catch (IOException ioe) - { - SignatureException se = new SignatureException(); - se.initCause (ioe); - throw se; - } - catch (ArithmeticException ae) - { - SignatureException se = new SignatureException(); - se.initCause (ae); - throw se; - } - } - - public int engineSign (byte[] outbuf, int offset, int len) - throws SignatureException - { - byte tmp[] = engineSign(); - if (tmp.length > len) - throw new SignatureException ("output buffer too short"); - System.arraycopy (tmp, 0, outbuf, offset, tmp.length); - return tmp.length; - } - - public boolean engineVerify (byte[] sigBytes) - throws SignatureException - { - // Decode sigBytes from ASN.1 DER encoding - try - { - DERReader in = new DERReader (sigBytes); - DERValue val = in.read(); - if (!val.isConstructed()) - throw new SignatureException ("badly formed signature"); - BigInteger r = (BigInteger) in.read().getValue(); - BigInteger s = (BigInteger) in.read().getValue(); - - BigInteger g = publicKey.getParams().getG(); - BigInteger p = publicKey.getParams().getP(); - BigInteger q = publicKey.getParams().getQ(); - - BigInteger y = publicKey.getY(); - - BigInteger w = s.modInverse (q); - - byte bytes[] = digest.digest(); - BigInteger sha = new BigInteger (1, bytes); - - BigInteger u1 = w.multiply (sha).mod ( q ); - - BigInteger u2 = r.multiply (w).mod(q); - - BigInteger v = g.modPow (u1, p).multiply (y.modPow (u2, p)).mod (p).mod (q); - - if (v.equals (r)) - return true; - else - return false; - } - catch (IOException ioe) - { - SignatureException se = new SignatureException ("badly formed signature"); - se.initCause (ioe); - throw se; - } - } - - public void engineSetParameter (String param, - Object value) - throws InvalidParameterException - { - throw new InvalidParameterException(); - } - - public void engineSetParameter (AlgorithmParameterSpec params) - throws InvalidAlgorithmParameterException - { - throw new InvalidParameterException(); - - } - - public Object engineGetParameter (String param) - throws InvalidParameterException - { - throw new InvalidParameterException(); - } - - public Object clone() throws CloneNotSupportedException - { - return super.clone(); - } -} diff --git a/libjava/gnu/java/security/provider/DefaultPolicy.java b/libjava/gnu/java/security/provider/DefaultPolicy.java deleted file mode 100644 index d42be6c908f..00000000000 --- a/libjava/gnu/java/security/provider/DefaultPolicy.java +++ /dev/null @@ -1,68 +0,0 @@ -/* DefaultPolicy.java -- - Copyright (C) 2001, 2002 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.java.security.provider; - -import java.security.AllPermission; -import java.security.CodeSource; -import java.security.Permission; -import java.security.PermissionCollection; -import java.security.Permissions; -import java.security.Policy; - -/** - * This is just a stub policy implementation which grants all permissions - * to any code source. FIXME: This should be replaced with a real - * implementation that reads the policy configuration from a file, like - * $JAVA_HOME/jre/lib/security/java.security. - */ -public class DefaultPolicy extends Policy -{ - static Permission allPermission = new AllPermission(); - - public PermissionCollection getPermissions(CodeSource codesource) - { - Permissions perms = new Permissions(); - perms.add(allPermission); - return perms; - } - - public void refresh() - { - // Nothing. - } -} diff --git a/libjava/gnu/java/security/provider/EncodedKeyFactory.java b/libjava/gnu/java/security/provider/EncodedKeyFactory.java deleted file mode 100644 index 2bf0fff809e..00000000000 --- a/libjava/gnu/java/security/provider/EncodedKeyFactory.java +++ /dev/null @@ -1,303 +0,0 @@ -/* EncodedKeyFactory.java -- encoded key factory. - 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.java.security.provider; - -import gnu.java.security.OID; -import gnu.java.security.der.BitString; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; - -import java.io.IOException; -import java.math.BigInteger; -import java.security.AlgorithmParameters; -import java.security.InvalidKeyException; -import java.security.Key; -import java.security.KeyFactorySpi; -import java.security.NoSuchAlgorithmException; -import java.security.PrivateKey; -import java.security.PublicKey; -import java.security.spec.DSAParameterSpec; -import java.security.spec.InvalidKeySpecException; -import java.security.spec.InvalidParameterSpecException; -import java.security.spec.KeySpec; -import java.security.spec.PKCS8EncodedKeySpec; -import java.security.spec.RSAPrivateCrtKeySpec; -import java.security.spec.RSAPublicKeySpec; -import java.security.spec.X509EncodedKeySpec; - -import javax.crypto.spec.DHParameterSpec; - -/** - * A factory for keys encoded in either the X.509 format (for public - * keys) or the PKCS#8 format (for private keys). - * - * @author Casey Marshall (rsdio@metastatic.org) - */ -public class EncodedKeyFactory extends KeyFactorySpi -{ - - // Constants. - // ------------------------------------------------------------------------ - - private static final OID ID_DSA = new OID("1.2.840.10040.4.1"); - private static final OID ID_RSA = new OID("1.2.840.113549.1.1.1"); - private static final OID ID_DH = new OID("1.2.840.10046.2.1"); - - // Instance methods. - // ------------------------------------------------------------------------ - - public PublicKey engineGeneratePublic(KeySpec spec) - throws InvalidKeySpecException - { - if (!(spec instanceof X509EncodedKeySpec)) - throw new InvalidKeySpecException("only supports X.509 key specs"); - DERReader der = new DERReader(((X509EncodedKeySpec) spec).getEncoded()); - try - { - DERValue spki = der.read(); - if (!spki.isConstructed()) - { - throw new InvalidKeySpecException("malformed encoded key"); - } - DERValue alg = der.read(); - if (!alg.isConstructed()) - { - throw new InvalidKeySpecException("malformed encoded key"); - } - DERValue val = der.read(); - if (!(val.getValue() instanceof OID)) - { - throw new InvalidKeySpecException("malformed encoded key"); - } - OID algId = (OID) val.getValue(); - byte[] algParams = null; - if (alg.getLength() > val.getEncodedLength()) - { - val = der.read(); - algParams = val.getEncoded(); - if (val.isConstructed()) - der.skip(val.getLength()); - } - val = der.read(); - if (!(val.getValue() instanceof BitString)) - { - throw new InvalidKeySpecException("malformed encoded key"); - } - byte[] publicKey = ((BitString) val.getValue()).toByteArray(); - if (algId.equals(ID_DSA)) - { - BigInteger p = null, g = null, q = null, Y; - if (algParams != null) - { - DERReader dsaParams = new DERReader(algParams); - val = dsaParams.read(); - if (!val.isConstructed()) - throw new InvalidKeySpecException("malformed DSA parameters"); - val = dsaParams.read(); - if (!(val.getValue() instanceof BigInteger)) - throw new InvalidKeySpecException("malformed DSA parameters"); - p = (BigInteger) val.getValue(); - val = dsaParams.read(); - if (!(val.getValue() instanceof BigInteger)) - throw new InvalidKeySpecException("malformed DSA parameters"); - q = (BigInteger) val.getValue(); - val = dsaParams.read(); - if (!(val.getValue() instanceof BigInteger)) - throw new InvalidKeySpecException("malformed DSA parameters"); - g = (BigInteger) val.getValue(); - } - DERReader dsaPub = new DERReader(publicKey); - val = dsaPub.read(); - if (!(val.getValue() instanceof BigInteger)) - throw new InvalidKeySpecException("malformed DSA parameters"); - Y = (BigInteger) val.getValue(); - return new GnuDSAPublicKey(Y, p, q, g); - } - else if (algId.equals(ID_RSA)) - { - DERReader rsaParams = new DERReader(publicKey); - if (!rsaParams.read().isConstructed()) - { - throw new InvalidKeySpecException("malformed encoded key"); - } - return new GnuRSAPublicKey(new RSAPublicKeySpec( - (BigInteger) rsaParams.read().getValue(), - (BigInteger) rsaParams.read().getValue())); - } - else if (algId.equals(ID_DH)) - { - if (algParams == null) - throw new InvalidKeySpecException("missing DH parameters"); - DERReader dhParams = new DERReader(algParams); - val = dhParams.read(); - BigInteger p, g, q, Y; - if (!val.isConstructed()) - throw new InvalidKeySpecException("malformed DH parameters"); - val = dhParams.read(); - if (!(val.getValue() instanceof BigInteger)) - throw new InvalidKeySpecException("malformed DH parameters"); - p = (BigInteger) val.getValue(); - val = dhParams.read(); - if (!(val.getValue() instanceof BigInteger)) - throw new InvalidKeySpecException("malformed DH parameters"); - g = (BigInteger) val.getValue(); - val = dhParams.read(); - if (!(val.getValue() instanceof BigInteger)) - throw new InvalidKeySpecException("malformed DH parameters"); - q = (BigInteger) val.getValue(); - DERReader dhPub = new DERReader(publicKey); - val = dhPub.read(); - if (!(val.getValue() instanceof BigInteger)) - throw new InvalidKeySpecException("malformed DH parameters"); - Y = (BigInteger) val.getValue(); - return (PublicKey) new GnuDHPublicKey(new DHParameterSpec(p, g), Y, q); - } - else - throw new InvalidKeySpecException("unknown algorithm: " + algId); - } - catch (IOException ioe) - { - throw new InvalidKeySpecException(ioe.getMessage()); - } - } - - public PrivateKey engineGeneratePrivate(KeySpec spec) - throws InvalidKeySpecException - { - if (!(spec instanceof PKCS8EncodedKeySpec)) - { - throw new InvalidKeySpecException("only supports PKCS8 key specs"); - } - DERReader der = new DERReader(((PKCS8EncodedKeySpec) spec).getEncoded()); - try - { - DERValue pki = der.read(); - if (!pki.isConstructed()) - { - throw new InvalidKeySpecException("malformed encoded key"); - } - DERValue val = der.read(); - if (!(val.getValue() instanceof BigInteger)) - { - throw new InvalidKeySpecException("malformed encoded key"); - } - DERValue alg = der.read(); - if (!alg.isConstructed()) - { - throw new InvalidKeySpecException("malformed encoded key"); - } - val = der.read(); - if (!(val.getValue() instanceof OID)) - { - throw new InvalidKeySpecException("malformed encoded key"); - } - OID algId = (OID) val.getValue(); - byte[] algParams = null; - if (alg.getLength() > val.getEncodedLength()) - { - val = der.read(); - algParams = val.getEncoded(); - if (val.isConstructed()) - der.skip(val.getLength()); - } - byte[] privateKey = (byte[]) der.read().getValue(); - if (algId.equals(ID_DSA)) - { - if (algParams == null) - { - throw new InvalidKeySpecException("missing DSA parameters"); - } - AlgorithmParameters params = AlgorithmParameters.getInstance("DSA"); - params.init(algParams); - DSAParameterSpec dsaSpec = (DSAParameterSpec) - params.getParameterSpec(DSAParameterSpec.class); - DERReader dsaPriv = new DERReader(privateKey); - return new GnuDSAPrivateKey((BigInteger) dsaPriv.read().getValue(), - dsaSpec.getP(), dsaSpec.getQ(), dsaSpec.getG()); - } - else if (algId.equals(ID_RSA)) - { - DERReader rsaParams = new DERReader(privateKey); - if (!rsaParams.read().isConstructed()) - throw new InvalidKeySpecException("malformed encoded key"); - return new GnuRSAPrivateKey(new RSAPrivateCrtKeySpec( - (BigInteger) rsaParams.read().getValue(), // n - (BigInteger) rsaParams.read().getValue(), // e - (BigInteger) rsaParams.read().getValue(), // d - (BigInteger) rsaParams.read().getValue(), // p - (BigInteger) rsaParams.read().getValue(), // q - (BigInteger) rsaParams.read().getValue(), // d mod (p - 1) - (BigInteger) rsaParams.read().getValue(), // d mod (q - 1) - (BigInteger) rsaParams.read().getValue())); // (inv q) mod p - } - else - throw new InvalidKeySpecException("unknown algorithm: " + algId); - } - catch (InvalidParameterSpecException iapse) - { - throw new InvalidKeySpecException(iapse.getMessage()); - } - catch (NoSuchAlgorithmException nsae) - { - throw new InvalidKeySpecException(nsae.getMessage()); - } - catch (IOException ioe) - { - throw new InvalidKeySpecException(ioe.getMessage()); - } - } - - public KeySpec engineGetKeySpec(Key key, Class speClass) - throws InvalidKeySpecException - { - if ((key instanceof PrivateKey) && key.getFormat().equals("PKCS#8") - && speClass.isAssignableFrom(PKCS8EncodedKeySpec.class)) - return new PKCS8EncodedKeySpec(key.getEncoded()); - else if ((key instanceof PublicKey) && key.getFormat().equals("X.509") - && speClass.isAssignableFrom(X509EncodedKeySpec.class)) - return new X509EncodedKeySpec(key.getEncoded()); - else - throw new InvalidKeySpecException(); - } - - public Key engineTranslateKey(Key key) throws InvalidKeyException - { - throw new InvalidKeyException("translating keys not supported"); - } -} diff --git a/libjava/gnu/java/security/provider/Gnu.java b/libjava/gnu/java/security/provider/Gnu.java deleted file mode 100644 index 849f63c1601..00000000000 --- a/libjava/gnu/java/security/provider/Gnu.java +++ /dev/null @@ -1,168 +0,0 @@ -/* Gnu.java --- Gnu provider main class - Copyright (C) 1999, 2002, 2003, 2005 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.java.security.provider; - -import java.security.AccessController; -import java.security.PrivilegedAction; -import java.security.Provider; - -public final class Gnu extends Provider -{ - public Gnu() - { - super("GNU", 1.0, "GNU provider v1.0 implementing SHA-1, MD5, DSA, RSA, X.509 Certificates and CRLs, PKIX certificate path validators, Collection cert stores"); - - AccessController.doPrivileged (new PrivilegedAction() - { - public Object run() - { - // Note that all implementation class names are referenced by using - // Class.getName(). That way when we staticly link the Gnu provider - // we automatically get all the implementation classes. - - // Signature - put("Signature.SHA1withDSA", - gnu.java.security.provider.DSASignature.class.getName()); - - put("Alg.Alias.Signature.DSS", "SHA1withDSA"); - put("Alg.Alias.Signature.DSA", "SHA1withDSA"); - put("Alg.Alias.Signature.SHAwithDSA", "SHA1withDSA"); - put("Alg.Alias.Signature.DSAwithSHA", "SHA1withDSA"); - put("Alg.Alias.Signature.DSAwithSHA1", "SHA1withDSA"); - put("Alg.Alias.Signature.SHA/DSA", "SHA1withDSA"); - put("Alg.Alias.Signature.SHA-1/DSA", "SHA1withDSA"); - put("Alg.Alias.Signature.SHA1/DSA", "SHA1withDSA"); - put("Alg.Alias.Signature.OID.1.2.840.10040.4.3", "SHA1withDSA"); - put("Alg.Alias.Signature.1.2.840.10040.4.3", "SHA1withDSA"); - put("Alg.Alias.Signature.1.3.14.3.2.13", "SHA1withDSA"); - put("Alg.Alias.Signature.1.3.14.3.2.27", "SHA1withDSA"); - - put("Signature.MD2withRSA", MD2withRSA.class.getName()); - put("Signature.MD2withRSA ImplementedIn", "Software"); - put("Alg.Alias.Signature.md2WithRSAEncryption", "MD2withRSA"); - put("Alg.Alias.Signature.OID.1.2.840.113549.1.1.2", "MD2withRSA"); - put("Alg.Alias.Signature.1.2.840.113549.1.1.2", "MD2withRSA"); - - put("Signature.MD4withRSA", MD4withRSA.class.getName()); - put("Signature.MD4withRSA ImplementedIn", "Software"); - put("Alg.Alias.Signature.md4WithRSAEncryption", "MD4withRSA"); - put("Alg.Alias.Signature.OID.1.2.840.113549.1.1.3", "MD4withRSA"); - put("Alg.Alias.Signature.1.2.840.113549.1.1.3", "MD4withRSA"); - - put("Signature.MD5withRSA", MD5withRSA.class.getName()); - put("Signature.MD5withRSA ImplementedIn", "Software"); - put("Alg.Alias.Signature.md5WithRSAEncryption", "MD5withRSA"); - put("Alg.Alias.Signature.OID.1.2.840.113549.1.1.4", "MD5withRSA"); - put("Alg.Alias.Signature.1.2.840.113549.1.1.4", "MD5withRSA"); - - put("Signature.SHA1withRSA", SHA1withRSA.class.getName()); - put("Signature.SHA1withRSA ImplementedIn", "Software"); - put("Alg.Alias.Signature.sha-1WithRSAEncryption", "SHA1withRSA"); - put("Alg.Alias.Signature.OID.1.2.840.113549.1.1.5", "SHA1withRSA"); - put("Alg.Alias.Signature.1.2.840.113549.1.1.5", "SHA1withRSA"); - - // Key Pair Generator - put("KeyPairGenerator.DSA", - gnu.java.security.provider.DSAKeyPairGenerator.class.getName()); - - put("Alg.Alias.KeyPairGenerator.OID.1.2.840.10040.4.1", "DSA"); - put("Alg.Alias.KeyPairGenerator.1.2.840.10040.4.1", "DSA"); - put("Alg.Alias.KeyPairGenerator.1.3.14.3.2.12", "DSA"); - - // Key Factory - put("KeyFactory.DSA", - gnu.java.security.provider.DSAKeyFactory.class.getName()); - - put("KeyFactory.Encoded", EncodedKeyFactory.class.getName()); - put("KeyFactory.Encoded ImplementedIn", "Software"); - put("Alg.Alias.KeyFactory.X.509", "Encoded"); - put("Alg.Alias.KeyFactory.X509", "Encoded"); - put("Alg.Alias.KeyFactory.PKCS#8", "Encoded"); - put("Alg.Alias.KeyFactory.PKCS8", "Encoded"); - - put("KeyFactory.RSA", RSAKeyFactory.class.getName()); - - put("Alg.Alias.KeyFactory.OID.1.2.840.10040.4.1", "DSA"); - put("Alg.Alias.KeyFactory.1.2.840.10040.4.1", "DSA"); - put("Alg.Alias.KeyFactory.1.3.14.3.2.12", "DSA"); - - // Message Digests - put("MessageDigest.SHA", gnu.java.security.provider.SHA.class.getName()); - put("MessageDigest.MD5", gnu.java.security.provider.MD5.class.getName()); - - // Format "Alias", "Actual Name" - put("Alg.Alias.MessageDigest.SHA1", "SHA"); - put("Alg.Alias.MessageDigest.SHA-1", "SHA"); - put("Alg.Alias.MessageDigest.SHA-160", "SHA"); - - // Algorithm Parameters - put("AlgorithmParameters.DSA", - gnu.java.security.provider.DSAParameters.class.getName()); - - put("Alg.Alias.AlgorithmParameters.DSS", "DSA"); - put("Alg.Alias.AlgorithmParameters.SHAwithDSA", "DSA"); - put("Alg.Alias.AlgorithmParameters.OID.1.2.840.10040.4.3", "DSA"); - put("Alg.Alias.AlgorithmParameters.1.2.840.10040.4.3", "DSA"); - - // Algorithm Parameter Generator - put("AlgorithmParameterGenerator.DSA", - gnu.java.security.provider.DSAParameterGenerator.class.getName()); - - // SecureRandom - put("SecureRandom.SHA1PRNG", - gnu.java.security.provider.SHA1PRNG.class.getName()); - - // CertificateFactory - put("CertificateFactory.X509", X509CertificateFactory.class.getName()); - - put("CertificateFactory.X509 ImplementedIn", "Software"); - put("Alg.Alias.CertificateFactory.X.509", "X509"); - - // CertPathValidator - put("CertPathValidator.PKIX", PKIXCertPathValidatorImpl.class.getName()); - put("CertPathValidator.PKIX ImplementedIn", "Software"); - - // CertStore - put("CertStore.Collection", CollectionCertStoreImpl.class.getName()); - - return null; - } - }); - } -} diff --git a/libjava/gnu/java/security/provider/GnuDHPublicKey.java b/libjava/gnu/java/security/provider/GnuDHPublicKey.java deleted file mode 100644 index 6e13f6bf20f..00000000000 --- a/libjava/gnu/java/security/provider/GnuDHPublicKey.java +++ /dev/null @@ -1,115 +0,0 @@ -/* GnuDHPublicKey.java -- A Diffie-Hellman public key. - 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.java.security.provider; - -import gnu.java.security.OID; -import gnu.java.security.der.BitString; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERValue; - -import java.math.BigInteger; -import java.util.ArrayList; - -import javax.crypto.interfaces.DHPublicKey; -import javax.crypto.spec.DHParameterSpec; - -public class GnuDHPublicKey implements DHPublicKey -{ - - // Fields. - // ------------------------------------------------------------------------- - - private byte[] encoded; - private final DHParameterSpec params; - private final BigInteger Y; - private final BigInteger q; - - // Constructor. - // ------------------------------------------------------------------------- - - public GnuDHPublicKey(DHParameterSpec params, BigInteger Y, BigInteger q) - { - this.params = params; - this.Y = Y; - this.q = q; - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public BigInteger getY() - { - return Y; - } - - public DHParameterSpec getParams() - { - return params; - } - - public String getAlgorithm() - { - return "DH"; - } - - public String getFormat() - { - return "X.509"; - } - - public byte[] getEncoded() - { - if (encoded != null) - return (byte[]) encoded.clone(); - ArrayList spki = new ArrayList(2); - ArrayList alg = new ArrayList(2); - alg.add(new DERValue(DER.OBJECT_IDENTIFIER, new OID("1.2.840.10046.2.1"))); - ArrayList param = new ArrayList(3); - param.add(new DERValue(DER.INTEGER, params.getP())); - param.add(new DERValue(DER.INTEGER, params.getG())); - param.add(new DERValue(DER.INTEGER, q)); - alg.add(new DERValue(DER.CONSTRUCTED|DER.SEQUENCE, param)); - spki.add(new DERValue(DER.CONSTRUCTED|DER.SEQUENCE, alg)); - spki.add(new DERValue(DER.BIT_STRING, new BitString(Y.toByteArray()))); - encoded = new DERValue(DER.CONSTRUCTED|DER.SEQUENCE, spki).getEncoded(); - if (encoded != null) - return (byte[]) encoded.clone(); - return null; - } -} diff --git a/libjava/gnu/java/security/provider/GnuDSAPrivateKey.java b/libjava/gnu/java/security/provider/GnuDSAPrivateKey.java deleted file mode 100644 index aac2faab229..00000000000 --- a/libjava/gnu/java/security/provider/GnuDSAPrivateKey.java +++ /dev/null @@ -1,147 +0,0 @@ -/* GnuDSAPrivateKey.java --- Gnu DSA Private Key - Copyright (C) 1999,2003,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.java.security.provider; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERValue; -import gnu.java.security.der.DERWriter; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.math.BigInteger; -import java.security.interfaces.DSAParams; -import java.security.interfaces.DSAPrivateKey; -import java.security.spec.DSAParameterSpec; -import java.util.ArrayList; - -public class GnuDSAPrivateKey implements DSAPrivateKey -{ - private byte[] encodedKey; - BigInteger x; - BigInteger p; - BigInteger q; - BigInteger g; - - public GnuDSAPrivateKey(BigInteger x, BigInteger p, BigInteger q, BigInteger g ) - { - this.x = x; - this.p = p; - this.q = q; - this.g = g; - } - - public String getAlgorithm() - { - return "DSA"; - } - - public String getFormat() - { - return "PKCS#8"; - } - - /** - * Encodes this key as a PrivateKeyInfo, as described in - * PKCS #8. The ASN.1 specification for this structure is: - * - *
-   * PrivateKeyInfo ::= SEQUENCE {
-   *   version Version,
-   *   privateKeyAlgorithm PrivateKeyAlgorithmIdentifier,
-   *   privateKey PrivateKey,
-   *   attributes [0] IMPLICIT Attributes OPTIONAL }
-   *
-   * Version ::= INTEGER
-   *
-   * PrivateKeyAlgorithmIdentifier ::= AlgorithmIdentifier
-   *
-   * PrivateKey ::= OCTET STRING
-   *
-   * Attributes ::= SET OF Attribute
-   * 
- * - *

DSA private keys (in Classpath at least) have no attributes. - */ - public byte[] getEncoded() - { - if (encodedKey != null) - return (byte[]) encodedKey.clone(); - try - { - ByteArrayOutputStream out = new ByteArrayOutputStream(); - ArrayList pki = new ArrayList(3); - pki.add(new DERValue(DER.INTEGER, BigInteger.ZERO)); - ArrayList algId = new ArrayList(2); - algId.add(new DERValue(DER.OBJECT_IDENTIFIER, - new OID("1.2.840.10040.4.1"))); - ArrayList algParams = new ArrayList(3); - algParams.add(new DERValue(DER.INTEGER, p)); - algParams.add(new DERValue(DER.INTEGER, q)); - algParams.add(new DERValue(DER.INTEGER, g)); - algId.add(new DERValue(DER.CONSTRUCTED|DER.SEQUENCE, algParams)); - pki.add(new DERValue(DER.OCTET_STRING, x.toByteArray())); - DERWriter.write(out, new DERValue(DER.CONSTRUCTED|DER.SEQUENCE, pki)); - return (byte[]) (encodedKey = out.toByteArray()).clone(); - } - catch (IOException ioe) - { - return null; - } - } - - public DSAParams getParams() - { - return (DSAParams)(new DSAParameterSpec(p,q,g)); - } - - public BigInteger getX() - { - return x; - } - - public String toString() - { - return "GnuDSAPrivateKey: x=" - + (x != null ? x.toString(16) : "null") + " p=" - + (p != null ? p.toString(16) : "null") + " q=" - + (q != null ? q.toString(16) : "null") + " g=" - + (g != null ? g.toString(16) : "null"); - } -} diff --git a/libjava/gnu/java/security/provider/GnuDSAPublicKey.java b/libjava/gnu/java/security/provider/GnuDSAPublicKey.java deleted file mode 100644 index 41195fa992c..00000000000 --- a/libjava/gnu/java/security/provider/GnuDSAPublicKey.java +++ /dev/null @@ -1,137 +0,0 @@ -/* GnuDSAPublicKey.java --- Gnu DSA Public Key - Copyright (C) 1999,2003,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.java.security.provider; - -import gnu.java.security.OID; -import gnu.java.security.der.BitString; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERValue; -import gnu.java.security.der.DERWriter; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.math.BigInteger; -import java.security.interfaces.DSAParams; -import java.security.interfaces.DSAPublicKey; -import java.security.spec.DSAParameterSpec; -import java.util.ArrayList; - -public class GnuDSAPublicKey implements DSAPublicKey -{ - private byte[] encodedKey; - BigInteger y; - BigInteger p; - BigInteger q; - BigInteger g; - - public GnuDSAPublicKey(BigInteger y, BigInteger p, BigInteger q, BigInteger g ) - { - this.y = y; - this.p = p; - this.q = q; - this.g = g; - } - - public String getAlgorithm() - { - return "DSA"; - } - - public String getFormat() - { - return "X.509"; - } - - /** - * The encoded form of DSA public keys is: - * - *

-   * SubjectPublicKeyInfo ::= SEQUENCE {
-   *   algorithm AlgorithmIdentifier,
-   *   subjectPublicKey BIT STRING }
-   * 
- */ - public byte[] getEncoded() - { - if (encodedKey != null) - return (byte[]) encodedKey.clone(); - try - { - ByteArrayOutputStream out = new ByteArrayOutputStream(); - ArrayList spki = new ArrayList(2); - ArrayList alg = new ArrayList(2); - alg.add(new DERValue(DER.OBJECT_IDENTIFIER, - new OID("1.2.840.113549.1.1.1"))); - ArrayList params = new ArrayList(3); - params.add(new DERValue(DER.INTEGER, p)); - params.add(new DERValue(DER.INTEGER, q)); - params.add(new DERValue(DER.INTEGER, g)); - alg.add(new DERValue(DER.CONSTRUCTED|DER.SEQUENCE, params)); - spki.add(new DERValue(DER.CONSTRUCTED|DER.SEQUENCE, alg)); - spki.add(new DERValue(DER.BIT_STRING, new BitString(y.toByteArray()))); - DERWriter.write(out, new DERValue(DER.CONSTRUCTED|DER.SEQUENCE, spki)); - return (byte[]) (encodedKey = out.toByteArray()).clone(); - } - catch (IOException ioe) - { - return null; - } - } - - public DSAParams getParams() - { - if (p == null || q == null || g == null) - return null; - return (DSAParams)(new DSAParameterSpec(p,q,g)); - } - - public BigInteger getY() - { - return y; - } - - public String toString() - { - return - "GnuDSAPublicKey: y=" + (y != null ? y.toString(16) : "(null)") + - " p=" + (p != null ? p.toString(16) : "(null)") + - " q=" + (q != null ? q.toString(16) : "(null)") + - " g=" + (g != null ? g.toString(16) : "(null)"); - } -} diff --git a/libjava/gnu/java/security/provider/GnuRSAPrivateKey.java b/libjava/gnu/java/security/provider/GnuRSAPrivateKey.java deleted file mode 100644 index b09fc88bc5c..00000000000 --- a/libjava/gnu/java/security/provider/GnuRSAPrivateKey.java +++ /dev/null @@ -1,164 +0,0 @@ -/* GnuRSAPrivateKey.java -- GNU RSA private key. - 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.java.security.provider; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERValue; - -import java.math.BigInteger; -import java.security.interfaces.RSAPrivateCrtKey; -import java.security.spec.RSAPrivateCrtKeySpec; -import java.util.ArrayList; - -class GnuRSAPrivateKey implements RSAPrivateCrtKey -{ - - // Fields. - // ------------------------------------------------------------------------- - - private final RSAPrivateCrtKeySpec spec; - private byte[] encodedKey; - - // Constructor. - // ------------------------------------------------------------------------- - - public GnuRSAPrivateKey(RSAPrivateCrtKeySpec spec) - { - this.spec = spec; - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public BigInteger getModulus() - { - return spec.getModulus(); - } - - public BigInteger getPrivateExponent() - { - return spec.getPrivateExponent(); - } - - public BigInteger getCrtCoefficient() - { - return spec.getCrtCoefficient(); - } - - public BigInteger getPrimeExponentP() - { - return spec.getPrimeExponentP(); - } - - public BigInteger getPrimeExponentQ() - { - return spec.getPrimeExponentQ(); - } - - public BigInteger getPrimeP() - { - return spec.getPrimeP(); - } - - public BigInteger getPrimeQ() - { - return spec.getPrimeQ(); - } - - public BigInteger getPublicExponent() - { - return spec.getPublicExponent(); - } - - public String getAlgorithm() - { - return "RSA"; - } - - public String getFormat() - { - return "PKCS#8"; - } - - /** - * The encoded form is: - * - *
-   * RSAPrivateKey ::= SEQUENCE {
-   *   version Version,
-   *   modulus INTEGER, -- n
-   *   publicExponent INTEGER, -- e
-   *   privateExponent INTEGER, -- d
-   *   prime1 INTEGER, -- p
-   *   prime2 INTEGER, -- q
-   *   exponent1 INTEGER, -- d mod (p-1)
-   *   exponent2 INTEGER, -- d mod (q-1)
-   *   coefficient INTEGER -- (inverse of q) mod p }
-   * 
- * - *

Which is in turn encoded in a PrivateKeyInfo structure from PKCS#8. - */ - public byte[] getEncoded() - { - if (encodedKey != null) - return (byte[]) encodedKey.clone(); - ArrayList key = new ArrayList(9); - key.add(new DERValue(DER.INTEGER, BigInteger.ZERO)); - key.add(new DERValue(DER.INTEGER, getModulus())); - key.add(new DERValue(DER.INTEGER, getPublicExponent())); - key.add(new DERValue(DER.INTEGER, getPrivateExponent())); - key.add(new DERValue(DER.INTEGER, getPrimeP())); - key.add(new DERValue(DER.INTEGER, getPrimeQ())); - key.add(new DERValue(DER.INTEGER, getPrimeExponentP())); - key.add(new DERValue(DER.INTEGER, getPrimeExponentQ())); - key.add(new DERValue(DER.INTEGER, getCrtCoefficient())); - DERValue pk = new DERValue(DER.SEQUENCE|DER.CONSTRUCTED, key); - ArrayList pki = new ArrayList(3); - pki.add(new DERValue(DER.INTEGER, BigInteger.ZERO)); - ArrayList alg = new ArrayList(2); - alg.add(new DERValue(DER.OBJECT_IDENTIFIER, - new OID("1.2.840.113549.1.1.1"))); - alg.add(new DERValue(DER.NULL, null)); - pki.add(new DERValue(DER.CONSTRUCTED|DER.SEQUENCE, alg)); - pki.add(new DERValue(DER.OCTET_STRING, pk.getEncoded())); - encodedKey = new DERValue(DER.SEQUENCE|DER.CONSTRUCTED, pki).getEncoded(); - return (byte[]) encodedKey.clone(); - } -} diff --git a/libjava/gnu/java/security/provider/GnuRSAPublicKey.java b/libjava/gnu/java/security/provider/GnuRSAPublicKey.java deleted file mode 100644 index a35e761c066..00000000000 --- a/libjava/gnu/java/security/provider/GnuRSAPublicKey.java +++ /dev/null @@ -1,109 +0,0 @@ -/* GnuRSAPublicKey.java -- GNU RSA public key. - 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.java.security.provider; - -import gnu.java.security.OID; -import gnu.java.security.der.BitString; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERValue; - -import java.math.BigInteger; -import java.security.interfaces.RSAPublicKey; -import java.security.spec.RSAPublicKeySpec; -import java.util.ArrayList; - -class GnuRSAPublicKey implements RSAPublicKey -{ - - // Fields. - // ------------------------------------------------------------------------- - - private final RSAPublicKeySpec spec; - private byte[] encodedKey; - - // Constructor. - // ------------------------------------------------------------------------- - - public GnuRSAPublicKey(RSAPublicKeySpec spec) - { - this.spec = spec; - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public BigInteger getModulus() - { - return spec.getModulus(); - } - - public BigInteger getPublicExponent() - { - return spec.getPublicExponent(); - } - - public String getAlgorithm() - { - return "RSA"; - } - - public String getFormat() - { - return "X.509"; - } - - public byte[] getEncoded() - { - if (encodedKey != null) - return (byte[]) encodedKey.clone(); - ArrayList key = new ArrayList(2); - key.add(new DERValue(DER.INTEGER, getModulus())); - key.add(new DERValue(DER.INTEGER, getPublicExponent())); - DERValue rsapk = new DERValue(DER.SEQUENCE|DER.CONSTRUCTED, key); - ArrayList alg = new ArrayList(2); - alg.add(new DERValue(DER.OBJECT_IDENTIFIER, - new OID("1.2.840.113549.1.1.1"))); - alg.add(new DERValue(DER.NULL, null)); - ArrayList spki = new ArrayList(2); - spki.add(new DERValue(DER.SEQUENCE|DER.CONSTRUCTED, alg)); - spki.add(new DERValue(DER.BIT_STRING, new BitString(rsapk.getEncoded()))); - encodedKey = new DERValue(DER.SEQUENCE|DER.CONSTRUCTED, spki).getEncoded(); - return (byte[]) encodedKey.clone(); - } -} diff --git a/libjava/gnu/java/security/provider/MD2withRSA.java b/libjava/gnu/java/security/provider/MD2withRSA.java deleted file mode 100644 index a72ae5588dc..00000000000 --- a/libjava/gnu/java/security/provider/MD2withRSA.java +++ /dev/null @@ -1,54 +0,0 @@ -/* MD2withRSA.java -- MD2 with RSA encryption signatures. - 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.java.security.provider; - -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; - -public class MD2withRSA extends RSA -{ - - // Constructor. - // ------------------------------------------------------------------------- - - public MD2withRSA() throws NoSuchAlgorithmException - { - super(MessageDigest.getInstance("MD2"), DIGEST_ALGORITHM.getChild(2)); - } -} diff --git a/libjava/gnu/java/security/provider/MD4withRSA.java b/libjava/gnu/java/security/provider/MD4withRSA.java deleted file mode 100644 index 76a6a1ad033..00000000000 --- a/libjava/gnu/java/security/provider/MD4withRSA.java +++ /dev/null @@ -1,54 +0,0 @@ -/* MD4withRSA.java -- MD4 with RSA encryption signatures. - 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.java.security.provider; - -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; - -public class MD4withRSA extends RSA -{ - - // Constructor. - // ------------------------------------------------------------------------- - - public MD4withRSA() throws NoSuchAlgorithmException - { - super(MessageDigest.getInstance("MD4"), DIGEST_ALGORITHM.getChild(4)); - } -} diff --git a/libjava/gnu/java/security/provider/MD5.java b/libjava/gnu/java/security/provider/MD5.java deleted file mode 100644 index 1534eb91089..00000000000 --- a/libjava/gnu/java/security/provider/MD5.java +++ /dev/null @@ -1,338 +0,0 @@ -/* MD5.java -- Class implementing the MD5 algorithm as specified in RFC1321. - Copyright (C) 1999, 2002 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.java.security.provider; -import java.security.MessageDigest; - -/** - This class implements the MD5 algorithm as described in RFC1321. - - @see java.security.MessageDigest -*/ -public class MD5 extends MessageDigest implements Cloneable -{ - private final int W[] = new int[16]; - private long bytecount; - private int A; - private int B; - private int C; - private int D; - - public MD5() - { - super("MD5"); - engineReset (); - } - - public Object clone() - { - return new MD5 (this); - } - - private MD5 (MD5 copy) - { - this (); - bytecount = copy.bytecount; - A = copy.A; - B = copy.B; - C = copy.C; - D = copy.D; - System.arraycopy (copy.W, 0, W, 0, 16); - } - - public int engineGetDigestLength() - { - return 16; - } - - // Intialize the A,B,C,D needed for the hash - public void engineReset() - { - bytecount = 0; - A = 0x67452301; - B = 0xefcdab89; - C = 0x98badcfe; - D = 0x10325476; - for(int i = 0; i < 16; i++) - W[i] = 0; - } - - public void engineUpdate (byte b) - { - int i = (int)bytecount % 64; - int shift = (3 - i % 4) * 8; - int idx = i / 4; - - // if you could index ints, this would be: W[idx][shift/8] = b - W[idx] = (W[idx] & ~(0xff << shift)) | ((b & 0xff) << shift); - - // if we've filled up a block, then process it - if ((++ bytecount) % 64 == 0) - munch (); - } - - public void engineUpdate (byte bytes[], int off, int len) - { - if (len < 0) - throw new ArrayIndexOutOfBoundsException (); - - int end = off + len; - while (off < end) - engineUpdate (bytes[off++]); - } - - public byte[] engineDigest() - { - long bitcount = bytecount * 8; - engineUpdate ((byte)0x80); // 10000000 in binary; the start of the padding - - // add the rest of the padding to fill this block out, but leave 8 - // bytes to put in the original bytecount - while ((int)bytecount % 64 != 56) - engineUpdate ((byte)0); - - // add the length of the original, unpadded block to the end of - // the padding - W[14] = SWAP((int)(0xffffffff & bitcount)); - W[15] = SWAP((int)(0xffffffff & (bitcount >>> 32))); - bytecount += 8; - - // digest the fully padded block - munch (); - - A = SWAP(A); - B = SWAP(B); - C = SWAP(C); - D = SWAP(D); - byte[] result = new byte[] {(byte)(A >>> 24), (byte)(A >>> 16), - (byte)(A >>> 8), (byte)A, - (byte)(B >>> 24), (byte)(B >>> 16), - (byte)(B >>> 8), (byte)B, - (byte)(C >>> 24), (byte)(C >>> 16), - (byte)(C >>> 8), (byte)C, - (byte)(D >>> 24), (byte)(D >>> 16), - (byte)(D >>> 8), (byte)D}; - - engineReset (); - return result; - } - - private int F( int X, int Y, int Z) - { - return ((X & Y) | (~X & Z)); - } - - private int G( int X, int Y, int Z) - { - return ((X & Z) | (Y & ~Z)); - } - - private int H( int X, int Y, int Z) - { - return (X ^ Y ^ Z); - } - - private int I( int X, int Y, int Z) - { - return (Y ^ (X | ~Z)); - } - - private int rotateLeft( int i, int count) - { - //Taken from FIPS 180-1 - return ( (i << count) | (i >>> (32 - count)) ) ; - } - - /* Round 1. */ - private int FF( int a, int b, int c, int d, int k, int s, int i) - { - /* Let [abcd k s i] denote the operation */ - a += F(b,c,d) + k + i; - return b + rotateLeft(a, s); - } - /* Round 2. */ - private int GG( int a, int b, int c, int d, int k, int s, int i) - { - /* Let [abcd k s i] denote the operation */ - a += G(b,c,d) + k + i; - return b + rotateLeft(a, s); - } - /* Round 3. */ - private int HH( int a, int b, int c, int d, int k, int s, int i) - { - /* Let [abcd k s t] denote the operation */ - a += H(b,c,d) + k + i; - return b + rotateLeft(a, s); - } - - /* Round 4. */ - private int II( int a, int b, int c, int d, int k, int s, int i) - { - /* Let [abcd k s t] denote the operation */ - a += I(b,c,d) + k + i; - return b + rotateLeft(a, s); - } - - private int SWAP(int n) - { - //Copied from md5.c in FSF Gnu Privacy Guard 0.9.2 - return (( (0xff & n) << 24) | ((n & 0xff00) << 8) | ((n >>> 8) & 0xff00) | (n >>> 24)); - } - - private void munch() - { - int AA,BB,CC,DD, j; - int X[] = new int[16]; - - /* Copy block i into X. */ - for(j = 0; j < 16; j++) - X[j] = SWAP(W[j]); - - /* Save A as AA, B as BB, C as CC, and D as DD. */ - AA = A; - BB = B; - CC = C; - DD = D; - - /* The hex constants are from md5.c - in FSF Gnu Privacy Guard 0.9.2 */ - /* Round 1. */ - /* Let [abcd k s i] denote the operation - a = b + ((a + F(b,c,d) + X[k] + T[i]) <<< s). */ - /* Do the following 16 operations. */ - A = FF(A,B,C,D, X[0], 7, 0xd76aa478); - D = FF(D,A,B,C, X[1], 12, 0xe8c7b756); - C = FF(C,D,A,B, X[2], 17, 0x242070db); - B = FF(B,C,D,A, X[3], 22, 0xc1bdceee); - - A = FF(A,B,C,D, X[4], 7, 0xf57c0faf); - D = FF(D,A,B,C, X[5], 12, 0x4787c62a); - C = FF(C,D,A,B, X[6], 17, 0xa8304613); - B = FF(B,C,D,A, X[7], 22, 0xfd469501); - - A = FF(A,B,C,D, X[8], 7, 0x698098d8); - D = FF(D,A,B,C, X[9], 12, 0x8b44f7af); - C = FF(C,D,A,B, X[10], 17, 0xffff5bb1); - B = FF(B,C,D,A, X[11], 22, 0x895cd7be); - - A = FF(A,B,C,D, X[12], 7, 0x6b901122); - D = FF(D,A,B,C, X[13], 12, 0xfd987193); - C = FF(C,D,A,B, X[14], 17, 0xa679438e); - B = FF(B,C,D,A, X[15], 22, 0x49b40821); - - /* Round 2. */ - /* Let [abcd k s i] denote the operation - a = b + ((a + G(b,c,d) + X[k] + T[i]) <<< s). */ - /* Do the following 16 operations. */ - A = GG(A,B,C,D, X[1], 5, 0xf61e2562); - D = GG(D,A,B,C, X[6], 9, 0xc040b340); - C = GG(C,D,A,B, X[11], 14, 0x265e5a51); - B = GG(B,C,D,A, X[0], 20, 0xe9b6c7aa); - - A = GG(A,B,C,D, X[5], 5, 0xd62f105d); - D = GG(D,A,B,C, X[10], 9, 0x02441453); - C = GG(C,D,A,B, X[15], 14, 0xd8a1e681); - B = GG(B,C,D,A, X[4], 20, 0xe7d3fbc8); - - A = GG(A,B,C,D, X[9], 5, 0x21e1cde6); - D = GG(D,A,B,C, X[14], 9, 0xc33707d6); - C = GG(C,D,A,B, X[3], 14, 0xf4d50d87); - B = GG(B,C,D,A, X[8], 20, 0x455a14ed); - - A = GG(A,B,C,D, X[13], 5, 0xa9e3e905); - D = GG(D,A,B,C, X[2], 9, 0xfcefa3f8); - C = GG(C,D,A,B, X[7], 14, 0x676f02d9); - B = GG(B,C,D,A, X[12], 20, 0x8d2a4c8a); - - /* Round 3. */ - /* Let [abcd k s t] denote the operation - a = b + ((a + H(b,c,d) + X[k] + T[i]) <<< s). */ - /* Do the following 16 operations. */ - A = HH(A,B,C,D, X[5], 4, 0xfffa3942); - D = HH(D,A,B,C, X[8], 11, 0x8771f681); - C = HH(C,D,A,B, X[11], 16, 0x6d9d6122); - B = HH(B,C,D,A, X[14], 23, 0xfde5380c); - - A = HH(A,B,C,D, X[1], 4, 0xa4beea44); - D = HH(D,A,B,C, X[4], 11, 0x4bdecfa9); - C = HH(C,D,A,B, X[7], 16, 0xf6bb4b60); - B = HH(B,C,D,A, X[10], 23, 0xbebfbc70); - - A = HH(A,B,C,D, X[13], 4, 0x289b7ec6); - D = HH(D,A,B,C, X[0], 11, 0xeaa127fa); - C = HH(C,D,A,B, X[3], 16, 0xd4ef3085); - B = HH(B,C,D,A, X[6], 23, 0x04881d05); - - A = HH(A,B,C,D, X[9], 4, 0xd9d4d039); - D = HH(D,A,B,C, X[12], 11, 0xe6db99e5); - C = HH(C,D,A,B, X[15], 16, 0x1fa27cf8); - B = HH(B,C,D,A, X[2], 23, 0xc4ac5665); - - /* Round 4. */ - /* Let [abcd k s t] denote the operation - a = b + ((a + I(b,c,d) + X[k] + T[i]) <<< s). */ - /* Do the following 16 operations. */ - A = II(A,B,C,D, X[0], 6, 0xf4292244); - D = II(D,A,B,C, X[7], 10, 0x432aff97); - C = II(C,D,A,B, X[14], 15, 0xab9423a7); - B = II(B,C,D,A, X[5], 21, 0xfc93a039); - - A = II(A,B,C,D, X[12], 6, 0x655b59c3); - D = II(D,A,B,C, X[3], 10, 0x8f0ccc92); - C = II(C,D,A,B, X[10], 15, 0xffeff47d); - B = II(B,C,D,A, X[1], 21, 0x85845dd1); - - A = II(A,B,C,D, X[8], 6, 0x6fa87e4f); - D = II(D,A,B,C, X[15], 10, 0xfe2ce6e0); - C = II(C,D,A,B, X[6], 15, 0xa3014314); - B = II(B,C,D,A, X[13], 21, 0x4e0811a1); - - A = II(A,B,C,D, X[4], 6, 0xf7537e82); - D = II(D,A,B,C, X[11], 10, 0xbd3af235); - C = II(C,D,A,B, X[2], 15, 0x2ad7d2bb); - B = II(B,C,D,A, X[9], 21, 0xeb86d391); - - /* Then perform the following additions. (That is increment each - of the four registers by the value it had before this block - was started.) */ - A = A + AA; - B = B + BB; - C = C + CC; - D = D + DD; - } -} diff --git a/libjava/gnu/java/security/provider/MD5withRSA.java b/libjava/gnu/java/security/provider/MD5withRSA.java deleted file mode 100644 index 721d897ed24..00000000000 --- a/libjava/gnu/java/security/provider/MD5withRSA.java +++ /dev/null @@ -1,54 +0,0 @@ -/* MD5withRSA.java -- MD5 with RSA encryption signatures. - 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.java.security.provider; - -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; - -public class MD5withRSA extends RSA -{ - - // Constructor. - // ------------------------------------------------------------------------- - - public MD5withRSA() throws NoSuchAlgorithmException - { - super(MessageDigest.getInstance("MD5"), DIGEST_ALGORITHM.getChild(5)); - } -} diff --git a/libjava/gnu/java/security/provider/PKIXCertPathValidatorImpl.java b/libjava/gnu/java/security/provider/PKIXCertPathValidatorImpl.java deleted file mode 100644 index 1268b169d9b..00000000000 --- a/libjava/gnu/java/security/provider/PKIXCertPathValidatorImpl.java +++ /dev/null @@ -1,701 +0,0 @@ -/* PKIXCertPathValidatorImpl.java -- PKIX certificate path validator. - 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.java.security.provider; - -import gnu.java.security.OID; -import gnu.java.security.x509.GnuPKIExtension; -import gnu.java.security.x509.PolicyNodeImpl; -import gnu.java.security.x509.X509CRLSelectorImpl; -import gnu.java.security.x509.X509CertSelectorImpl; -import gnu.java.security.x509.ext.BasicConstraints; -import gnu.java.security.x509.ext.CertificatePolicies; -import gnu.java.security.x509.ext.Extension; -import gnu.java.security.x509.ext.KeyUsage; -import gnu.java.security.x509.ext.PolicyConstraint; - -import java.io.IOException; -import java.security.InvalidAlgorithmParameterException; -import java.security.InvalidKeyException; -import java.security.PublicKey; -import java.security.cert.CRL; -import java.security.cert.CertPath; -import java.security.cert.CertPathParameters; -import java.security.cert.CertPathValidatorException; -import java.security.cert.CertPathValidatorResult; -import java.security.cert.CertPathValidatorSpi; -import java.security.cert.CertStore; -import java.security.cert.CertStoreException; -import java.security.cert.CertificateException; -import java.security.cert.PKIXCertPathChecker; -import java.security.cert.PKIXCertPathValidatorResult; -import java.security.cert.PKIXParameters; -import java.security.cert.TrustAnchor; -import java.security.cert.X509CRL; -import java.security.cert.X509Certificate; -import java.security.interfaces.DSAParams; -import java.security.interfaces.DSAPublicKey; -import java.util.Arrays; -import java.util.Collection; -import java.util.Collections; -import java.util.Date; -import java.util.HashSet; -import java.util.Iterator; -import java.util.LinkedList; -import java.util.List; -import java.util.Set; - -/** - * An implementation of the Public Key Infrastructure's X.509 - * certificate path validation algorithm. - * - *

See RFC 3280: - * Internet X.509 Public Key Infrastructure Certificate and - * Certificate Revocation List (CRL) Profile. - * - * @author Casey Marshall (rsdio@metastatic.org) - */ -public class PKIXCertPathValidatorImpl extends CertPathValidatorSpi -{ - - // Constants. - // ------------------------------------------------------------------------- - - private static final boolean DEBUG = false; - private static void debug (String msg) - { - System.err.print (">> PKIXCertPathValidatorImpl: "); - System.err.println (msg); - } - - public static final String ANY_POLICY = "2.5.29.32.0"; - - // Constructor. - // ------------------------------------------------------------------------- - - public PKIXCertPathValidatorImpl() - { - super(); - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public CertPathValidatorResult engineValidate(CertPath path, - CertPathParameters params) - throws CertPathValidatorException, InvalidAlgorithmParameterException - { - if (!(params instanceof PKIXParameters)) - throw new InvalidAlgorithmParameterException("not a PKIXParameters object"); - - // First check if the certificate path is valid. - // - // This means that: - // - // (a) for all x in {1, ..., n-1}, the subject of certificate x is - // the issuer of certificate x+1; - // - // (b) for all x in {1, ..., n}, the certificate was valid at the - // time in question. - // - // Because this is the X.509 algorithm, we also check if all - // cerificates are of type X509Certificate. - - PolicyNodeImpl rootNode = new PolicyNodeImpl(); - Set initPolicies = ((PKIXParameters) params).getInitialPolicies(); - rootNode.setValidPolicy(ANY_POLICY); - rootNode.setCritical(false); - rootNode.setDepth(0); - if (initPolicies != null) - rootNode.addAllExpectedPolicies(initPolicies); - else - rootNode.addExpectedPolicy(ANY_POLICY); - List checks = ((PKIXParameters) params).getCertPathCheckers(); - List l = path.getCertificates(); - if (l == null || l.size() == 0) - throw new CertPathValidatorException(); - X509Certificate[] p = null; - try - { - p = (X509Certificate[]) l.toArray(new X509Certificate[l.size()]); - } - catch (ClassCastException cce) - { - throw new CertPathValidatorException("invalid certificate path"); - } - - String sigProvider = ((PKIXParameters) params).getSigProvider(); - PublicKey prevKey = null; - Date now = ((PKIXParameters) params).getDate(); - if (now == null) - now = new Date(); - LinkedList policyConstraints = new LinkedList(); - for (int i = p.length - 1; i >= 0; i--) - { - try - { - p[i].checkValidity(now); - } - catch (CertificateException ce) - { - throw new CertPathValidatorException(ce.toString()); - } - Set uce = getCritExts(p[i]); - for (Iterator check = checks.iterator(); check.hasNext(); ) - { - try - { - ((PKIXCertPathChecker) check.next()).check(p[i], uce); - } - catch (Exception x) - { - } - } - - PolicyConstraint constr = null; - if (p[i] instanceof GnuPKIExtension) - { - Extension pcx = - ((GnuPKIExtension) p[i]).getExtension (PolicyConstraint.ID); - if (pcx != null) - constr = (PolicyConstraint) pcx.getValue(); - } - else - { - byte[] pcx = p[i].getExtensionValue (PolicyConstraint.ID.toString()); - if (pcx != null) - { - try - { - constr = new PolicyConstraint (pcx); - } - catch (Exception x) - { - } - } - } - if (constr != null && constr.getRequireExplicitPolicy() >= 0) - { - policyConstraints.add (new int[] - { p.length-i, constr.getRequireExplicitPolicy() }); - } - - updatePolicyTree(p[i], rootNode, p.length-i, (PKIXParameters) params, - checkExplicitPolicy (p.length-i, policyConstraints)); - - // The rest of the tests involve this cert's relationship with the - // next in the path. If this cert is the end entity, we can stop. - if (i == 0) - break; - - basicSanity(p, i); - PublicKey pubKey = null; - try - { - pubKey = p[i].getPublicKey(); - if (pubKey instanceof DSAPublicKey) - { - DSAParams dsa = ((DSAPublicKey) pubKey).getParams(); - // If the DSA public key is missing its parameters, use those - // from the previous cert's key. - if (dsa == null || dsa.getP() == null || dsa.getG() == null - || dsa.getQ() == null) - { - if (prevKey == null) - throw new InvalidKeyException("DSA keys not chainable"); - if (!(prevKey instanceof DSAPublicKey)) - throw new InvalidKeyException("DSA keys not chainable"); - dsa = ((DSAPublicKey) prevKey).getParams(); - pubKey = new GnuDSAPublicKey(((DSAPublicKey) pubKey).getY(), - dsa.getP(), dsa.getQ(), dsa.getG()); - } - } - if (sigProvider == null) - p[i-1].verify(pubKey); - else - p[i-1].verify(pubKey, sigProvider); - prevKey = pubKey; - } - catch (Exception e) - { - throw new CertPathValidatorException(e.toString()); - } - if (!p[i].getSubjectDN().equals(p[i-1].getIssuerDN())) - throw new CertPathValidatorException("issuer DN mismatch"); - boolean[] issuerUid = p[i-1].getIssuerUniqueID(); - boolean[] subjectUid = p[i].getSubjectUniqueID(); - if (issuerUid != null && subjectUid != null) - if (!Arrays.equals(issuerUid, subjectUid)) - throw new CertPathValidatorException("UID mismatch"); - - // Check the certificate against the revocation lists. - if (((PKIXParameters) params).isRevocationEnabled()) - { - X509CRLSelectorImpl selector = new X509CRLSelectorImpl(); - try - { - selector.addIssuerName(p[i].getSubjectDN()); - } - catch (IOException ioe) - { - throw new CertPathValidatorException("error selecting CRLs"); - } - List certStores = ((PKIXParameters) params).getCertStores(); - List crls = new LinkedList(); - for (Iterator it = certStores.iterator(); it.hasNext(); ) - { - CertStore cs = (CertStore) it.next(); - try - { - Collection c = cs.getCRLs(selector); - crls.addAll(c); - } - catch (CertStoreException cse) - { - } - } - if (crls.isEmpty()) - throw new CertPathValidatorException("no CRLs for issuer"); - boolean certOk = false; - for (Iterator it = crls.iterator(); it.hasNext(); ) - { - CRL crl = (CRL) it.next(); - if (!(crl instanceof X509CRL)) - continue; - X509CRL xcrl = (X509CRL) crl; - if (!checkCRL(xcrl, p, now, p[i], pubKey, certStores)) - continue; - if (xcrl.isRevoked(p[i-1])) - throw new CertPathValidatorException("certificate is revoked"); - else - certOk = true; - } - if (!certOk) - throw new CertPathValidatorException("certificate's validity could not be determined"); - } - } - rootNode.setReadOnly(); - - // Now ensure that the first certificate in the chain was issued - // by a trust anchor. - Exception cause = null; - Set anchors = ((PKIXParameters) params).getTrustAnchors(); - for (Iterator i = anchors.iterator(); i.hasNext(); ) - { - TrustAnchor anchor = (TrustAnchor) i.next(); - X509Certificate anchorCert = null; - PublicKey anchorKey = null; - if (anchor.getTrustedCert() != null) - { - anchorCert = anchor.getTrustedCert(); - anchorKey = anchorCert.getPublicKey(); - } - else - anchorKey = anchor.getCAPublicKey(); - if (anchorKey == null) - continue; - try - { - if (anchorCert == null) - anchorCert.checkValidity(now); - p[p.length-1].verify(anchorKey); - if (anchorCert != null && anchorCert.getBasicConstraints() >= 0 - && anchorCert.getBasicConstraints() < p.length) - continue; - - if (((PKIXParameters) params).isRevocationEnabled()) - { - X509CRLSelectorImpl selector = new X509CRLSelectorImpl(); - if (anchorCert != null) - try - { - selector.addIssuerName(anchorCert.getSubjectDN()); - } - catch (IOException ioe) - { - } - else - selector.addIssuerName(anchor.getCAName()); - List certStores = ((PKIXParameters) params).getCertStores(); - List crls = new LinkedList(); - for (Iterator it = certStores.iterator(); it.hasNext(); ) - { - CertStore cs = (CertStore) it.next(); - try - { - Collection c = cs.getCRLs(selector); - crls.addAll(c); - } - catch (CertStoreException cse) - { - } - } - if (crls.isEmpty()) - continue; - for (Iterator it = crls.iterator(); it.hasNext(); ) - { - CRL crl = (CRL) it.next(); - if (!(crl instanceof X509CRL)) - continue; - X509CRL xcrl = (X509CRL) crl; - try - { - xcrl.verify(anchorKey); - } - catch (Exception x) - { - continue; - } - Date nextUpdate = xcrl.getNextUpdate(); - if (nextUpdate != null && nextUpdate.compareTo(now) < 0) - continue; - if (xcrl.isRevoked(p[p.length-1])) - throw new CertPathValidatorException("certificate is revoked"); - } - } - - // The chain is valid; return the result. - return new PKIXCertPathValidatorResult(anchor, rootNode, - p[0].getPublicKey()); - } - catch (Exception ignored) - { - cause = ignored; - continue; - } - } - - // The path is not valid. - CertPathValidatorException cpve = - new CertPathValidatorException("path validation failed"); - if (cause != null) - cpve.initCause (cause); - throw cpve; - } - - // Own methods. - // ------------------------------------------------------------------------- - - /** - * Check if a given CRL is acceptable for checking the revocation status - * of certificates in the path being checked. - * - *

The CRL is accepted iff:

- * - *
    - *
  1. The nextUpdate field (if present) is in the future.
  2. - *
  3. The CRL does not contain any unsupported critical extensions.
  4. - *
  5. The CRL is signed by one of the certificates in the path, or,
  6. - *
  7. The CRL is signed by the given public key and was issued by the - * public key's subject, or,
  8. - *
  9. The CRL is signed by a certificate in the given cert stores, and - * that cert is signed by one of the certificates in the path.
  10. - *
- * - * @param crl The CRL being checked. - * @param path The path this CRL is being checked against. - * @param now The value to use as 'now'. - * @param pubKeySubject The subject of the public key. - * @param pubKey The public key to check. - * @return True if the CRL is acceptable. - */ - private static boolean checkCRL(X509CRL crl, X509Certificate[] path, Date now, - X509Certificate pubKeyCert, PublicKey pubKey, - List certStores) - { - Date nextUpdate = crl.getNextUpdate(); - if (nextUpdate != null && nextUpdate.compareTo(now) < 0) - return false; - if (crl.hasUnsupportedCriticalExtension()) - return false; - for (int i = 0; i < path.length; i++) - { - if (!path[i].getSubjectDN().equals(crl.getIssuerDN())) - continue; - boolean[] keyUsage = path[i].getKeyUsage(); - if (keyUsage != null) - { - if (!keyUsage[KeyUsage.CRL_SIGN]) - continue; - } - try - { - crl.verify(path[i].getPublicKey()); - return true; - } - catch (Exception x) - { - } - } - if (crl.getIssuerDN().equals(pubKeyCert.getSubjectDN())) - { - try - { - boolean[] keyUsage = pubKeyCert.getKeyUsage(); - if (keyUsage != null) - { - if (!keyUsage[KeyUsage.CRL_SIGN]) - throw new Exception(); - } - crl.verify(pubKey); - return true; - } - catch (Exception x) - { - } - } - try - { - X509CertSelectorImpl select = new X509CertSelectorImpl(); - select.addSubjectName(crl.getIssuerDN()); - List certs = new LinkedList(); - for (Iterator it = certStores.iterator(); it.hasNext(); ) - { - CertStore cs = (CertStore) it.next(); - try - { - certs.addAll(cs.getCertificates(select)); - } - catch (CertStoreException cse) - { - } - } - for (Iterator it = certs.iterator(); it.hasNext(); ) - { - X509Certificate c = (X509Certificate) it.next(); - for (int i = 0; i < path.length; i++) - { - if (!c.getIssuerDN().equals(path[i].getSubjectDN())) - continue; - boolean[] keyUsage = c.getKeyUsage(); - if (keyUsage != null) - { - if (!keyUsage[KeyUsage.CRL_SIGN]) - continue; - } - try - { - c.verify(path[i].getPublicKey()); - crl.verify(c.getPublicKey()); - return true; - } - catch (Exception x) - { - } - } - if (c.getIssuerDN().equals(pubKeyCert.getSubjectDN())) - { - c.verify(pubKey); - crl.verify(c.getPublicKey()); - } - } - } - catch (Exception x) - { - } - return false; - } - - private static Set getCritExts(X509Certificate cert) - { - HashSet s = new HashSet(); - if (cert instanceof GnuPKIExtension) - { - Collection exts = ((GnuPKIExtension) cert).getExtensions(); - for (Iterator it = exts.iterator(); it.hasNext(); ) - { - Extension ext = (Extension) it.next(); - if (ext.isCritical() && !ext.isSupported()) - s.add(ext.getOid().toString()); - } - } - else - s.addAll(cert.getCriticalExtensionOIDs()); - return s; - } - - /** - * Perform a basic sanity check on the CA certificate at index. - */ - private static void basicSanity(X509Certificate[] path, int index) - throws CertPathValidatorException - { - X509Certificate cert = path[index]; - int pathLen = 0; - for (int i = index - 1; i > 0; i--) - { - if (!path[i].getIssuerDN().equals(path[i].getSubjectDN())) - pathLen++; - } - Extension e = null; - if (cert instanceof GnuPKIExtension) - { - e = ((GnuPKIExtension) cert).getExtension(BasicConstraints.ID); - } - else - { - try - { - e = new Extension(cert.getExtensionValue(BasicConstraints.ID.toString())); - } - catch (Exception x) - { - } - } - if (e == null) - throw new CertPathValidatorException("no basicConstraints"); - BasicConstraints bc = (BasicConstraints) e.getValue(); - if (!bc.isCA()) - throw new CertPathValidatorException("certificate cannot be used to verify signatures"); - if (bc.getPathLengthConstraint() >= 0 && bc.getPathLengthConstraint() < pathLen) - throw new CertPathValidatorException("path is too long"); - - boolean[] keyUsage = cert.getKeyUsage(); - if (keyUsage != null) - { - if (!keyUsage[KeyUsage.KEY_CERT_SIGN]) - throw new CertPathValidatorException("certificate cannot be used to sign certificates"); - } - } - - private static void updatePolicyTree(X509Certificate cert, PolicyNodeImpl root, - int depth, PKIXParameters params, - boolean explicitPolicy) - throws CertPathValidatorException - { - if (DEBUG) debug("updatePolicyTree depth == " + depth); - Set nodes = new HashSet(); - LinkedList stack = new LinkedList(); - Iterator current = null; - stack.addLast(Collections.singleton(root).iterator()); - do - { - current = (Iterator) stack.removeLast(); - while (current.hasNext()) - { - PolicyNodeImpl p = (PolicyNodeImpl) current.next(); - if (DEBUG) debug("visiting node == " + p); - if (p.getDepth() == depth - 1) - { - if (DEBUG) debug("added node"); - nodes.add(p); - } - else - { - if (DEBUG) debug("skipped node"); - stack.addLast(current); - current = p.getChildren(); - } - } - } - while (!stack.isEmpty()); - - Extension e = null; - CertificatePolicies policies = null; - List qualifierInfos = null; - if (cert instanceof GnuPKIExtension) - { - e = ((GnuPKIExtension) cert).getExtension(CertificatePolicies.ID); - if (e != null) - policies = (CertificatePolicies) e.getValue(); - } - - List cp = null; - if (policies != null) - cp = policies.getPolicies(); - else - cp = Collections.EMPTY_LIST; - boolean match = false; - if (DEBUG) debug("nodes are == " + nodes); - if (DEBUG) debug("cert policies are == " + cp); - for (Iterator it = nodes.iterator(); it.hasNext(); ) - { - PolicyNodeImpl parent = (PolicyNodeImpl) it.next(); - if (DEBUG) debug("adding policies to " + parent); - for (Iterator it2 = cp.iterator(); it2.hasNext(); ) - { - OID policy = (OID) it2.next(); - if (DEBUG) debug("trying to add policy == " + policy); - if (policy.toString().equals(ANY_POLICY) && - params.isAnyPolicyInhibited()) - continue; - PolicyNodeImpl child = new PolicyNodeImpl(); - child.setValidPolicy(policy.toString()); - child.addExpectedPolicy(policy.toString()); - if (parent.getExpectedPolicies().contains(policy.toString())) - { - parent.addChild(child); - match = true; - } - else if (parent.getExpectedPolicies().contains(ANY_POLICY)) - { - parent.addChild(child); - match = true; - } - else if (ANY_POLICY.equals (policy.toString())) - { - parent.addChild (child); - match = true; - } - if (match && policies != null) - { - List qualifiers = policies.getPolicyQualifierInfos (policy); - if (qualifiers != null) - child.addAllPolicyQualifiers (qualifiers); - } - } - } - if (!match && (params.isExplicitPolicyRequired() || explicitPolicy)) - throw new CertPathValidatorException("policy tree building failed"); - } - - private boolean checkExplicitPolicy (int depth, List explicitPolicies) - { - if (DEBUG) debug ("checkExplicitPolicy depth=" + depth); - for (Iterator it = explicitPolicies.iterator(); it.hasNext(); ) - { - int[] i = (int[]) it.next(); - int caDepth = i[0]; - int limit = i[1]; - if (DEBUG) debug (" caDepth=" + caDepth + " limit=" + limit); - if (depth - caDepth >= limit) - return true; - } - return false; - } -} diff --git a/libjava/gnu/java/security/provider/RSA.java b/libjava/gnu/java/security/provider/RSA.java deleted file mode 100644 index c3cfbbf79f1..00000000000 --- a/libjava/gnu/java/security/provider/RSA.java +++ /dev/null @@ -1,311 +0,0 @@ -/* RSA.java -- RSA PKCS#1 signatures. - 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.java.security.provider; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; -import gnu.java.security.der.DERWriter; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.math.BigInteger; -import java.security.InvalidKeyException; -import java.security.MessageDigest; -import java.security.PrivateKey; -import java.security.PublicKey; -import java.security.SecureRandom; -import java.security.SignatureException; -import java.security.SignatureSpi; -import java.security.interfaces.RSAPrivateKey; -import java.security.interfaces.RSAPublicKey; -import java.util.ArrayList; - -public abstract class RSA extends SignatureSpi implements Cloneable -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - /** - * digestAlgorithm OBJECT IDENTIFIER ::= - * { iso(1) member-body(2) US(840) rsadsi(113549) digestAlgorithm(2) } - */ - protected static final OID DIGEST_ALGORITHM = new OID("1.2.840.113549.2"); - - protected final OID digestAlgorithm; - protected final MessageDigest md; - protected RSAPrivateKey signerKey; - protected RSAPublicKey verifierKey; - - // Constructor. - // ------------------------------------------------------------------------- - - protected RSA(MessageDigest md, OID digestAlgorithm) - { - super(); - this.md = md; - this.digestAlgorithm = digestAlgorithm; - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public Object clone() throws CloneNotSupportedException - { - return super.clone(); - } - - protected Object engineGetParameter(String param) - { - throw new UnsupportedOperationException("deprecated"); - } - - protected void engineSetParameter(String param, Object value) - { - throw new UnsupportedOperationException("deprecated"); - } - - protected void engineInitSign(PrivateKey privateKey) - throws InvalidKeyException - { - if (!(privateKey instanceof RSAPrivateKey)) - throw new InvalidKeyException(); - verifierKey = null; - signerKey = (RSAPrivateKey) privateKey; - } - - protected void engineInitSign(PrivateKey privateKey, SecureRandom random) - throws InvalidKeyException - { - // This class does not need random bytes. - engineInitSign(privateKey); - } - - protected void engineInitVerify(PublicKey publicKey) - throws InvalidKeyException - { - if (!(publicKey instanceof RSAPublicKey)) - throw new InvalidKeyException(); - signerKey = null; - verifierKey = (RSAPublicKey) publicKey; - } - - protected void engineUpdate(byte b) throws SignatureException - { - if (signerKey == null && verifierKey == null) - throw new SignatureException("not initialized"); - md.update(b); - } - - protected void engineUpdate(byte[] buf, int off, int len) - throws SignatureException - { - if (signerKey == null && verifierKey == null) - throw new SignatureException("not initialized"); - md.update(buf, off, len); - } - - protected byte[] engineSign() throws SignatureException - { - if (signerKey == null) - throw new SignatureException("not initialized for signing"); - // - // The signature will be the RSA encrypted BER representation of - // the following: - // - // DigestInfo ::= SEQUENCE { - // digestAlgorithm DigestAlgorithmIdentifier, - // digest Digest } - // - // DigestAlgorithmIdentifier ::= AlgorithmIdentifier - // - // Digest ::= OCTET STRING - // - ArrayList digestAlg = new ArrayList(2); - digestAlg.add(new DERValue(DER.OBJECT_IDENTIFIER, digestAlgorithm)); - digestAlg.add(new DERValue(DER.NULL, null)); - ArrayList digestInfo = new ArrayList(2); - digestInfo.add(new DERValue(DER.SEQUENCE, digestAlg)); - digestInfo.add(new DERValue(DER.OCTET_STRING, md.digest())); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - try - { - DERWriter.write(out, new DERValue(DER.SEQUENCE, digestInfo)); - } - catch (IOException ioe) - { - throw new SignatureException(ioe.toString()); - } - byte[] buf = out.toByteArray(); - md.reset(); - - // k = octect length of the modulus. - int k = signerKey.getModulus().bitLength(); - k = (k >>> 3) + ((k & 7) == 0 ? 0 : 1); - if (buf.length < k - 3) - { - throw new SignatureException("RSA modulus too small"); - } - byte[] d = new byte[k]; - - // Padding type 1: - // 00 | 01 | FF | ... | FF | 00 | D - d[1] = 0x01; - for (int i = 2; i < k - buf.length - 1; i++) - d[i] = (byte) 0xFF; - System.arraycopy(buf, 0, d, k - buf.length, buf.length); - - BigInteger eb = new BigInteger(d); - - byte[] ed = eb.modPow(signerKey.getPrivateExponent(), - signerKey.getModulus()).toByteArray(); - - // Ensure output is k octets long. - if (ed.length < k) - { - byte[] b = new byte[k]; - System.arraycopy(eb, 0, b, k - ed.length, ed.length); - ed = b; - } - else if (ed.length > k) - { - if (ed.length != k + 1) - { - throw new SignatureException("modPow result is larger than the modulus"); - } - // Maybe an extra 00 octect. - byte[] b = new byte[k]; - System.arraycopy(ed, 1, b, 0, k); - ed = b; - } - - return ed; - } - - protected int engineSign(byte[] out, int off, int len) - throws SignatureException - { - if (out == null || off < 0 || len < 0 || off+len > out.length) - throw new SignatureException("illegal output argument"); - byte[] result = engineSign(); - if (result.length > len) - throw new SignatureException("not enough space for signature"); - System.arraycopy(result, 0, out, off, result.length); - return result.length; - } - - protected boolean engineVerify(byte[] sig) throws SignatureException - { - if (verifierKey == null) - throw new SignatureException("not initialized for verifying"); - if (sig == null) - throw new SignatureException("no signature specified"); - int k = verifierKey.getModulus().bitLength(); - k = (k >>> 3) + ((k & 7) == 0 ? 0 : 1); - if (sig.length != k) - throw new SignatureException("signature is the wrong size (expecting " - + k + " bytes, got " + sig.length + ")"); - BigInteger ed = new BigInteger(1, sig); - byte[] eb = ed.modPow(verifierKey.getPublicExponent(), - verifierKey.getModulus()).toByteArray(); - - int i = 0; - if (eb[0] == 0x00) - { - for (i = 1; i < eb.length && eb[i] == 0x00; i++); - if (i == 1) - throw new SignatureException("wrong RSA padding"); - i--; - } - else if (eb[0] == 0x01) - { - for (i = 1; i < eb.length && eb[i] != 0x00; i++) - if (eb[i] != (byte) 0xFF) - throw new IllegalArgumentException("wrong RSA padding"); - } - else - throw new SignatureException("wrong RSA padding type"); - - byte[] d = new byte[eb.length-i-1]; - System.arraycopy(eb, i+1, d, 0, eb.length-i-1); - - DERReader der = new DERReader(d); - try - { - DERValue val = der.read(); - if (val.getTag() != DER.SEQUENCE) - throw new SignatureException("failed to parse DigestInfo"); - val = der.read(); - if (val.getTag() != DER.SEQUENCE) - throw new SignatureException("failed to parse DigestAlgorithmIdentifier"); - boolean sequenceIsBer = val.getLength() == 0; - val = der.read(); - if (val.getTag() != DER.OBJECT_IDENTIFIER) - throw new SignatureException("failed to parse object identifier"); - if (!val.getValue().equals(digestAlgorithm)) - throw new SignatureException("digest algorithms do not match"); - val = der.read(); - // We should never see parameters here, since they are never used. - if (val.getTag() != DER.NULL) - throw new SignatureException("cannot handle digest parameters"); - if (sequenceIsBer) - der.skip(1); // end-of-sequence byte. - val = der.read(); - if (val.getTag() != DER.OCTET_STRING) - throw new SignatureException("failed to parse Digest"); - return MessageDigest.isEqual(md.digest(), (byte[]) val.getValue()); - } - catch (IOException ioe) - { - throw new SignatureException(ioe.toString()); - } - } - - protected boolean engineVerify(byte[] sig, int off, int len) - throws SignatureException - { - if (sig == null || off < 0 || len < 0 || off+len > sig.length) - throw new SignatureException("illegal parameter"); - byte[] buf = new byte[len]; - System.arraycopy(sig, off, buf, 0, len); - return engineVerify(buf); - } -} diff --git a/libjava/gnu/java/security/provider/RSAKeyFactory.java b/libjava/gnu/java/security/provider/RSAKeyFactory.java deleted file mode 100644 index d13cbe510a1..00000000000 --- a/libjava/gnu/java/security/provider/RSAKeyFactory.java +++ /dev/null @@ -1,181 +0,0 @@ -/* RSAKeyFactory.java -- RSA key factory. - 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.java.security.provider; - -import java.security.InvalidKeyException; -import java.security.Key; -import java.security.KeyFactorySpi; -import java.security.PrivateKey; -import java.security.PublicKey; - -import java.security.interfaces.RSAPrivateCrtKey; -import java.security.interfaces.RSAPrivateKey; -import java.security.interfaces.RSAPublicKey; - -import java.security.spec.InvalidKeySpecException; -import java.security.spec.KeySpec; -import java.security.spec.PKCS8EncodedKeySpec; -import java.security.spec.RSAPrivateCrtKeySpec; -import java.security.spec.RSAPrivateKeySpec; -import java.security.spec.RSAPublicKeySpec; -import java.security.spec.X509EncodedKeySpec; - -public class RSAKeyFactory extends KeyFactorySpi -{ - - // Default constructor. - // ------------------------------------------------------------------------- - - // Instance methods. - // ------------------------------------------------------------------------- - - protected PrivateKey engineGeneratePrivate(KeySpec spec) - throws InvalidKeySpecException - { - if (spec instanceof RSAPrivateCrtKeySpec) - { - return new GnuRSAPrivateKey((RSAPrivateCrtKeySpec) spec); - } - if (spec instanceof RSAPrivateKeySpec) - { - return new GnuRSAPrivateKey(new RSAPrivateCrtKeySpec( - ((RSAPrivateKeySpec) spec).getModulus(), null, - ((RSAPrivateKeySpec) spec).getPrivateExponent(), null, - null, null, null, null)); - } - if (spec instanceof PKCS8EncodedKeySpec) - { - EncodedKeyFactory ekf = new EncodedKeyFactory(); - PrivateKey pk = ekf.engineGeneratePrivate(spec); - if (pk instanceof RSAPrivateKey) - return pk; - } - throw new InvalidKeySpecException(); - } - - protected PublicKey engineGeneratePublic(KeySpec spec) - throws InvalidKeySpecException - { - if (spec instanceof RSAPublicKeySpec) - { - return new GnuRSAPublicKey((RSAPublicKeySpec) spec); - } - if (spec instanceof X509EncodedKeySpec) - { - EncodedKeyFactory ekf = new EncodedKeyFactory(); - PublicKey pk = ekf.engineGeneratePublic(spec); - if (pk instanceof RSAPublicKey) - return pk; - } - throw new InvalidKeySpecException(); - } - - protected KeySpec engineGetKeySpec(Key key, Class keySpec) - throws InvalidKeySpecException - { - if (keySpec.isAssignableFrom(RSAPrivateCrtKeySpec.class) - && (key instanceof RSAPrivateCrtKey)) - { - return new RSAPrivateCrtKeySpec( - ((RSAPrivateCrtKey) key).getModulus(), - ((RSAPrivateCrtKey) key).getPublicExponent(), - ((RSAPrivateCrtKey) key).getPrivateExponent(), - ((RSAPrivateCrtKey) key).getPrimeP(), - ((RSAPrivateCrtKey) key).getPrimeQ(), - ((RSAPrivateCrtKey) key).getPrimeExponentP(), - ((RSAPrivateCrtKey) key).getPrimeExponentQ(), - ((RSAPrivateCrtKey) key).getCrtCoefficient()); - } - if (keySpec.isAssignableFrom(RSAPrivateKeySpec.class) - && (key instanceof RSAPrivateKey)) - { - return new RSAPrivateKeySpec( - ((RSAPrivateCrtKey) key).getModulus(), - ((RSAPrivateCrtKey) key).getPrivateExponent()); - } - if (keySpec.isAssignableFrom(RSAPublicKeySpec.class) - && (key instanceof RSAPublicKey)) - { - return new RSAPublicKeySpec( - ((RSAPrivateCrtKey) key).getModulus(), - ((RSAPrivateCrtKey) key).getPublicExponent()); - } - if (keySpec.isAssignableFrom(PKCS8EncodedKeySpec.class) - && key.getFormat().equalsIgnoreCase("PKCS#8")) - { - return new PKCS8EncodedKeySpec(key.getEncoded()); - } - if (keySpec.isAssignableFrom(X509EncodedKeySpec.class) - && key.getFormat().equalsIgnoreCase("X.509")) - { - return new X509EncodedKeySpec(key.getEncoded()); - } - throw new InvalidKeySpecException(); - } - - protected Key engineTranslateKey(Key key) throws InvalidKeyException - { - if (key instanceof RSAPrivateCrtKey) - { - return new GnuRSAPrivateKey(new RSAPrivateCrtKeySpec( - ((RSAPrivateCrtKey) key).getModulus(), - ((RSAPrivateCrtKey) key).getPublicExponent(), - ((RSAPrivateCrtKey) key).getPrivateExponent(), - ((RSAPrivateCrtKey) key).getPrimeP(), - ((RSAPrivateCrtKey) key).getPrimeQ(), - ((RSAPrivateCrtKey) key).getPrimeExponentP(), - ((RSAPrivateCrtKey) key).getPrimeExponentQ(), - ((RSAPrivateCrtKey) key).getCrtCoefficient())); - } - if (key instanceof RSAPrivateKey) - { - return new GnuRSAPrivateKey(new RSAPrivateCrtKeySpec( - ((RSAPrivateKey) key).getModulus(), null, - ((RSAPrivateKey) key).getPrivateExponent(), null, - null, null, null, null)); - } - if (key instanceof RSAPublicKey) - { - return new GnuRSAPublicKey(new RSAPublicKeySpec( - ((RSAPrivateCrtKey) key).getModulus(), - ((RSAPrivateCrtKey) key).getPublicExponent())); - } - throw new InvalidKeyException(); - } -} diff --git a/libjava/gnu/java/security/provider/SHA.java b/libjava/gnu/java/security/provider/SHA.java deleted file mode 100644 index e3b09bc5603..00000000000 --- a/libjava/gnu/java/security/provider/SHA.java +++ /dev/null @@ -1,242 +0,0 @@ -/* SHA.java -- Class implementing the SHA-1 algorithm as specified in [1]. - Copyright (C) 1999, 2000, 2002 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.java.security.provider; - -import java.security.MessageDigest; - -/** - This class implements the SHA-1 algorithm as described in [1]. - - [1] Federal Information Processing Standards Publication 180-1. - Specifications for the Secure Hash Standard. April 17, 1995. - - @see java.security.MessageDigest -*/ -public class SHA extends MessageDigest implements Cloneable -{ - public SHA () - { - super("SHA"); - engineReset (); - } - - public int engineGetDigestLength() - { - return 20; - } - - public void engineUpdate (byte b) - { - int i = ((int)bytecount) & 0x3f; //wgs - int shift = (3 - i % 4) << 3; - int idx = i / 4; - - i = (int)b; - W[idx] = (W[idx] & ~(0xff << shift)) | ((i & 0xff) << shift); - - // if we've filled up a block, then process it - if (((++bytecount) & 0x3f) == 0) - munch (); - } - - // This could be optimized. - public void engineUpdate (byte bytes[], int off, int len) - { - if (len < 0) - throw new ArrayIndexOutOfBoundsException (); - - int end = off + len; - while (off < end) - engineUpdate (bytes[off++]); - } - - public void engineReset () - { - bytecount = 0; - // magic numbers from [1] p. 10. - H0 = 0x67452301; - H1 = 0xefcdab89; - H2 = 0x98badcfe; - H3 = 0x10325476; - H4 = 0xc3d2e1f0; - } - - public byte[] engineDigest () - { - long bitcount = bytecount << 3; - engineUpdate ((byte)0x80); // 10000000 in binary; the start of the padding - - // add the rest of the padding to fill this block out, but leave 8 - // bytes to put in the original bytecount - while ((bytecount & 0x3f) != 56) - engineUpdate ((byte)0); - - // add the length of the original, unpadded block to the end of - // the padding - W[14] = (int)(bitcount >>> 32); - W[15] = (int)bitcount; - bytecount += 8; - - // digest the fully padded block - munch (); - - byte[] result - = new byte[] {(byte)(H0 >>> 24), (byte)(H0 >>> 16), - (byte)(H0 >>> 8), (byte)H0, - (byte)(H1 >>> 24), (byte)(H1 >>> 16), - (byte)(H1 >>> 8), (byte)H1, - (byte)(H2 >>> 24), (byte)(H2 >>> 16), - (byte)(H2 >>> 8), (byte)H2, - (byte)(H3 >>> 24), (byte)(H3 >>> 16), - (byte)(H3 >>> 8), (byte)H3, - (byte)(H4 >>> 24), (byte)(H4 >>> 16), - (byte)(H4 >>> 8), (byte)H4}; - - engineReset (); - return result; - } - - // Process a single block. This is pretty much copied verbatim from - // [1] pp. 9, 10. - private void munch () - { - for (int t = 16; t < 80; ++ t) - { - int Wt = W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16]; - W[t] = Wt << 1 | Wt >>> 31; - } - - int A = H0; - int B = H1; - int C = H2; - int D = H3; - int E = H4; - - for (int t = 0; t < 20; ++ t) - { - int TEMP = (A << 5 | A >>> 27) // S^5(A) - + ((B & C) | (~B & D)) // f_t(B,C,D) - + E + W[t] - + 0x5a827999; // K_t - - E = D; - D = C; - C = B << 30 | B >>> 2; // S^30(B) - B = A; - A = TEMP; - } - - for (int t = 20; t < 40; ++ t) - { - int TEMP = (A << 5 | A >>> 27) // S^5(A) - + (B ^ C ^ D) // f_t(B,C,D) - + E + W[t] - + 0x6ed9eba1; // K_t - - E = D; - D = C; - C = B << 30 | B >>> 2; // S^30(B) - B = A; - A = TEMP; - } - - for (int t = 40; t < 60; ++ t) - { - int TEMP = (A << 5 | A >>> 27) // S^5(A) - + (B & C | B & D | C & D) // f_t(B,C,D) - + E + W[t] - + 0x8f1bbcdc; // K_t - - E = D; - D = C; - C = B << 30 | B >>> 2; // S^30(B) - B = A; - A = TEMP; - } - - for (int t = 60; t < 80; ++ t) - { - int TEMP = (A << 5 | A >>> 27) // S^5(A) - + (B ^ C ^ D) // f_t(B,C,D) - + E + W[t] - + 0xca62c1d6; // K_t - - E = D; - D = C; - C = B << 30 | B >>> 2; // S^30(B) - B = A; - A = TEMP; - } - - H0 += A; - H1 += B; - H2 += C; - H3 += D; - H4 += E; - - // Reset W by clearing it. - for (int t = 0; t < 80; ++ t) - W[t] = 0; - } - - public Object clone () - { - return new SHA (this); - } - - private SHA (SHA copy) - { - this (); - bytecount = copy.bytecount; - H0 = copy.H0; - H1 = copy.H1; - H2 = copy.H2; - H3 = copy.H3; - H4 = copy.H4; - System.arraycopy (copy.W, 0, W, 0, 80); - } - - private final int W[] = new int[80]; - private long bytecount; - private int H0; - private int H1; - private int H2; - private int H3; - private int H4; -} diff --git a/libjava/gnu/java/security/provider/SHA1PRNG.java b/libjava/gnu/java/security/provider/SHA1PRNG.java deleted file mode 100644 index 7f2784881fb..00000000000 --- a/libjava/gnu/java/security/provider/SHA1PRNG.java +++ /dev/null @@ -1,126 +0,0 @@ -/* SHA1PRNG.java --- Secure Random SPI SHA1PRNG - Copyright (C) 1999, 2001, 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., 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.java.security.provider; - -import java.io.Serializable; -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; -import java.security.SecureRandomSpi; -import java.util.Random; - -public class SHA1PRNG extends SecureRandomSpi implements Serializable -{ - MessageDigest digest; - byte seed[]; - byte data[]; - int seedpos; - int datapos; - private boolean seeded = false; // set to true when we seed this - - public SHA1PRNG() - { - try { - digest = MessageDigest.getInstance("SHA"); - } catch ( NoSuchAlgorithmException nsae) { -// System.out.println("Failed to find SHA Message Digest: " + nsae); -// nsae.printStackTrace(); - throw new InternalError ("no SHA implementation found"); - } - - seed = new byte[20]; - seedpos = 0; - data = new byte[40]; - datapos = 20; // try to force hashing a first block - } - - public void engineSetSeed(byte[] seed) - { - for(int i = 0; i < seed.length; i++) - this.seed[seedpos++ % 20] ^= seed[i]; - seedpos %= 20; - - } - - public void engineNextBytes(byte[] bytes) - { - ensureIsSeeded (); - int loc = 0; - while (loc < bytes.length) - { - int copy = Math.min (bytes.length - loc, 20 - datapos); - - if (copy > 0) - { - System.arraycopy (data, datapos, bytes, loc, copy); - datapos += copy; - loc += copy; - } - else - { - // No data ready for copying, so refill our buffer. - System.arraycopy( seed, 0, data, 20, 20); - byte[] digestdata = digest.digest( data ); - System.arraycopy( digestdata, 0, data, 0, 20); - datapos = 0; - } - } - } - - public byte[] engineGenerateSeed(int numBytes) - { - byte tmp[] = new byte[numBytes]; - - engineNextBytes( tmp ); - return tmp; - } - - private void ensureIsSeeded() - { - if (!seeded) - { - new Random(0L).nextBytes(seed); - - byte[] digestdata = digest.digest(data); - System.arraycopy(digestdata, 0, data, 0, 20); - - seeded = true; - } - } - -} diff --git a/libjava/gnu/java/security/provider/SHA1withRSA.java b/libjava/gnu/java/security/provider/SHA1withRSA.java deleted file mode 100644 index 0e63fdeeb52..00000000000 --- a/libjava/gnu/java/security/provider/SHA1withRSA.java +++ /dev/null @@ -1,61 +0,0 @@ -/* SHA1withRSA.java -- SHA-1 with RSA encryption signatures. - 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.java.security.provider; - -import gnu.java.security.OID; - -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; - -public class SHA1withRSA extends RSA -{ - - // Constant. - // ------------------------------------------------------------------------- - - private static final OID SHA1 = new OID("1.3.14.3.2.26"); - - // Constructor. - // ------------------------------------------------------------------------- - - public SHA1withRSA() throws NoSuchAlgorithmException - { - super(MessageDigest.getInstance("SHA-160"), SHA1); - } -} diff --git a/libjava/gnu/java/security/provider/X509CertificateFactory.java b/libjava/gnu/java/security/provider/X509CertificateFactory.java deleted file mode 100644 index 1a415eabb05..00000000000 --- a/libjava/gnu/java/security/provider/X509CertificateFactory.java +++ /dev/null @@ -1,305 +0,0 @@ -/* X509CertificateFactory.java -- generates X.509 certificates. - 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., 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.java.security.provider; - -import gnu.java.io.Base64InputStream; -import gnu.java.security.x509.X509CRL; -import gnu.java.security.x509.X509CertPath; -import gnu.java.security.x509.X509Certificate; - -import java.io.BufferedInputStream; -import java.io.EOFException; -import java.io.IOException; -import java.io.InputStream; -import java.security.cert.CRL; -import java.security.cert.CRLException; -import java.security.cert.CertPath; -import java.security.cert.Certificate; -import java.security.cert.CertificateEncodingException; -import java.security.cert.CertificateException; -import java.security.cert.CertificateFactorySpi; -import java.util.Collection; -import java.util.Iterator; -import java.util.LinkedList; -import java.util.List; - -public class X509CertificateFactory extends CertificateFactorySpi -{ - - // Constants. - // ------------------------------------------------------------------------ - - public static final String BEGIN_CERTIFICATE = "-----BEGIN CERTIFICATE-----"; - public static final String END_CERTIFICATE = "-----END CERTIFICATE-----"; - public static final String BEGIN_X509_CRL = "-----BEGIN X509 CRL-----"; - public static final String END_X509_CRL = "-----END X509 CRL-----"; - - // Constructors. - // ------------------------------------------------------------------------ - - public X509CertificateFactory() - { - super(); - } - - // Instance methods. - // ------------------------------------------------------------------------ - - public Certificate engineGenerateCertificate(InputStream inStream) - throws CertificateException - { - try - { - return generateCert(inStream); - } - catch (IOException ioe) - { - CertificateException ce = new CertificateException(ioe.getMessage()); - ce.initCause (ioe); - throw ce; - } - } - - public Collection engineGenerateCertificates(InputStream inStream) - throws CertificateException - { - LinkedList certs = new LinkedList(); - while (true) - { - try - { - certs.add(generateCert(inStream)); - } - catch (EOFException eof) - { - break; - } - catch (IOException ioe) - { - CertificateException ce = new CertificateException(ioe.getMessage()); - ce.initCause (ioe); - throw ce; - } - } - return certs; - } - - public CRL engineGenerateCRL(InputStream inStream) throws CRLException - { - try - { - return generateCRL(inStream); - } - catch (IOException ioe) - { - CRLException crle = new CRLException(ioe.getMessage()); - crle.initCause (ioe); - throw crle; - } - } - - public Collection engineGenerateCRLs(InputStream inStream) - throws CRLException - { - LinkedList crls = new LinkedList(); - while (true) - { - try - { - crls.add(generateCRL(inStream)); - } - catch (EOFException eof) - { - break; - } - catch (IOException ioe) - { - CRLException crle = new CRLException(ioe.getMessage()); - crle.initCause (ioe); - throw crle; - } - } - return crls; - } - - public CertPath engineGenerateCertPath(List certs) - { - return new X509CertPath(certs); - } - - public CertPath engineGenerateCertPath(InputStream in) - throws CertificateEncodingException - { - return new X509CertPath(in); - } - - public CertPath engineGenerateCertPath(InputStream in, String encoding) - throws CertificateEncodingException - { - return new X509CertPath(in, encoding); - } - - public Iterator engineGetCertPathEncodings() - { - return X509CertPath.ENCODINGS.iterator(); - } - - // Own methods. - // ------------------------------------------------------------------------ - - private X509Certificate generateCert(InputStream inStream) - throws IOException, CertificateException - { - if (inStream == null) - throw new CertificateException("missing input stream"); - if (!inStream.markSupported()) - inStream = new BufferedInputStream(inStream, 8192); - inStream.mark(20); - int i = inStream.read(); - if (i == -1) - throw new EOFException(); - - // If the input is in binary DER format, the first byte MUST be - // 0x30, which stands for the ASN.1 [UNIVERSAL 16], which is the - // UNIVERSAL SEQUENCE, with the CONSTRUCTED bit (0x20) set. - // - // So if we do not see 0x30 here we will assume it is in Base-64. - if (i != 0x30) - { - inStream.reset(); - StringBuffer line = new StringBuffer(80); - do - { - line.setLength(0); - do - { - i = inStream.read(); - if (i == -1) - throw new EOFException(); - if (i != '\n' && i != '\r') - line.append((char) i); - } - while (i != '\n' && i != '\r'); - } - while (!line.toString().equals(BEGIN_CERTIFICATE)); - X509Certificate ret = new X509Certificate( - new BufferedInputStream(new Base64InputStream(inStream), 8192)); - line.setLength(0); - line.append('-'); // Base64InputStream will eat this. - do - { - i = inStream.read(); - if (i == -1) - throw new EOFException(); - if (i != '\n' && i != '\r') - line.append((char) i); - } - while (i != '\n' && i != '\r'); - // XXX ??? - if (!line.toString().equals(END_CERTIFICATE)) - throw new CertificateException("no end-of-certificate marker"); - return ret; - } - else - { - inStream.reset(); - return new X509Certificate(inStream); - } - } - - private X509CRL generateCRL(InputStream inStream) - throws IOException, CRLException - { - if (inStream == null) - throw new CRLException("missing input stream"); - if (!inStream.markSupported()) - inStream = new BufferedInputStream(inStream, 8192); - inStream.mark(20); - int i = inStream.read(); - if (i == -1) - throw new EOFException(); - - // If the input is in binary DER format, the first byte MUST be - // 0x30, which stands for the ASN.1 [UNIVERSAL 16], which is the - // UNIVERSAL SEQUENCE, with the CONSTRUCTED bit (0x20) set. - // - // So if we do not see 0x30 here we will assume it is in Base-64. - if (i != 0x30) - { - inStream.reset(); - StringBuffer line = new StringBuffer(80); - do - { - line.setLength(0); - do - { - i = inStream.read(); - if (i == -1) - throw new EOFException(); - if (i != '\n' && i != '\r') - line.append((char) i); - } - while (i != '\n' && i != '\r'); - } - while (!line.toString().startsWith(BEGIN_X509_CRL)); - X509CRL ret = new X509CRL( - new BufferedInputStream(new Base64InputStream(inStream), 8192)); - line.setLength(0); - line.append('-'); // Base64InputStream will eat this. - do - { - i = inStream.read(); - if (i == -1) - throw new EOFException(); - if (i != '\n' && i != '\r') - line.append((char) i); - } - while (i != '\n' && i != '\r'); - // XXX ??? - if (!line.toString().startsWith(END_X509_CRL)) - throw new CRLException("no end-of-CRL marker"); - return ret; - } - else - { - inStream.reset(); - return new X509CRL(inStream); - } - } -} diff --git a/libjava/gnu/java/security/util/Prime.java b/libjava/gnu/java/security/util/Prime.java deleted file mode 100644 index e493ce67503..00000000000 --- a/libjava/gnu/java/security/util/Prime.java +++ /dev/null @@ -1,164 +0,0 @@ -/* Prime.java --- Prime number generation utilities - Copyright (C) 1999, 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.java.security.util; -import java.math.BigInteger; -import java.util.Random; -//import java.security.SecureRandom; - -public final class Prime -{ - - /* - See IEEE P1363 A.15.4 (10/05/98 Draft) - */ - public static BigInteger generateRandomPrime( int pmin, int pmax, BigInteger f ) - { - BigInteger d; - - //Step 1 - generate prime - BigInteger p = new BigInteger( (pmax + pmin)/2, new Random() ); - if( p.compareTo( BigInteger.valueOf( 1 ).shiftLeft( pmin ) ) <= 0 ) - { - p = p.add( BigInteger.valueOf( 1 ).shiftLeft( pmin ).subtract( p ) ); - } - - //Step 2 - test for even - if( p.mod( BigInteger.valueOf(2) ).compareTo( BigInteger.valueOf( 0 )) == 0) - p = p.add( BigInteger.valueOf( 1 ) ); - - for(;;) - { - //Step 3 - if( p.compareTo( BigInteger.valueOf( 1 ).shiftLeft( pmax)) > 0) - { - //Step 3.1 - p = p.subtract( BigInteger.valueOf( 1 ).shiftLeft( pmax) ); - p = p.add( BigInteger.valueOf( 1 ).shiftLeft( pmin) ); - p = p.subtract( BigInteger.valueOf( 1 ) ); - - //Step 3.2 - // put step 2 code here so looping code is cleaner - //Step 2 - test for even - if( p.mod( BigInteger.valueOf(2) ).compareTo( BigInteger.valueOf( 0 )) == 0) - p = p.add( BigInteger.valueOf( 1 ) ); - continue; - } - - //Step 4 - compute GCD - d = p.subtract( BigInteger.valueOf(1) ); - d = d.gcd( f ); - - //Step 5 - test d - if( d.compareTo( BigInteger.valueOf( 1 ) ) == 0) - { - //Step 5.1 - test primality - if( p.isProbablePrime( 1 ) == true ) - { - //Step 5.2; - return p; - } - } - //Step 6 - p = p.add( BigInteger.valueOf( 2 ) ); - - //Step 7 - } - } - - - /* - See IEEE P1363 A.15.5 (10/05/98 Draft) - */ - public static BigInteger generateRandomPrime( BigInteger r, BigInteger a, int pmin, int pmax, BigInteger f ) - { - BigInteger d, w; - - //Step 1 - generate prime - BigInteger p = new BigInteger( (pmax + pmin)/2, new Random() ); - - steptwo:{ //Step 2 - w = p.mod( r.multiply( BigInteger.valueOf(2) )); - - //Step 3 - p = p.add( r.multiply( BigInteger.valueOf(2) ) ); - p = p.subtract( w ); - p = p.add(a); - - //Step 4 - test for even - if( p.mod( BigInteger.valueOf(2) ).compareTo( BigInteger.valueOf( 0 )) == 0) - p = p.add( r ); - - for(;;) - { - //Step 5 - if( p.compareTo( BigInteger.valueOf( 1 ).shiftLeft( pmax)) > 0) - { - //Step 5.1 - p = p.subtract( BigInteger.valueOf( 1 ).shiftLeft( pmax) ); - p = p.add( BigInteger.valueOf( 1 ).shiftLeft( pmin) ); - p = p.subtract( BigInteger.valueOf( 1 ) ); - - //Step 5.2 - goto to Step 2 - break steptwo; - } - - //Step 6 - d = p.subtract( BigInteger.valueOf(1) ); - d = d.gcd( f ); - - //Step 7 - test d - if( d.compareTo( BigInteger.valueOf( 1 ) ) == 0) - { - //Step 7.1 - test primality - if( p.isProbablePrime( 1 ) == true ) - { - //Step 7.2; - return p; - } - } - //Step 8 - p = p.add( r.multiply( BigInteger.valueOf(2) ) ); - - //Step 9 - } - } - //Should never reach here but makes the compiler happy - return BigInteger.valueOf(0); - } -} diff --git a/libjava/gnu/java/security/x509/GnuPKIExtension.java b/libjava/gnu/java/security/x509/GnuPKIExtension.java deleted file mode 100644 index 8e74b8b24ac..00000000000 --- a/libjava/gnu/java/security/x509/GnuPKIExtension.java +++ /dev/null @@ -1,59 +0,0 @@ -/* GnuPKIExtension.java -- interface for GNU PKI extensions. - 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.java.security.x509; - -import gnu.java.security.OID; -import gnu.java.security.x509.ext.Extension; - -import java.security.cert.X509Extension; -import java.util.Collection; - -public interface GnuPKIExtension extends X509Extension -{ - - /** - * Returns the extension object for the given object identifier. - * - * @param oid The OID of the extension to get. - * @return The extension, or null if there is no such extension. - */ - Extension getExtension(OID oid); - - Collection getExtensions(); -} diff --git a/libjava/gnu/java/security/x509/PolicyNodeImpl.java b/libjava/gnu/java/security/x509/PolicyNodeImpl.java deleted file mode 100644 index 72cb4a9ea91..00000000000 --- a/libjava/gnu/java/security/x509/PolicyNodeImpl.java +++ /dev/null @@ -1,214 +0,0 @@ -/* PolicyNodeImpl.java -- An implementation of a policy tree node. - 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.java.security.x509; - -import java.security.cert.PolicyNode; -import java.security.cert.PolicyQualifierInfo; - -import java.util.Collection; -import java.util.Collections; -import java.util.HashSet; -import java.util.Iterator; -import java.util.Set; - -public final class PolicyNodeImpl implements PolicyNode -{ - - // Fields. - // ------------------------------------------------------------------------- - - private String policy; - private final Set expectedPolicies; - private final Set qualifiers; - private final Set children; - private PolicyNodeImpl parent; - private int depth; - private boolean critical; - private boolean readOnly; - - // Constructors. - // ------------------------------------------------------------------------- - - public PolicyNodeImpl() - { - expectedPolicies = new HashSet(); - qualifiers = new HashSet(); - children = new HashSet(); - readOnly = false; - critical = false; - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public void addChild(PolicyNodeImpl node) - { - if (readOnly) - throw new IllegalStateException("read only"); - if (node.getParent() != null) - throw new IllegalStateException("already a child node"); - node.parent = this; - node.setDepth(depth + 1); - children.add(node); - } - - public Iterator getChildren() - { - return Collections.unmodifiableSet(children).iterator(); - } - - public int getDepth() - { - return depth; - } - - public void setDepth(int depth) - { - if (readOnly) - throw new IllegalStateException("read only"); - this.depth = depth; - } - - public void addAllExpectedPolicies(Set policies) - { - if (readOnly) - throw new IllegalStateException("read only"); - expectedPolicies.addAll(policies); - } - - public void addExpectedPolicy(String policy) - { - if (readOnly) - throw new IllegalStateException("read only"); - expectedPolicies.add(policy); - } - - public Set getExpectedPolicies() - { - return Collections.unmodifiableSet(expectedPolicies); - } - - public PolicyNode getParent() - { - return parent; - } - - public void addAllPolicyQualifiers (Collection qualifiers) - { - for (Iterator it = qualifiers.iterator(); it.hasNext(); ) - { - if (!(it.next() instanceof PolicyQualifierInfo)) - throw new IllegalArgumentException ("can only add PolicyQualifierInfos"); - } - qualifiers.addAll (qualifiers); - } - - public void addPolicyQualifier (PolicyQualifierInfo qualifier) - { - if (readOnly) - throw new IllegalStateException("read only"); - qualifiers.add(qualifier); - } - - public Set getPolicyQualifiers() - { - return Collections.unmodifiableSet(qualifiers); - } - - public String getValidPolicy() - { - return policy; - } - - public void setValidPolicy(String policy) - { - if (readOnly) - throw new IllegalStateException("read only"); - this.policy = policy; - } - - public boolean isCritical() - { - return critical; - } - - public void setCritical(boolean critical) - { - if (readOnly) - throw new IllegalStateException("read only"); - this.critical = critical; - } - - public void setReadOnly() - { - if (readOnly) - return; - readOnly = true; - for (Iterator it = getChildren(); it.hasNext(); ) - ((PolicyNodeImpl) it.next()).setReadOnly(); - } - - public String toString() - { - StringBuffer buf = new StringBuffer(); - for (int i = 0; i < depth; i++) - buf.append(" "); - buf.append("("); - buf.append(PolicyNodeImpl.class.getName()); - buf.append(" (oid "); - buf.append(policy); - buf.append(") (depth "); - buf.append(depth); - buf.append(") (qualifiers "); - buf.append(qualifiers); - buf.append(") (critical "); - buf.append(critical); - buf.append(") (expectedPolicies "); - buf.append(expectedPolicies); - buf.append(") (children ("); - final String nl = System.getProperty("line.separator"); - for (Iterator it = getChildren(); it.hasNext(); ) - { - buf.append(nl); - buf.append(it.next().toString()); - } - buf.append(")))"); - return buf.toString(); - } -} diff --git a/libjava/gnu/java/security/x509/Util.java b/libjava/gnu/java/security/x509/Util.java deleted file mode 100644 index d27392026f8..00000000000 --- a/libjava/gnu/java/security/x509/Util.java +++ /dev/null @@ -1,202 +0,0 @@ -/* Util.java -- Miscellaneous utility methods. - 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.java.security.x509; - -/** - * A collection of useful class methods. - * - * @author Casey Marshall (rsdio@metastatic.org) - */ -public final class Util -{ - - // Constants. - // ------------------------------------------------------------------------- - - public static final String HEX = "0123456789abcdef"; - - // Class methods. - // ------------------------------------------------------------------------- - - /** - * Convert a byte array to a hexadecimal string, as though it were a - * big-endian arbitrarily-sized integer. - * - * @param buf The bytes to format. - * @param off The offset to start at. - * @param len The number of bytes to format. - * @return A hexadecimal representation of the specified bytes. - */ - public static String toHexString(byte[] buf, int off, int len) - { - StringBuffer str = new StringBuffer(); - for (int i = 0; i < len; i++) - { - str.append(HEX.charAt(buf[i+off] >>> 4 & 0x0F)); - str.append(HEX.charAt(buf[i+off] & 0x0F)); - } - return str.toString(); - } - - /** - * See {@link #toHexString(byte[],int,int)}. - */ - public static String toHexString(byte[] buf) - { - return Util.toHexString(buf, 0, buf.length); - } - - /** - * Convert a byte array to a hexadecimal string, separating octets - * with the given character. - * - * @param buf The bytes to format. - * @param off The offset to start at. - * @param len The number of bytes to format. - * @param sep The character to insert between octets. - * @return A hexadecimal representation of the specified bytes. - */ - public static String toHexString(byte[] buf, int off, int len, char sep) - { - StringBuffer str = new StringBuffer(); - for (int i = 0; i < len; i++) - { - str.append(HEX.charAt(buf[i+off] >>> 4 & 0x0F)); - str.append(HEX.charAt(buf[i+off] & 0x0F)); - if (i < len - 1) - str.append(sep); - } - return str.toString(); - } - - /** - * See {@link #toHexString(byte[],int,int,char)}. - */ - public static String toHexString(byte[] buf, char sep) - { - return Util.toHexString(buf, 0, buf.length, sep); - } - - /** - * Create a representation of the given byte array similar to the - * output of `hexdump -C', which is - * - *

OFFSET  SIXTEEN-BYTES-IN-HEX  PRINTABLE-BYTES
- * - *

The printable bytes show up as-is if they are printable and - * not a newline character, otherwise showing as '.'. - * - * @param buf The bytes to format. - * @param off The offset to start at. - * @param len The number of bytes to encode. - * @return The formatted string. - */ - public static String hexDump(byte[] buf, int off, int len, String prefix) - { - String nl = System.getProperty("line.separator"); - StringBuffer str = new StringBuffer(); - int i = 0; - while (i < len) - { - str.append(prefix); - str.append(Util.formatInt(i+off, 16, 8)); - str.append(" "); - String s = Util.toHexString(buf, i+off, Math.min(16, len-i), ' '); - str.append(s); - for (int j = 56 - (56 - s.length()); j < 56; j++) - str.append(" "); - for (int j = 0; j < Math.min(16, len - i); j++) - { - if ((buf[i+off+j] & 0xFF) < 0x20 || (buf[i+off+j] & 0xFF) > 0x7E) - str.append('.'); - else - str.append((char) (buf[i+off+j] & 0xFF)); - } - str.append(nl); - i += 16; - } - return str.toString(); - } - - /** - * See {@link #hexDump(byte[],int,int)}. - */ - public static String hexDump(byte[] buf, String prefix) - { - return hexDump(buf, 0, buf.length, prefix); - } - - /** - * Format an integer into the specified radix, zero-filled. - * - * @param i The integer to format. - * @param radix The radix to encode to. - * @param len The target length of the string. The string is - * zero-padded to this length, but may be longer. - * @return The formatted integer. - */ - public static String formatInt(int i, int radix, int len) - { - String s = Integer.toString(i, radix); - StringBuffer buf = new StringBuffer(); - for (int j = 0; j < len - s.length(); j++) - buf.append("0"); - buf.append(s); - return buf.toString(); - } - - /** - * Convert a hexadecimal string into its byte representation. - * - * @param hex The hexadecimal string. - * @return The converted bytes. - */ - public static byte[] toByteArray(String hex) - { - hex = hex.toLowerCase(); - byte[] buf = new byte[hex.length() / 2]; - int j = 0; - for (int i = 0; i < buf.length; i++) - { - buf[i] = (byte) ((Character.digit(hex.charAt(j++), 16) << 4) | - Character.digit(hex.charAt(j++), 16)); - } - return buf; - } -} diff --git a/libjava/gnu/java/security/x509/X500DistinguishedName.java b/libjava/gnu/java/security/x509/X500DistinguishedName.java deleted file mode 100644 index daf746f5dc5..00000000000 --- a/libjava/gnu/java/security/x509/X500DistinguishedName.java +++ /dev/null @@ -1,548 +0,0 @@ -/* X500DistinguishedName.java -- X.500 distinguished name. - 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.java.security.x509; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; - -import java.io.EOFException; -import java.io.IOException; -import java.io.InputStream; -import java.io.Reader; -import java.io.StringReader; -import java.security.Principal; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashSet; -import java.util.Iterator; -import java.util.LinkedHashMap; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; -import java.util.Set; - -public class X500DistinguishedName implements Principal -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - public static final OID CN = new OID("2.5.4.3"); - public static final OID C = new OID("2.5.4.6"); - public static final OID L = new OID("2.5.4.7"); - public static final OID ST = new OID("2.5.4.8"); - public static final OID STREET = new OID("2.5.4.9"); - public static final OID O = new OID("2.5.4.10"); - public static final OID OU = new OID("2.5.4.11"); - public static final OID T = new OID("2.5.4.12"); - public static final OID DNQ = new OID("2.5.4.46"); - public static final OID NAME = new OID("2.5.4.41"); - public static final OID GIVENNAME = new OID("2.5.4.42"); - public static final OID INITIALS = new OID("2.5.4.43"); - public static final OID GENERATION = new OID("2.5.4.44"); - public static final OID EMAIL = new OID("1.2.840.113549.1.9.1"); - public static final OID DC = new OID("0.9.2342.19200300.100.1.25"); - public static final OID UID = new OID("0.9.2342.19200300.100.1.1"); - - private List components; - private Map currentRdn; - private boolean fixed; - private String stringRep; - private byte[] encoded; - - // Constructors. - // ------------------------------------------------------------------------- - - public X500DistinguishedName() - { - components = new LinkedList(); - currentRdn = new LinkedHashMap(); - components.add(currentRdn); - } - - public X500DistinguishedName(String name) - { - this(); - try - { - parseString(name); - } - catch (IOException ioe) - { - throw new IllegalArgumentException(ioe.toString()); - } - } - - public X500DistinguishedName(byte[] encoded) throws IOException - { - this(); - parseDer(new DERReader(encoded)); - } - - public X500DistinguishedName(InputStream encoded) throws IOException - { - this(); - parseDer(new DERReader(encoded)); - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public String getName() - { - return toString(); - } - - public void newRelativeDistinguishedName() - { - if (fixed || currentRdn.isEmpty()) return; - currentRdn = new LinkedHashMap(); - components.add(currentRdn); - } - - public int size() - { - return components.size(); - } - - public int countComponents() - { - int count = 0; - for (Iterator it = components.iterator(); it.hasNext(); ) - { - count += ((Map) it.next()).size(); - } - return count; - } - - public boolean containsComponent(OID oid, String value) - { - for (Iterator it = components.iterator(); it.hasNext(); ) - { - Map rdn = (Map) it.next(); - String s = (String) rdn.get(oid); - if (s == null) - continue; - if (compressWS(value).equalsIgnoreCase(compressWS(s))) - return true; - } - return false; - } - - public String getComponent(OID oid) - { - for (Iterator it = components.iterator(); it.hasNext(); ) - { - Map rdn = (Map) it.next(); - if (rdn.containsKey(oid)) - return (String) rdn.get(oid); - } - return null; - } - - public String getComponent(OID oid, int rdn) - { - if (rdn >= size()) - return null; - return (String) ((Map) components.get(rdn)).get(oid); - } - - public void putComponent(OID oid, String value) - { - currentRdn.put(oid, value); - } - - public void putComponent(String name, String value) - { - name = name.trim().toLowerCase(); - if (name.equals("cn")) - putComponent(CN, value); - else if (name.equals("c")) - putComponent(C, value); - else if (name.equals("l")) - putComponent(L, value); - else if (name.equals("street")) - putComponent(STREET, value); - else if (name.equals("st")) - putComponent(ST, value); - else if (name.equals("t")) - putComponent(T, value); - else if (name.equals("dnq")) - putComponent(DNQ, value); - else if (name.equals("name")) - putComponent(NAME, value); - else if (name.equals("givenname")) - putComponent(GIVENNAME, value); - else if (name.equals("initials")) - putComponent(INITIALS, value); - else if (name.equals("generation")) - putComponent(GENERATION, value); - else if (name.equals("email")) - putComponent(EMAIL, value); - else if (name.equals("dc")) - putComponent(DC, value); - else if (name.equals("uid")) - putComponent(UID, value); - else - putComponent(new OID(name), value); - } - - public void setUnmodifiable() - { - if (fixed) return; - fixed = true; - List newComps = new ArrayList(components.size()); - for (Iterator it = components.iterator(); it.hasNext(); ) - { - Map rdn = (Map) it.next(); - rdn = Collections.unmodifiableMap(rdn); - newComps.add(rdn); - } - components = Collections.unmodifiableList(newComps); - currentRdn = Collections.EMPTY_MAP; - } - - public int hashCode() - { - int sum = 0; - for (Iterator it = components.iterator(); it.hasNext(); ) - { - Map m = (Map) it.next(); - for (Iterator it2 = m.entrySet().iterator(); it2.hasNext(); ) - { - Map.Entry e = (Map.Entry) it2.next(); - sum += e.getKey().hashCode(); - sum += e.getValue().hashCode(); - } - } - return sum; - } - - public boolean equals(Object o) - { - if (!(o instanceof X500DistinguishedName)) - return false; - if (size() != ((X500DistinguishedName) o).size()) - return false; - for (int i = 0; i < size(); i++) - { - Map m = (Map) components.get(i); - for (Iterator it2 = m.entrySet().iterator(); it2.hasNext(); ) - { - Map.Entry e = (Map.Entry) it2.next(); - OID oid = (OID) e.getKey(); - String v1 = (String) e.getValue(); - String v2 = ((X500DistinguishedName) o).getComponent(oid, i); - if (!compressWS(v1).equalsIgnoreCase(compressWS(v2))) - return false; - } - } - return true; - } - - public String toString() - { - if (fixed && stringRep != null) - return stringRep; - StringBuffer str = new StringBuffer(); - for (Iterator it = components.iterator(); it.hasNext(); ) - { - Map m = (Map) it.next(); - for (Iterator it2 = m.entrySet().iterator(); it2.hasNext(); ) - { - Map.Entry entry = (Map.Entry) it2.next(); - OID oid = (OID) entry.getKey(); - String value = (String) entry.getValue(); - if (oid.equals(CN)) - str.append("CN"); - else if (oid.equals(C)) - str.append("C"); - else if (oid.equals(L)) - str.append("L"); - else if (oid.equals(ST)) - str.append("ST"); - else if (oid.equals(STREET)) - str.append("STREET"); - else if (oid.equals(O)) - str.append("O"); - else if (oid.equals(OU)) - str.append("OU"); - else if (oid.equals(T)) - str.append("T"); - else if (oid.equals(DNQ)) - str.append("DNQ"); - else if (oid.equals(NAME)) - str.append("NAME"); - else - str.append(oid.toString()); - str.append('='); - str.append(value); - if (it2.hasNext()) - str.append("+"); - } - if (it.hasNext()) - str.append(','); - } - return (stringRep = str.toString()); - } - - public byte[] getDer() - { - if (fixed && encoded != null) - return (byte[]) encoded.clone(); - ArrayList name = new ArrayList(components.size()); - for (Iterator it = components.iterator(); it.hasNext(); ) - { - Map m = (Map) it.next(); - if (m.isEmpty()) - continue; - Set rdn = new HashSet(); - for (Iterator it2 = m.entrySet().iterator(); it2.hasNext(); ) - { - Map.Entry e = (Map.Entry) it.next(); - ArrayList atav = new ArrayList(2); - atav.add(new DERValue(DER.OBJECT_IDENTIFIER, e.getKey())); - atav.add(new DERValue(DER.UTF8_STRING, e.getValue())); - rdn.add(new DERValue(DER.SEQUENCE|DER.CONSTRUCTED, atav)); - } - name.add(new DERValue(DER.SET|DER.CONSTRUCTED, rdn)); - } - DERValue val = new DERValue(DER.SEQUENCE|DER.CONSTRUCTED, name); - return (byte[]) (encoded = val.getEncoded()).clone(); - } - - // Own methods. - // ------------------------------------------------------------------------- - - private int sep; - - private void parseString(String str) throws IOException - { - Reader in = new StringReader(str); - while (true) - { - String key = readAttributeType(in); - if (key == null) - break; - String value = readAttributeValue(in); - putComponent(key, value); - if (sep == ',') - newRelativeDistinguishedName(); - } - setUnmodifiable(); - } - - private String readAttributeType(Reader in) throws IOException - { - StringBuffer buf = new StringBuffer(); - int ch; - while ((ch = in.read()) != '=') - { - if (ch == -1) - { - if (buf.length() > 0) - throw new EOFException(); - return null; - } - if (ch > 127) - throw new IOException("Invalid char: " + (char) ch); - if (Character.isLetterOrDigit((char) ch) || ch == '-' || ch == '.') - buf.append((char) ch); - else - throw new IOException("Invalid char: " + (char) ch); - } - return buf.toString(); - } - - private String readAttributeValue(Reader in) throws IOException - { - StringBuffer buf = new StringBuffer(); - int ch = in.read(); - if (ch == '#') - { - while (true) - { - ch = in.read(); - if (('a' <= ch && ch <= 'f') || ('A' <= ch && ch <= 'F') - || Character.isDigit((char) ch)) - buf.append((char) ch); - else if (ch == '+' || ch == ',') - { - sep = ch; - String hex = buf.toString(); - return new String(Util.toByteArray(hex)); - } - else - throw new IOException("illegal character: " + (char) ch); - } - } - else if (ch == '"') - { - while (true) - { - ch = in.read(); - if (ch == '"') - break; - else if (ch == '\\') - { - ch = in.read(); - if (ch == -1) - throw new EOFException(); - if (('a' <= ch && ch <= 'f') || ('A' <= ch && ch <= 'F') - || Character.isDigit((char) ch)) - { - int i = Character.digit((char) ch, 16) << 4; - ch = in.read(); - if (!(('a' <= ch && ch <= 'f') || ('A' <= ch && ch <= 'F') - || Character.isDigit((char) ch))) - throw new IOException("illegal hex char"); - i |= Character.digit((char) ch, 16); - buf.append((char) i); - } - else - buf.append((char) ch); - } - else - buf.append((char) ch); - } - sep = in.read(); - if (sep != '+' || sep != ',') - throw new IOException("illegal character: " + (char) ch); - return buf.toString(); - } - else - { - while (true) - { - switch (ch) - { - case '+': - case ',': - sep = ch; - return buf.toString(); - case '\\': - ch = in.read(); - if (ch == -1) - throw new EOFException(); - if (('a' <= ch && ch <= 'f') || ('A' <= ch && ch <= 'F') - || Character.isDigit((char) ch)) - { - int i = Character.digit((char) ch, 16) << 4; - ch = in.read(); - if (!(('a' <= ch && ch <= 'f') || ('A' <= ch && ch <= 'F') - || Character.isDigit((char) ch))) - throw new IOException("illegal hex char"); - i |= Character.digit((char) ch, 16); - buf.append((char) i); - } - else - buf.append((char) ch); - break; - case '=': - case '<': - case '>': - case '#': - case ';': - throw new IOException("illegal character: " + (char) ch); - case -1: - throw new EOFException(); - default: - buf.append((char) ch); - } - } - } - } - - private void parseDer(DERReader der) throws IOException - { - DERValue name = der.read(); - if (!name.isConstructed()) - throw new IOException("malformed Name"); - encoded = name.getEncoded(); - int len = 0; - while (len < name.getLength()) - { - DERValue rdn = der.read(); - if (!rdn.isConstructed()) - throw new IOException("badly formed RDNSequence"); - int len2 = 0; - while (len2 < rdn.getLength()) - { - DERValue atav = der.read(); - if (!atav.isConstructed()) - throw new IOException("badly formed AttributeTypeAndValue"); - DERValue val = der.read(); - if (val.getTag() != DER.OBJECT_IDENTIFIER) - throw new IOException("badly formed AttributeTypeAndValue"); - OID oid = (OID) val.getValue(); - val = der.read(); - if (!(val.getValue() instanceof String)) - throw new IOException("badly formed AttributeTypeAndValue"); - String value = (String) val.getValue(); - putComponent(oid, value); - len2 += atav.getEncodedLength(); - } - len += rdn.getEncodedLength(); - if (len < name.getLength()) - newRelativeDistinguishedName(); - } - setUnmodifiable(); - } - - private static String compressWS(String str) - { - StringBuffer buf = new StringBuffer(); - char lastChar = 0; - for (int i = 0; i < str.length(); i++) - { - char c = str.charAt(i); - if (Character.isWhitespace(c)) - { - if (!Character.isWhitespace(lastChar)) - buf.append(' '); - } - else - buf.append(c); - lastChar = c; - } - return buf.toString().trim(); - } -} diff --git a/libjava/gnu/java/security/x509/X509CRL.java b/libjava/gnu/java/security/x509/X509CRL.java deleted file mode 100644 index 5b2d3b14130..00000000000 --- a/libjava/gnu/java/security/x509/X509CRL.java +++ /dev/null @@ -1,476 +0,0 @@ -/* X509CRL.java -- X.509 certificate revocation list. - Copyright (C) 2003, 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.java.security.x509; - -import gnu.java.security.OID; -import gnu.java.security.der.BitString; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; -import gnu.java.security.x509.ext.Extension; - -import java.io.IOException; -import java.io.InputStream; -import java.math.BigInteger; -import java.security.InvalidKeyException; -import java.security.NoSuchAlgorithmException; -import java.security.NoSuchProviderException; -import java.security.Principal; -import java.security.PublicKey; -import java.security.Signature; -import java.security.SignatureException; -import java.security.cert.CRLException; -import java.security.cert.Certificate; -import java.util.Collection; -import java.util.Collections; -import java.util.Date; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; -import java.util.Set; - -import javax.security.auth.x500.X500Principal; - -/** - * X.509 certificate revocation lists. - * - * @author Casey Marshall (rsdio@metastatic.org) - */ -public class X509CRL extends java.security.cert.X509CRL - implements GnuPKIExtension -{ - - // Constants and fields. - // ------------------------------------------------------------------------ - - private static final boolean DEBUG = false; - private static void debug(String msg) - { - if (DEBUG) - { - System.err.print(">> X509CRL: "); - System.err.println(msg); - } - } - - private static final OID ID_DSA = new OID("1.2.840.10040.4.1"); - private static final OID ID_DSA_WITH_SHA1 = new OID("1.2.840.10040.4.3"); - private static final OID ID_RSA = new OID("1.2.840.113549.1.1.1"); - private static final OID ID_RSA_WITH_MD2 = new OID("1.2.840.113549.1.1.2"); - private static final OID ID_RSA_WITH_MD5 = new OID("1.2.840.113549.1.1.4"); - private static final OID ID_RSA_WITH_SHA1 = new OID("1.2.840.113549.1.1.5"); - - private byte[] encoded; - - private byte[] tbsCRLBytes; - private int version; - private OID algId; - private byte[] algParams; - private Date thisUpdate; - private Date nextUpdate; - private X500DistinguishedName issuerDN; - private HashMap revokedCerts; - private HashMap extensions; - - private OID sigAlg; - private byte[] sigAlgParams; - private byte[] rawSig; - private byte[] signature; - - // Constructors. - // ------------------------------------------------------------------------ - - /** - * Create a new X.509 CRL. - * - * @param encoded The DER encoded CRL. - * @throws CRLException If the input bytes are incorrect. - * @throws IOException If the input bytes cannot be read. - */ - public X509CRL(InputStream encoded) throws CRLException, IOException - { - super(); - revokedCerts = new HashMap(); - extensions = new HashMap(); - try - { - parse(encoded); - } - catch (IOException ioe) - { - ioe.printStackTrace(); - throw ioe; - } - catch (Exception x) - { - x.printStackTrace(); - throw new CRLException(x.toString()); - } - } - - // X509CRL methods. - // ------------------------------------------------------------------------ - - public boolean equals(Object o) - { - if (!(o instanceof X509CRL)) - return false; - return ((X509CRL) o).getRevokedCertificates().equals(revokedCerts.values()); - } - - public int hashCode() - { - return revokedCerts.hashCode(); - } - - public byte[] getEncoded() throws CRLException - { - return (byte[]) encoded.clone(); - } - - public void verify(PublicKey key) - throws CRLException, NoSuchAlgorithmException, InvalidKeyException, - NoSuchProviderException, SignatureException - { - Signature sig = Signature.getInstance(sigAlg.toString()); - doVerify(sig, key); - } - - public void verify(PublicKey key, String provider) - throws CRLException, NoSuchAlgorithmException, InvalidKeyException, - NoSuchProviderException, SignatureException - { - Signature sig = Signature.getInstance(sigAlg.toString(), provider); - doVerify(sig, key); - } - - public int getVersion() - { - return version; - } - - public Principal getIssuerDN() - { - return issuerDN; - } - - public X500Principal getIssuerX500Principal() - { - return new X500Principal(issuerDN.getDer()); - } - - public Date getThisUpdate() - { - return (Date) thisUpdate.clone(); - } - - public Date getNextUpdate() - { - if (nextUpdate != null) - return (Date) nextUpdate.clone(); - return null; - } - - public java.security.cert.X509CRLEntry getRevokedCertificate(BigInteger serialNo) - { - return (java.security.cert.X509CRLEntry) revokedCerts.get(serialNo); - } - - public Set getRevokedCertificates() - { - return Collections.unmodifiableSet(new HashSet(revokedCerts.values())); - } - - public byte[] getTBSCertList() throws CRLException - { - return (byte[]) tbsCRLBytes.clone(); - } - - public byte[] getSignature() - { - return (byte[]) rawSig.clone(); - } - - public String getSigAlgName() - { - if (sigAlg.equals(ID_DSA_WITH_SHA1)) - return "SHA1withDSA"; - if (sigAlg.equals(ID_RSA_WITH_MD2)) - return "MD2withRSA"; - if (sigAlg.equals(ID_RSA_WITH_MD5)) - return "MD5withRSA"; - if (sigAlg.equals(ID_RSA_WITH_SHA1)) - return "SHA1withRSA"; - return "unknown"; - } - - public String getSigAlgOID() - { - return sigAlg.toString(); - } - - public byte[] getSigAlgParams() - { - if (sigAlgParams != null) - return (byte[]) sigAlgParams.clone(); - return null; - } - - // X509Extension methods. - // ------------------------------------------------------------------------ - - public boolean hasUnsupportedCriticalExtension() - { - for (Iterator it = extensions.values().iterator(); it.hasNext(); ) - { - Extension e = (Extension) it.next(); - if (e.isCritical() && !e.isSupported()) - return true; - } - return false; - } - - public Set getCriticalExtensionOIDs() - { - HashSet s = new HashSet(); - for (Iterator it = extensions.values().iterator(); it.hasNext(); ) - { - Extension e = (Extension) it.next(); - if (e.isCritical()) - s.add(e.getOid().toString()); - } - return Collections.unmodifiableSet(s); - } - - public Set getNonCriticalExtensionOIDs() - { - HashSet s = new HashSet(); - for (Iterator it = extensions.values().iterator(); it.hasNext(); ) - { - Extension e = (Extension) it.next(); - if (!e.isCritical()) - s.add(e.getOid().toString()); - } - return Collections.unmodifiableSet(s); - } - - public byte[] getExtensionValue(String oid) - { - Extension e = getExtension(new OID(oid)); - if (e != null) - { - return e.getValue().getEncoded(); - } - return null; - } - - // GnuPKIExtension method. - // ------------------------------------------------------------------------- - - public Extension getExtension(OID oid) - { - return (Extension) extensions.get(oid); - } - - public Collection getExtensions() - { - return extensions.values(); - } - - // CRL methods. - // ------------------------------------------------------------------------- - - public String toString() - { - return X509CRL.class.getName(); - } - - public boolean isRevoked(Certificate cert) - { - if (!(cert instanceof java.security.cert.X509Certificate)) - throw new IllegalArgumentException("not a X.509 certificate"); - BigInteger certSerial = - ((java.security.cert.X509Certificate) cert).getSerialNumber(); - X509CRLEntry ent = (X509CRLEntry) revokedCerts.get(certSerial); - if (ent == null) - return false; - return ent.getRevocationDate().compareTo(new Date()) < 0; - } - - // Own methods. - // ------------------------------------------------------------------------ - - private void doVerify(Signature sig, PublicKey key) - throws CRLException, InvalidKeyException, SignatureException - { - sig.initVerify(key); - sig.update(tbsCRLBytes); - if (!sig.verify(signature)) - throw new CRLException("signature not verified"); - } - - private void parse(InputStream in) throws Exception - { - // CertificateList ::= SEQUENCE { - DERReader der = new DERReader(in); - DERValue val = der.read(); - debug("start CertificateList len == " + val.getLength()); - if (!val.isConstructed()) - throw new IOException("malformed CertificateList"); - encoded = val.getEncoded(); - - // tbsCertList ::= SEQUENCE { -- TBSCertList - val = der.read(); - if (!val.isConstructed()) - throw new IOException("malformed TBSCertList"); - debug("start tbsCertList len == " + val.getLength()); - tbsCRLBytes = val.getEncoded(); - - // version Version OPTIONAL, - // -- If present must be v2 - val = der.read(); - if (val.getValue() instanceof BigInteger) - { - version = ((BigInteger) val.getValue()).intValue() + 1; - val = der.read(); - } - else - version = 1; - debug("read version == " + version); - - // signature AlgorithmIdentifier, - debug("start AlgorithmIdentifier len == " + val.getLength()); - if (!val.isConstructed()) - throw new IOException("malformed AlgorithmIdentifier"); - DERValue algIdVal = der.read(); - algId = (OID) algIdVal.getValue(); - debug("read object identifier == " + algId); - if (val.getLength() > algIdVal.getEncodedLength()) - { - val = der.read(); - debug("read parameters len == " + val.getEncodedLength()); - algParams = val.getEncoded(); - if (val.isConstructed()) - in.skip(val.getLength()); - } - - // issuer Name, - val = der.read(); - issuerDN = new X500DistinguishedName(val.getEncoded()); - der.skip(val.getLength()); - debug("read issuer == " + issuerDN); - - // thisUpdate Time, - thisUpdate = (Date) der.read().getValue(); - debug("read thisUpdate == " + thisUpdate); - - // nextUpdate Time OPTIONAL, - val = der.read(); - if (val.getValue() instanceof Date) - { - nextUpdate = (Date) val.getValue(); - debug("read nextUpdate == " + nextUpdate); - val = der.read(); - } - - // revokedCertificates SEQUENCE OF SEQUENCE { - // -- X509CRLEntry objects... - // } OPTIONAL, - if (val.getTag() != 0) - { - int len = 0; - while (len < val.getLength()) - { - X509CRLEntry entry = new X509CRLEntry(version, der); - revokedCerts.put(entry.getSerialNumber(), entry); - len += entry.getEncoded().length; - } - val = der.read(); - } - - // crlExtensions [0] EXPLICIT Extensions OPTIONAL - // -- if present MUST be v2 - if (val.getTagClass() != DER.UNIVERSAL && val.getTag() == 0) - { - if (version < 2) - throw new IOException("extra data in CRL"); - DERValue exts = der.read(); - if (!exts.isConstructed()) - throw new IOException("malformed Extensions"); - debug("start Extensions len == " + exts.getLength()); - int len = 0; - while (len < exts.getLength()) - { - DERValue ext = der.read(); - if (!ext.isConstructed()) - throw new IOException("malformed Extension"); - Extension e = new Extension(ext.getEncoded()); - extensions.put(e.getOid(), e); - der.skip(ext.getLength()); - len += ext.getEncodedLength(); - debug("current count == " + len); - } - val = der.read(); - } - - debug("read tag == " + val.getTag()); - if (!val.isConstructed()) - throw new IOException("malformed AlgorithmIdentifier"); - debug("start AlgorithmIdentifier len == " + val.getLength()); - DERValue sigAlgVal = der.read(); - debug("read tag == " + sigAlgVal.getTag()); - if (sigAlgVal.getTag() != DER.OBJECT_IDENTIFIER) - throw new IOException("malformed AlgorithmIdentifier"); - sigAlg = (OID) sigAlgVal.getValue(); - debug("signature id == " + sigAlg); - debug("sigAlgVal length == " + sigAlgVal.getEncodedLength()); - if (val.getLength() > sigAlgVal.getEncodedLength()) - { - val = der.read(); - debug("sig params tag = " + val.getTag() + " len == " + val.getEncodedLength()); - sigAlgParams = (byte[]) val.getEncoded(); - if (val.isConstructed()) - in.skip(val.getLength()); - } - val = der.read(); - debug("read tag = " + val.getTag()); - rawSig = val.getEncoded(); - signature = ((BitString) val.getValue()).toByteArray(); - } -} diff --git a/libjava/gnu/java/security/x509/X509CRLEntry.java b/libjava/gnu/java/security/x509/X509CRLEntry.java deleted file mode 100644 index a3bcfdea823..00000000000 --- a/libjava/gnu/java/security/x509/X509CRLEntry.java +++ /dev/null @@ -1,278 +0,0 @@ -/* X509CRLEntry.java -- an entry in a X.509 CRL. - Copyright (C) 2003, 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.java.security.x509; - -import gnu.java.security.OID; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; -import gnu.java.security.x509.ext.Extension; - -import java.io.IOException; -import java.math.BigInteger; -import java.security.cert.CRLException; -import java.util.Collection; -import java.util.Collections; -import java.util.Date; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; -import java.util.Set; - -/** - * A single entry in a X.509 certificate revocation list. - * - * @see X509CRL - * @author Casey Marshall - */ -class X509CRLEntry extends java.security.cert.X509CRLEntry - implements GnuPKIExtension -{ - - // Constants and fields. - // ------------------------------------------------------------------------ - - private static final boolean DEBUG = false; - private static void debug(String msg) - { - if (DEBUG) - { - System.err.print(">> X509CRLEntry: "); - System.err.println(msg); - } - } - - /** The DER encoded form of this CRL entry. */ - private byte[] encoded; - - /** The revoked certificate's serial number. */ - private BigInteger serialNo; - - /** The date the certificate was revoked. */ - private Date revocationDate; - - /** The CRL entry extensions. */ - private HashMap extensions; - - // Constructor. - // ------------------------------------------------------------------------ - - /** - * Create a new X.509 certificate revocation list entry from the given - * input stream and CRL version number. - * - * @param version The CRL version. - * @param encoded The stream of DER bytes. - * @throws CRLException If the ASN.1 structure is invalid. - * @throws IOException If the bytes cannot be read. - */ - X509CRLEntry(int version, DERReader encoded) - throws CRLException, IOException - { - super(); - extensions = new HashMap(); - try - { - parse(version, encoded); - } - catch (IOException ioe) - { - throw ioe; - } - catch (Exception x) - { - throw new CRLException(x.toString()); - } - } - - // X509CRLEntry methods. - // ------------------------------------------------------------------------ - - public boolean equals(Object o) - { - if (!(o instanceof X509CRLEntry)) - return false; - return ((X509CRLEntry) o).getSerialNumber().equals(serialNo) && - ((X509CRLEntry) o).getRevocationDate().equals(revocationDate); - } - - public int hashCode() - { - return serialNo.hashCode(); - } - - public byte[] getEncoded() throws CRLException - { - return (byte[]) encoded.clone(); - } - - public BigInteger getSerialNumber() - { - return serialNo; - } - - public Date getRevocationDate() - { - return (Date) revocationDate.clone(); - } - - public boolean hasExtensions() - { - return ! extensions.isEmpty(); - } - - public String toString() - { - return "X509CRLEntry serial=" + serialNo + " revocation date=" - + revocationDate + " ext=" + extensions; - } - - // X509Extension methods. - // ------------------------------------------------------------------------- - - public boolean hasUnsupportedCriticalExtension() - { - for (Iterator it = extensions.values().iterator(); it.hasNext(); ) - { - Extension e = (Extension) it.next(); - if (e.isCritical() && !e.isSupported()) - return true; - } - return false; - } - - public Set getCriticalExtensionOIDs() - { - HashSet s = new HashSet(); - for (Iterator it = extensions.values().iterator(); it.hasNext(); ) - { - Extension e = (Extension) it.next(); - if (e.isCritical()) - s.add(e.getOid().toString()); - } - return Collections.unmodifiableSet(s); - } - - public Set getNonCriticalExtensionOIDs() - { - HashSet s = new HashSet(); - for (Iterator it = extensions.values().iterator(); it.hasNext(); ) - { - Extension e = (Extension) it.next(); - if (!e.isCritical()) - s.add(e.getOid().toString()); - } - return Collections.unmodifiableSet(s); - } - - public byte[] getExtensionValue(String oid) - { - Extension e = getExtension(new OID(oid)); - if (e != null) - { - return e.getValue().getEncoded(); - } - return null; - } - - // GnuPKIExtension method. - // ------------------------------------------------------------------------- - - public Extension getExtension(OID oid) - { - return (Extension) extensions.get(oid); - } - - public Collection getExtensions() - { - return extensions.values(); - } - - // Own methods. - // ------------------------------------------------------------------------- - - private void parse(int version, DERReader der) throws Exception - { - // RevokedCertificate ::= SEQUENCE { - DERValue entry = der.read(); - debug("start CRL entry len == " + entry.getLength()); - if (!entry.isConstructed()) - throw new IOException("malformed revokedCertificate"); - encoded = entry.getEncoded(); - int len = 0; - - debug("encoded entry:\n" + Util.hexDump(encoded, ">>>> ")); - - // userCertificate CertificateSerialNumber, - DERValue val = der.read(); - serialNo = (BigInteger) val.getValue(); - len += val.getEncodedLength(); - debug("userCertificate == " + serialNo + " current count == " + len); - - // revocationDate Time, - val = der.read(); - revocationDate = (Date) val.getValue(); - len += val.getEncodedLength(); - debug("revocationDate == " + revocationDate + " current count == " + len); - - // crlEntryExtensions Extensions OPTIONAL - // -- if present MUST be v2 - if (len < entry.getLength()) - { - if (version < 2) - throw new IOException("extra data in CRL entry"); - DERValue exts = der.read(); - if (!exts.isConstructed()) - throw new IOException("malformed Extensions"); - debug("start Extensions len == " + exts.getLength()); - len = 0; - while (len < exts.getLength()) - { - val = der.read(); - if (!val.isConstructed()) - throw new IOException("malformed Extension"); - debug("start Extension len == " + val.getLength()); - Extension e = new Extension(val.getEncoded()); - extensions.put(e.getOid(), e); - der.skip(val.getLength()); - len += val.getEncodedLength(); - debug("current count == " + len); - } - } - } -} diff --git a/libjava/gnu/java/security/x509/X509CRLSelectorImpl.java b/libjava/gnu/java/security/x509/X509CRLSelectorImpl.java deleted file mode 100644 index 0ada5501689..00000000000 --- a/libjava/gnu/java/security/x509/X509CRLSelectorImpl.java +++ /dev/null @@ -1,138 +0,0 @@ -/* X509CRLSelectorImpl.java -- implementation of an X509CRLSelector. - 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.java.security.x509; - -import java.io.IOException; - -import java.security.Principal; -import java.security.cert.CRL; -import java.security.cert.CRLSelector; -import java.security.cert.X509CRL; - -import java.util.Collection; -import java.util.Collections; -import java.util.HashSet; -import java.util.Iterator; -import java.util.Set; - -import javax.security.auth.x500.X500Principal; - -/** - * Sun's implementation of X509CRLSelector sucks. This one tries to work - * better. - */ -public class X509CRLSelectorImpl implements CRLSelector -{ - - // Fields. - // ------------------------------------------------------------------------- - - private Set issuerNames; - - // Constructor. - // ------------------------------------------------------------------------- - - public X509CRLSelectorImpl() - { - issuerNames = new HashSet(); - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public void addIssuerName(byte[] issuerName) throws IOException - { - issuerNames.add(new X500DistinguishedName(issuerName)); - } - - public void addIssuerName(String issuerName) - { - issuerNames.add(new X500DistinguishedName(issuerName)); - } - - public void addIssuerName(Principal issuerName) throws IOException - { - if (issuerName instanceof X500DistinguishedName) - issuerNames.add(issuerName); - else if (issuerName instanceof X500Principal) - issuerNames.add(new X500DistinguishedName(((X500Principal) issuerName).getEncoded())); - else - issuerNames.add(new X500DistinguishedName(issuerName.getName())); - } - - public Collection getIssuerNames() - { - return Collections.unmodifiableSet(issuerNames); - } - - public Object clone() - { - X509CRLSelectorImpl copy = new X509CRLSelectorImpl(); - copy.issuerNames.addAll(issuerNames); - return copy; - } - - public boolean match(CRL crl) - { - if (!(crl instanceof X509CRL)) - return false; - try - { - Principal p = ((X509CRL) crl).getIssuerDN(); - X500DistinguishedName thisName = null; - if (p instanceof X500DistinguishedName) - thisName = (X500DistinguishedName) p; - else if (p instanceof X500Principal) - thisName = new X500DistinguishedName(((X500Principal) p).getEncoded()); - else - thisName = new X500DistinguishedName(p.getName()); - for (Iterator it = issuerNames.iterator(); it.hasNext(); ) - { - X500DistinguishedName name = (X500DistinguishedName) it.next(); - if (thisName.equals(name)) - return true; - } - } - catch (Exception x) - { - } - return false; - } -} - diff --git a/libjava/gnu/java/security/x509/X509CertPath.java b/libjava/gnu/java/security/x509/X509CertPath.java deleted file mode 100644 index e8ed6bf35d1..00000000000 --- a/libjava/gnu/java/security/x509/X509CertPath.java +++ /dev/null @@ -1,303 +0,0 @@ -/* X509CertPath.java -- an X.509 certificate path. - Copyright (C) 2004 Free Software Fonudation, 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.java.security.x509; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DEREncodingException; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.math.BigInteger; -import java.security.cert.CertPath; -import java.security.cert.Certificate; -import java.security.cert.CertificateEncodingException; -import java.security.cert.CertificateException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.Iterator; -import java.util.LinkedList; -import java.util.List; - -/** - * A certificate path (or certificate chain) of X509Certificates. - * - * @author Casey Marshall (rsdio@metastatic.org) - */ -public class X509CertPath extends CertPath -{ - - // Fields. - // ------------------------------------------------------------------------- - - public static final List ENCODINGS = Collections.unmodifiableList( - Arrays.asList(new String[] { "PkiPath", "PKCS7" })); - - private static final OID PKCS7_SIGNED_DATA = new OID("1.2.840.113549.1.7.2"); - private static final OID PKCS7_DATA = new OID("1.2.840.113549.1.7.1"); - - /** The certificate path. */ - private List path; - - /** The cached PKCS #7 encoded bytes. */ - private byte[] pkcs_encoded; - - /** The cached PkiPath encoded bytes. */ - private byte[] pki_encoded; - - // Constructor. - // ------------------------------------------------------------------------- - - public X509CertPath(List path) - { - super("X.509"); - this.path = Collections.unmodifiableList(path); - } - - public X509CertPath(InputStream in) throws CertificateEncodingException - { - this(in, (String) ENCODINGS.get(0)); - } - - public X509CertPath(InputStream in, String encoding) - throws CertificateEncodingException - { - super("X.509"); - try - { - parse(in, encoding); - } - catch (IOException ioe) - { - throw new CertificateEncodingException(); - } - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public List getCertificates() - { - return path; // already unmodifiable - } - - public byte[] getEncoded() throws CertificateEncodingException - { - return getEncoded((String) ENCODINGS.get(0)); - } - - public byte[] getEncoded(String encoding) throws CertificateEncodingException - { - if (encoding.equalsIgnoreCase("PkiPath")) - { - if (pki_encoded == null) - { - try - { - pki_encoded = encodePki(); - } - catch (IOException ioe) - { - throw new CertificateEncodingException(); - } - } - return (byte[]) pki_encoded.clone(); - } - else if (encoding.equalsIgnoreCase("PKCS7")) - { - if (pkcs_encoded == null) - { - try - { - pkcs_encoded = encodePKCS(); - } - catch (IOException ioe) - { - throw new CertificateEncodingException(); - } - } - return (byte[]) pkcs_encoded.clone(); - } - else - throw new CertificateEncodingException("unknown encoding: " + encoding); - } - - public Iterator getEncodings() - { - return ENCODINGS.iterator(); // already unmodifiable - } - - // Own methods. - // ------------------------------------------------------------------------- - - private void parse(InputStream in, String encoding) - throws CertificateEncodingException, IOException - { - DERReader der = new DERReader(in); - DERValue path = null; - if (encoding.equalsIgnoreCase("PkiPath")) - { - // PKI encoding is just a SEQUENCE of X.509 certificates. - path = der.read(); - if (!path.isConstructed()) - throw new DEREncodingException("malformed PkiPath"); - } - else if (encoding.equalsIgnoreCase("PKCS7")) - { - // PKCS #7 encoding means that the certificates are contained in a - // SignedData PKCS #7 type. - // - // ContentInfo ::= SEQUENCE { - // contentType ::= ContentType, - // content [0] EXPLICIT ANY DEFINED BY contentType OPTIONAL } - // - // ContentType ::= OBJECT IDENTIFIER - // - // SignedData ::= SEQUENCE { - // version Version, - // digestAlgorithms DigestAlgorithmIdentifiers, - // contentInfo ContentInfo, - // certificates [0] IMPLICIT ExtendedCertificatesAndCertificates - // OPTIONAL, - // crls [1] IMPLICIT CertificateRevocationLists OPTIONAL, - // signerInfos SignerInfos } - // - // Version ::= INTEGER - // - DERValue value = der.read(); - if (!value.isConstructed()) - throw new DEREncodingException("malformed ContentInfo"); - value = der.read(); - if (!(value.getValue() instanceof OID) || - ((OID) value.getValue()).equals(PKCS7_SIGNED_DATA)) - throw new DEREncodingException("not a SignedData"); - value = der.read(); - if (!value.isConstructed() || value.getTag() != 0) - throw new DEREncodingException("malformed content"); - value = der.read(); - if (value.getTag() != DER.INTEGER) - throw new DEREncodingException("malformed Version"); - value = der.read(); - if (!value.isConstructed() || value.getTag() != DER.SET) - throw new DEREncodingException("malformed DigestAlgorithmIdentifiers"); - der.skip(value.getLength()); - value = der.read(); - if (!value.isConstructed()) - throw new DEREncodingException("malformed ContentInfo"); - der.skip(value.getLength()); - path = der.read(); - if (!path.isConstructed() || path.getTag() != 0) - throw new DEREncodingException("no certificates"); - } - else - throw new CertificateEncodingException("unknown encoding: " + encoding); - - LinkedList certs = new LinkedList(); - int len = 0; - while (len < path.getLength()) - { - DERValue cert = der.read(); - try - { - certs.add(new X509Certificate(new ByteArrayInputStream(cert.getEncoded()))); - } - catch (CertificateException ce) - { - throw new CertificateEncodingException(ce.getMessage()); - } - len += cert.getEncodedLength(); - der.skip(cert.getLength()); - } - - this.path = Collections.unmodifiableList(certs); - } - - private byte[] encodePki() - throws CertificateEncodingException, IOException - { - synchronized (path) - { - ByteArrayOutputStream out = new ByteArrayOutputStream(); - for (Iterator i = path.iterator(); i.hasNext(); ) - { - out.write(((Certificate) i.next()).getEncoded()); - } - byte[] b = out.toByteArray(); - DERValue val = new DERValue(DER.CONSTRUCTED | DER.SEQUENCE, - b.length, b, null); - return val.getEncoded(); - } - } - - private byte[] encodePKCS() - throws CertificateEncodingException, IOException - { - synchronized (path) - { - ArrayList signedData = new ArrayList(5); - signedData.add(new DERValue(DER.INTEGER, BigInteger.ONE)); - signedData.add(new DERValue(DER.CONSTRUCTED | DER.SET, - Collections.EMPTY_SET)); - signedData.add(new DERValue(DER.CONSTRUCTED | DER.SEQUENCE, - Collections.singletonList( - new DERValue(DER.OBJECT_IDENTIFIER, PKCS7_DATA)))); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - for (Iterator i = path.iterator(); i.hasNext(); ) - { - out.write(((Certificate) i.next()).getEncoded()); - } - byte[] b = out.toByteArray(); - signedData.add(new DERValue(DER.CONSTRUCTED | DER.CONTEXT, - b.length, b, null)); - DERValue sdValue = new DERValue(DER.CONSTRUCTED | DER.SEQUENCE, - signedData); - - ArrayList contentInfo = new ArrayList(2); - contentInfo.add(new DERValue(DER.OBJECT_IDENTIFIER, PKCS7_SIGNED_DATA)); - contentInfo.add(new DERValue(DER.CONSTRUCTED | DER.CONTEXT, sdValue)); - return new DERValue(DER.CONSTRUCTED | DER.SEQUENCE, - contentInfo).getEncoded(); - } - } -} diff --git a/libjava/gnu/java/security/x509/X509CertSelectorImpl.java b/libjava/gnu/java/security/x509/X509CertSelectorImpl.java deleted file mode 100644 index 36187ad8e64..00000000000 --- a/libjava/gnu/java/security/x509/X509CertSelectorImpl.java +++ /dev/null @@ -1,197 +0,0 @@ -/* X509CertSelectorImpl.java -- implementation of an X509CertSelector. - 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.java.security.x509; - -import java.io.IOException; -import java.security.Principal; -import java.security.cert.CertSelector; -import java.security.cert.Certificate; -import java.security.cert.X509Certificate; -import java.util.Collection; -import java.util.Collections; -import java.util.HashSet; -import java.util.Iterator; -import java.util.Set; - -import javax.security.auth.x500.X500Principal; - -/** - * Sun's implementation of X509CertSelector sucks. This one tries to work - * better. - */ -public class X509CertSelectorImpl implements CertSelector -{ - - // Fields. - // ------------------------------------------------------------------------- - - private Set issuerNames; - private Set subjectNames; - - // Constructor. - // ------------------------------------------------------------------------- - - public X509CertSelectorImpl() - { - issuerNames = new HashSet(); - subjectNames = new HashSet(); - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public void addIssuerName(byte[] issuerName) throws IOException - { - issuerNames.add(new X500DistinguishedName(issuerName)); - } - - public void addIssuerName(String issuerName) - { - issuerNames.add(new X500DistinguishedName(issuerName)); - } - - public void addIssuerName(Principal issuerName) throws IOException - { - if (issuerName instanceof X500DistinguishedName) - issuerNames.add(issuerName); - else if (issuerName instanceof X500Principal) - issuerNames.add(new X500DistinguishedName(((X500Principal) issuerName).getEncoded())); - else - issuerNames.add(new X500DistinguishedName(issuerName.getName())); - } - - public Collection getIssuerNames() - { - return Collections.unmodifiableSet(issuerNames); - } - - public void addSubjectName(byte[] subjectName) throws IOException - { - subjectNames.add(new X500DistinguishedName(subjectName)); - } - - public void addSubjectName(String subjectName) throws IOException - { - subjectNames.add(new X500DistinguishedName(subjectName)); - } - - public void addSubjectName(Principal subjectName) throws IOException - { - if (subjectName instanceof X500DistinguishedName) - subjectNames.add(subjectName); - else if (subjectName instanceof X500Principal) - subjectNames.add(new X500DistinguishedName(((X500Principal) subjectName).getEncoded())); - else - subjectNames.add(new X500DistinguishedName(subjectName.getName())); - } - - public Collection getSubjectNames() - { - return Collections.unmodifiableSet(subjectNames); - } - - public Object clone() - { - X509CertSelectorImpl copy = new X509CertSelectorImpl(); - copy.issuerNames.addAll(issuerNames); - copy.subjectNames.addAll(subjectNames); - return copy; - } - - public boolean match(Certificate cert) - { - if (!(cert instanceof X509Certificate)) - return false; - boolean matchIssuer = false; - boolean matchSubject = false; - try - { - Principal p = ((X509Certificate) cert).getIssuerDN(); - X500DistinguishedName thisName = null; - if (p instanceof X500DistinguishedName) - thisName = (X500DistinguishedName) p; - else if (p instanceof X500Principal) - thisName = new X500DistinguishedName(((X500Principal) p).getEncoded()); - else - thisName = new X500DistinguishedName(p.getName()); - if (issuerNames.isEmpty()) - matchIssuer = true; - else - { - for (Iterator it = issuerNames.iterator(); it.hasNext(); ) - { - X500DistinguishedName name = (X500DistinguishedName) it.next(); - if (thisName.equals(name)) - { - matchIssuer = true; - break; - } - } - } - - p = ((X509Certificate) cert).getSubjectDN(); - thisName = null; - if (p instanceof X500DistinguishedName) - thisName = (X500DistinguishedName) p; - else if (p instanceof X500Principal) - thisName = new X500DistinguishedName(((X500Principal) p).getEncoded()); - else - thisName = new X500DistinguishedName(p.getName()); - if (subjectNames.isEmpty()) - matchSubject = true; - else - { - for (Iterator it = subjectNames.iterator(); it.hasNext(); ) - { - X500DistinguishedName name = (X500DistinguishedName) it.next(); - if (thisName.equals(name)) - { - matchSubject = true; - break; - } - } - } - } - catch (Exception x) - { - } - return matchIssuer && matchSubject; - } -} - diff --git a/libjava/gnu/java/security/x509/X509Certificate.java b/libjava/gnu/java/security/x509/X509Certificate.java deleted file mode 100644 index 94a02aa72c9..00000000000 --- a/libjava/gnu/java/security/x509/X509Certificate.java +++ /dev/null @@ -1,743 +0,0 @@ -/* X509Certificate.java -- X.509 certificate. - Copyright (C) 2003, 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.java.security.x509; - -import gnu.java.security.OID; -import gnu.java.security.der.BitString; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; -import gnu.java.security.x509.ext.BasicConstraints; -import gnu.java.security.x509.ext.ExtendedKeyUsage; -import gnu.java.security.x509.ext.Extension; -import gnu.java.security.x509.ext.IssuerAlternativeNames; -import gnu.java.security.x509.ext.KeyUsage; -import gnu.java.security.x509.ext.SubjectAlternativeNames; - -import java.io.IOException; -import java.io.InputStream; -import java.io.PrintWriter; -import java.io.Serializable; -import java.io.StringWriter; -import java.math.BigInteger; -import java.security.AlgorithmParameters; -import java.security.InvalidKeyException; -import java.security.KeyFactory; -import java.security.NoSuchAlgorithmException; -import java.security.NoSuchProviderException; -import java.security.Principal; -import java.security.PublicKey; -import java.security.Signature; -import java.security.SignatureException; -import java.security.cert.CertificateEncodingException; -import java.security.cert.CertificateException; -import java.security.cert.CertificateExpiredException; -import java.security.cert.CertificateNotYetValidException; -import java.security.cert.CertificateParsingException; -import java.security.interfaces.DSAParams; -import java.security.interfaces.DSAPublicKey; -import java.security.spec.DSAParameterSpec; -import java.security.spec.X509EncodedKeySpec; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collection; -import java.util.Collections; -import java.util.Date; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Set; - -import javax.security.auth.x500.X500Principal; - -/** - * An implementation of X.509 certificates. - * - * @author Casey Marshall (rsdio@metastatic.org) - */ -public class X509Certificate extends java.security.cert.X509Certificate - implements Serializable, GnuPKIExtension -{ - - // Constants and fields. - // ------------------------------------------------------------------------ - - private static final boolean DEBUG = false; - private static void debug(String msg) - { - if (DEBUG) - { - System.err.print(">> X509Certificate: "); - System.err.println(msg); - } - } - private static void debug(Throwable t) - { - if (DEBUG) - { - System.err.print(">> X509Certificate: "); - t.printStackTrace(); - } - } - - protected static final OID ID_DSA = new OID ("1.2.840.10040.4.1"); - protected static final OID ID_DSA_WITH_SHA1 = new OID ("1.2.840.10040.4.3"); - protected static final OID ID_RSA = new OID ("1.2.840.113549.1.1.1"); - protected static final OID ID_RSA_WITH_MD2 = new OID ("1.2.840.113549.1.1.2"); - protected static final OID ID_RSA_WITH_MD5 = new OID ("1.2.840.113549.1.1.4"); - protected static final OID ID_RSA_WITH_SHA1 = new OID ("1.2.840.113549.1.1.5"); - protected static final OID ID_ECDSA_WITH_SHA1 = new OID ("1.2.840.10045.4.1"); - - // This object SHOULD be serialized with an instance of - // java.security.cert.Certificate.CertificateRep, thus all fields are - // transient. - - // The encoded certificate. - protected transient byte[] encoded; - - // TBSCertificate part. - protected transient byte[] tbsCertBytes; - protected transient int version; - protected transient BigInteger serialNo; - protected transient OID algId; - protected transient byte[] algVal; - protected transient X500DistinguishedName issuer; - protected transient Date notBefore; - protected transient Date notAfter; - protected transient X500DistinguishedName subject; - protected transient PublicKey subjectKey; - protected transient BitString issuerUniqueId; - protected transient BitString subjectUniqueId; - protected transient Map extensions; - - // Signature. - protected transient OID sigAlgId; - protected transient byte[] sigAlgVal; - protected transient byte[] signature; - - // Constructors. - // ------------------------------------------------------------------------ - - /** - * Create a new X.509 certificate from the encoded data. The input - * data are expected to be the ASN.1 DER encoding of the certificate. - * - * @param encoded The encoded certificate data. - * @throws IOException If the certificate cannot be read, possibly - * from a formatting error. - * @throws CertificateException If the data read is not an X.509 - * certificate. - */ - public X509Certificate(InputStream encoded) - throws CertificateException, IOException - { - super(); - extensions = new HashMap(); - try - { - parse(encoded); - } - catch (IOException ioe) - { - debug(ioe); - throw ioe; - } - catch (Exception e) - { - debug(e); - CertificateException ce = new CertificateException(e.getMessage()); - ce.initCause (e); - throw ce; - } - } - - protected X509Certificate() - { - extensions = new HashMap(); - } - - // X509Certificate methods. - // ------------------------------------------------------------------------ - - public void checkValidity() - throws CertificateExpiredException, CertificateNotYetValidException - { - checkValidity(new Date()); - } - - public void checkValidity(Date date) - throws CertificateExpiredException, CertificateNotYetValidException - { - if (date.compareTo(notBefore) < 0) - { - throw new CertificateNotYetValidException(); - } - if (date.compareTo(notAfter) > 0) - { - throw new CertificateExpiredException(); - } - } - - public int getVersion() - { - return version; - } - - public BigInteger getSerialNumber() - { - return serialNo; - } - - public Principal getIssuerDN() - { - return issuer; - } - - public X500Principal getIssuerX500Principal() - { - return new X500Principal(issuer.getDer()); - } - - public Principal getSubjectDN() - { - return subject; - } - - public X500Principal getSubjectX500Principal() - { - return new X500Principal(subject.getDer()); - } - - public Date getNotBefore() - { - return (Date) notBefore.clone(); - } - - public Date getNotAfter() - { - return (Date) notAfter.clone(); - } - - public byte[] getTBSCertificate() throws CertificateEncodingException - { - return (byte[]) tbsCertBytes.clone(); - } - - public byte[] getSignature() - { - return (byte[]) signature.clone(); - } - - public String getSigAlgName() - { - if (sigAlgId.equals(ID_DSA_WITH_SHA1)) - { - return "SHA1withDSA"; - } - if (sigAlgId.equals(ID_RSA_WITH_MD2)) - { - return "MD2withRSA"; - } - if (sigAlgId.equals(ID_RSA_WITH_MD5)) - { - return "MD5withRSA"; - } - if (sigAlgId.equals(ID_RSA_WITH_SHA1)) - { - return "SHA1withRSA"; - } - return "unknown"; - } - - public String getSigAlgOID() - { - return sigAlgId.toString(); - } - - public byte[] getSigAlgParams() - { - return (byte[]) sigAlgVal.clone(); - } - - public boolean[] getIssuerUniqueID() - { - if (issuerUniqueId != null) - { - return issuerUniqueId.toBooleanArray(); - } - return null; - } - - public boolean[] getSubjectUniqueID() - { - if (subjectUniqueId != null) - { - return subjectUniqueId.toBooleanArray(); - } - return null; - } - - public boolean[] getKeyUsage() - { - Extension e = getExtension(KeyUsage.ID); - if (e != null) - { - KeyUsage ku = (KeyUsage) e.getValue(); - boolean[] result = new boolean[9]; - boolean[] b = ku.getKeyUsage().toBooleanArray(); - System.arraycopy(b, 0, result, 0, b.length); - return result; - } - return null; - } - - public List getExtendedKeyUsage() throws CertificateParsingException - { - Extension e = getExtension(ExtendedKeyUsage.ID); - if (e != null) - { - List a = ((ExtendedKeyUsage) e.getValue()).getPurposeIds(); - List b = new ArrayList(a.size()); - for (Iterator it = a.iterator(); it.hasNext(); ) - { - b.add(it.next().toString()); - } - return Collections.unmodifiableList(b); - } - return null; - } - - public int getBasicConstraints() - { - Extension e = getExtension(BasicConstraints.ID); - if (e != null) - { - return ((BasicConstraints) e.getValue()).getPathLengthConstraint(); - } - return -1; - } - - public Collection getSubjectAlternativeNames() - throws CertificateParsingException - { - Extension e = getExtension(SubjectAlternativeNames.ID); - if (e != null) - { - return ((SubjectAlternativeNames) e.getValue()).getNames(); - } - return null; - } - - public Collection getIssuerAlternativeNames() - throws CertificateParsingException - { - Extension e = getExtension(IssuerAlternativeNames.ID); - if (e != null) - { - return ((IssuerAlternativeNames) e.getValue()).getNames(); - } - return null; - } - - // X509Extension methods. - // ------------------------------------------------------------------------ - - public boolean hasUnsupportedCriticalExtension() - { - for (Iterator it = extensions.values().iterator(); it.hasNext(); ) - { - Extension e = (Extension) it.next(); - if (e.isCritical() && !e.isSupported()) - return true; - } - return false; - } - - public Set getCriticalExtensionOIDs() - { - HashSet s = new HashSet(); - for (Iterator it = extensions.values().iterator(); it.hasNext(); ) - { - Extension e = (Extension) it.next(); - if (e.isCritical()) - s.add(e.getOid().toString()); - } - return Collections.unmodifiableSet(s); - } - - public Set getNonCriticalExtensionOIDs() - { - HashSet s = new HashSet(); - for (Iterator it = extensions.values().iterator(); it.hasNext(); ) - { - Extension e = (Extension) it.next(); - if (!e.isCritical()) - s.add(e.getOid().toString()); - } - return Collections.unmodifiableSet(s); - } - - public byte[] getExtensionValue(String oid) - { - Extension e = getExtension(new OID(oid)); - if (e != null) - { - return e.getValue().getEncoded(); - } - return null; - } - - // GnuPKIExtension method. - // ------------------------------------------------------------------------- - - public Extension getExtension(OID oid) - { - return (Extension) extensions.get(oid); - } - - public Collection getExtensions() - { - return extensions.values(); - } - - // Certificate methods. - // ------------------------------------------------------------------------- - - public byte[] getEncoded() throws CertificateEncodingException - { - return (byte[]) encoded.clone(); - } - - public void verify(PublicKey key) - throws CertificateException, NoSuchAlgorithmException, - InvalidKeyException, NoSuchProviderException, SignatureException - { - Signature sig = Signature.getInstance(sigAlgId.toString()); - doVerify(sig, key); - } - - public void verify(PublicKey key, String provider) - throws CertificateException, NoSuchAlgorithmException, - InvalidKeyException, NoSuchProviderException, SignatureException - { - Signature sig = Signature.getInstance(sigAlgId.toString(), provider); - doVerify(sig, key); - } - - public String toString() - { - StringWriter str = new StringWriter(); - PrintWriter out = new PrintWriter(str); - out.println(X509Certificate.class.getName() + " {"); - out.println(" TBSCertificate {"); - out.println(" version = " + version + ";"); - out.println(" serialNo = " + serialNo + ";"); - out.println(" signature = {"); - out.println(" algorithm = " + getSigAlgName() + ";"); - out.print(" parameters ="); - if (sigAlgVal != null) - { - out.println(); - out.print(Util.hexDump(sigAlgVal, " ")); - } - else - { - out.println(" null;"); - } - out.println(" }"); - out.println(" issuer = " + issuer.getName() + ";"); - out.println(" validity = {"); - out.println(" notBefore = " + notBefore + ";"); - out.println(" notAfter = " + notAfter + ";"); - out.println(" }"); - out.println(" subject = " + subject.getName() + ";"); - out.println(" subjectPublicKeyInfo = {"); - out.println(" algorithm = " + subjectKey.getAlgorithm()); - out.println(" key ="); - out.print(Util.hexDump(subjectKey.getEncoded(), " ")); - out.println(" };"); - out.println(" issuerUniqueId = " + issuerUniqueId + ";"); - out.println(" subjectUniqueId = " + subjectUniqueId + ";"); - out.println(" extensions = {"); - for (Iterator it = extensions.values().iterator(); it.hasNext(); ) - { - out.println(" " + it.next()); - } - out.println(" }"); - out.println(" }"); - out.println(" signatureAlgorithm = " + getSigAlgName() + ";"); - out.println(" signatureValue ="); - out.print(Util.hexDump(signature, " ")); - out.println("}"); - return str.toString(); - } - - public PublicKey getPublicKey() - { - return subjectKey; - } - - public boolean equals(Object other) - { - if (!(other instanceof X509Certificate)) - return false; - try - { - if (other instanceof X509Certificate) - return Arrays.equals(encoded, ((X509Certificate) other).encoded); - byte[] enc = ((X509Certificate) other).getEncoded(); - if (enc == null) - return false; - return Arrays.equals(encoded, enc); - } - catch (CertificateEncodingException cee) - { - return false; - } - } - - // Own methods. - // ------------------------------------------------------------------------ - - /** - * Verify this certificate's signature. - */ - private void doVerify(Signature sig, PublicKey key) - throws CertificateException, InvalidKeyException, SignatureException - { - debug("verifying sig=" + sig + " key=" + key); - sig.initVerify(key); - sig.update(tbsCertBytes); - if (!sig.verify(signature)) - { - throw new CertificateException("signature not validated"); - } - } - - /** - * Parse a DER stream into an X.509 certificate. - * - * @param encoded The encoded bytes. - */ - private void parse(InputStream encoded) throws Exception - { - DERReader der = new DERReader(encoded); - - // Certificate ::= SEQUENCE { - DERValue cert = der.read(); - debug("start Certificate len == " + cert.getLength()); - - this.encoded = cert.getEncoded(); - if (!cert.isConstructed()) - { - throw new IOException("malformed Certificate"); - } - - // TBSCertificate ::= SEQUENCE { - DERValue tbsCert = der.read(); - if (tbsCert.getValue() != DER.CONSTRUCTED_VALUE) - { - throw new IOException("malformed TBSCertificate"); - } - tbsCertBytes = tbsCert.getEncoded(); - debug("start TBSCertificate len == " + tbsCert.getLength()); - - // Version ::= INTEGER [0] { v1(0), v2(1), v3(2) } - DERValue val = der.read(); - if (val.getTagClass() == DER.CONTEXT && val.getTag() == 0) - { - version = ((BigInteger) der.read().getValue()).intValue() + 1; - val = der.read(); - } - else - { - version = 1; - } - debug("read version == " + version); - - // SerialNumber ::= INTEGER - serialNo = (BigInteger) val.getValue(); - debug("read serial number == " + serialNo); - - // AlgorithmIdentifier ::= SEQUENCE { - val = der.read(); - if (!val.isConstructed()) - { - throw new IOException("malformed AlgorithmIdentifier"); - } - int certAlgLen = val.getLength(); - debug("start AlgorithmIdentifier len == " + certAlgLen); - val = der.read(); - - // algorithm OBJECT IDENTIFIER, - algId = (OID) val.getValue(); - debug("read algorithm ID == " + algId); - - // parameters ANY DEFINED BY algorithm OPTIONAL } - if (certAlgLen > val.getEncodedLength()) - { - val = der.read(); - if (val == null) - { - algVal = null; - } - else - { - algVal = val.getEncoded(); - - if (val.isConstructed()) - encoded.skip(val.getLength()); - } - debug("read algorithm parameters == " + algVal); - } - - // issuer Name, - val = der.read(); - issuer = new X500DistinguishedName(val.getEncoded()); - der.skip(val.getLength()); - debug("read issuer == " + issuer); - - // Validity ::= SEQUENCE { - // notBefore Time, - // notAfter Time } - if (!der.read().isConstructed()) - { - throw new IOException("malformed Validity"); - } - notBefore = (Date) der.read().getValue(); - notAfter = (Date) der.read().getValue(); - debug("read notBefore == " + notBefore); - debug("read notAfter == " + notAfter); - - // subject Name, - val = der.read(); - subject = new X500DistinguishedName(val.getEncoded()); - der.skip(val.getLength()); - debug("read subject == " + subject); - - // SubjectPublicKeyInfo ::= SEQUENCE { - // algorithm AlgorithmIdentifier, - // subjectPublicKey BIT STRING } - DERValue spki = der.read(); - if (!spki.isConstructed()) - { - throw new IOException("malformed SubjectPublicKeyInfo"); - } - KeyFactory spkFac = KeyFactory.getInstance("X.509"); - subjectKey = spkFac.generatePublic(new X509EncodedKeySpec(spki.getEncoded())); - der.skip(spki.getLength()); - debug("read subjectPublicKey == " + subjectKey); - - if (version > 1) - { - val = der.read(); - } - if (version >= 2 && val.getTagClass() != DER.UNIVERSAL && val.getTag() == 1) - { - byte[] b = (byte[]) val.getValue(); - issuerUniqueId = new BitString(b, 1, b.length-1, b[0] & 0xFF); - debug("read issuerUniqueId == " + issuerUniqueId); - val = der.read(); - } - if (version >= 2 && val.getTagClass() != DER.UNIVERSAL && val.getTag() == 2) - { - byte[] b = (byte[]) val.getValue(); - subjectUniqueId = new BitString(b, 1, b.length-1, b[0] & 0xFF); - debug("read subjectUniqueId == " + subjectUniqueId); - val = der.read(); - } - if (version >= 3 && val.getTagClass() != DER.UNIVERSAL && val.getTag() == 3) - { - val = der.read(); - debug("start Extensions len == " + val.getLength()); - int len = 0; - while (len < val.getLength()) - { - DERValue ext = der.read(); - debug("start extension len == " + ext.getLength()); - Extension e = new Extension(ext.getEncoded()); - extensions.put(e.getOid(), e); - der.skip(ext.getLength()); - len += ext.getEncodedLength(); - debug("count == " + len); - } - } - - val = der.read(); - if (!val.isConstructed()) - { - throw new IOException("malformed AlgorithmIdentifier"); - } - int sigAlgLen = val.getLength(); - debug("start AlgorithmIdentifier len == " + sigAlgLen); - val = der.read(); - sigAlgId = (OID) val.getValue(); - debug("read algorithm id == " + sigAlgId); - if (sigAlgLen > val.getEncodedLength()) - { - val = der.read(); - if (val.getValue() == null) - { - if (subjectKey instanceof DSAPublicKey) - { - AlgorithmParameters params = - AlgorithmParameters.getInstance("DSA"); - DSAParams dsap = ((DSAPublicKey) subjectKey).getParams(); - DSAParameterSpec spec = - new DSAParameterSpec(dsap.getP(), dsap.getQ(), dsap.getG()); - params.init(spec); - sigAlgVal = params.getEncoded(); - } - } - else - { - sigAlgVal = (byte[]) val.getEncoded(); - } - if (val.isConstructed()) - { - encoded.skip(val.getLength()); - } - debug("read parameters == " + sigAlgVal); - } - signature = ((BitString) der.read().getValue()).toByteArray(); - debug("read signature ==\n" + Util.hexDump(signature, ">>>> ")); - } -} diff --git a/libjava/gnu/java/security/x509/ext/AuthorityKeyIdentifier.java b/libjava/gnu/java/security/x509/ext/AuthorityKeyIdentifier.java deleted file mode 100644 index a94b76f093e..00000000000 --- a/libjava/gnu/java/security/x509/ext/AuthorityKeyIdentifier.java +++ /dev/null @@ -1,133 +0,0 @@ -/* AuthorityKeyIdentifier.java -- Authority key identifier extension. - 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.java.security.x509.ext; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; -import gnu.java.security.x509.Util; - -import java.io.IOException; -import java.math.BigInteger; - -public class AuthorityKeyIdentifier extends Extension.Value -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - public static final OID ID = new OID("2.5.29.35"); - - private final byte[] keyIdentifier; - private final GeneralNames authorityCertIssuer; - private final BigInteger authorityCertSerialNumber; - - // Contstructor. - // ------------------------------------------------------------------------- - - public AuthorityKeyIdentifier(final byte[] encoded) throws IOException - { - super(encoded); - DERReader der = new DERReader(encoded); - - // AuthorityKeyIdentifier ::= SEQUENCE { - DERValue val = der.read(); - if (!val.isConstructed()) - throw new IOException("malformed AuthorityKeyIdentifier"); - if (val.getLength() > 0) - val = der.read(); - - // keyIdentifier [0] KeyIdentifier OPTIONAL, - // KeyIdentifier ::= OCTET STRING - if (val.getTagClass() == DER.APPLICATION && val.getTag() == 0) - { - keyIdentifier = (byte[]) val.getValue(); - val = der.read(); - } - else - keyIdentifier = null; - - // authorityCertIssuer [1] GeneralNames OPTIONAL, - if (val.getTagClass() == DER.APPLICATION && val.getTag() == 1) - { - byte[] b = val.getEncoded(); - b[0] = (byte) (DER.CONSTRUCTED|DER.SEQUENCE); - authorityCertIssuer = new GeneralNames(b); - der.skip(val.getLength()); - val = der.read(); - } - else - authorityCertIssuer = null; - - // authorityCertSerialNumber [2] CertificateSerialNumber OPTIONAL } - if (val.getTagClass() == DER.APPLICATION && val.getTag() == 2) - { - authorityCertSerialNumber = new BigInteger((byte[]) val.getValue()); - } - else - authorityCertSerialNumber = null; - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public byte[] getKeyIdentifier() - { - return keyIdentifier != null ? (byte[]) keyIdentifier.clone() : null; - } - - public GeneralNames getAuthorityCertIssuer() - { - return authorityCertIssuer; - } - - public BigInteger getAuthorityCertSerialNumber() - { - return authorityCertSerialNumber; - } - - public String toString() - { - return AuthorityKeyIdentifier.class.getName() + " [ keyId=" + - (keyIdentifier != null ? Util.toHexString (keyIdentifier, ':') : "nil") + - " authorityCertIssuer=" + authorityCertIssuer + - " authorityCertSerialNumbe=" + authorityCertSerialNumber + " ]"; - } -} diff --git a/libjava/gnu/java/security/x509/ext/BasicConstraints.java b/libjava/gnu/java/security/x509/ext/BasicConstraints.java deleted file mode 100644 index 00f7a6ed220..00000000000 --- a/libjava/gnu/java/security/x509/ext/BasicConstraints.java +++ /dev/null @@ -1,129 +0,0 @@ -/* BasicConstraints.java -- the basic constraints extension. - 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.java.security.x509.ext; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; - -import java.io.IOException; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - -public class BasicConstraints extends Extension.Value -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - public static final OID ID = new OID("2.5.29.19"); - - private final boolean ca; - private final int pathLenConstraint; - - // Constructor. - // ------------------------------------------------------------------------- - - public BasicConstraints(final byte[] encoded) throws IOException - { - super(encoded); - DERReader der = new DERReader(encoded); - DERValue bc = der.read(); - if (!bc.isConstructed()) - throw new IOException("malformed BasicConstraints"); - DERValue val = bc; - if (bc.getLength() > 0) - val = der.read(); - if (val.getTag() == DER.BOOLEAN) - { - ca = ((Boolean) val.getValue()).booleanValue(); - if (val.getEncodedLength() < bc.getLength()) - val = der.read(); - } - else - ca = false; - if (val.getTag() == DER.INTEGER) - { - pathLenConstraint = ((BigInteger) val.getValue()).intValue(); - } - else - pathLenConstraint = -1; - } - - public BasicConstraints (final boolean ca, final int pathLenConstraint) - { - this.ca = ca; - this.pathLenConstraint = pathLenConstraint; - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public boolean isCA() - { - return ca; - } - - public int getPathLengthConstraint() - { - return pathLenConstraint; - } - - public byte[] getEncoded() - { - if (encoded == null) - { - List bc = new ArrayList (2); - bc.add (new DERValue (DER.BOOLEAN, new Boolean (ca))); - if (pathLenConstraint >= 0) - bc.add (new DERValue (DER.INTEGER, - BigInteger.valueOf ((long) pathLenConstraint))); - encoded = new DERValue (DER.CONSTRUCTED|DER.SEQUENCE, bc).getEncoded(); - } - return (byte[]) encoded.clone(); - } - - public String toString() - { - return BasicConstraints.class.getName() + " [ isCA=" + ca + - " pathLen=" + pathLenConstraint + " ]"; - } -} diff --git a/libjava/gnu/java/security/x509/ext/CRLNumber.java b/libjava/gnu/java/security/x509/ext/CRLNumber.java deleted file mode 100644 index 36b1c7b5f1d..00000000000 --- a/libjava/gnu/java/security/x509/ext/CRLNumber.java +++ /dev/null @@ -1,97 +0,0 @@ -/* CRLNumber.java -- CRL number extension. - 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.java.security.x509.ext; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; - -import java.io.IOException; -import java.math.BigInteger; - -public class CRLNumber extends Extension.Value -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - public static final OID ID = new OID("2.5.29.20"); - - private final BigInteger number; - - // Constructor. - // ------------------------------------------------------------------------- - - public CRLNumber(final byte[] encoded) throws IOException - { - super(encoded); - DERValue val = DERReader.read(encoded); - if (val.getTag() != DER.INTEGER) - throw new IOException("malformed CRLNumber"); - number = (BigInteger) val.getValue(); - } - - public CRLNumber (final BigInteger number) - { - this.number = number; - } - - // Instance method. - // ------------------------------------------------------------------------- - - public BigInteger getNumber() - { - return number; - } - - public byte[] getEncoded() - { - if (encoded == null) - { - encoded = new DERValue (DER.INTEGER, number).getEncoded(); - } - return (byte[]) encoded.clone(); - } - - public String toString() - { - return CRLNumber.class.getName() + " [ " + number + " ]"; - } -} diff --git a/libjava/gnu/java/security/x509/ext/CertificatePolicies.java b/libjava/gnu/java/security/x509/ext/CertificatePolicies.java deleted file mode 100644 index 50bc6d367d7..00000000000 --- a/libjava/gnu/java/security/x509/ext/CertificatePolicies.java +++ /dev/null @@ -1,189 +0,0 @@ -/* CertificatePolicies.java -- certificate policy extension. - 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.java.security.x509.ext; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; - -import java.io.IOException; -import java.security.cert.PolicyQualifierInfo; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.Iterator; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; - -public class CertificatePolicies extends Extension.Value -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - public static final OID ID = new OID("2.5.29.32"); - - private final List policies; - private final Map policyQualifierInfos; - - // Constructor. - // ------------------------------------------------------------------------- - - public CertificatePolicies(final byte[] encoded) throws IOException - { - super(encoded); - DERReader der = new DERReader(encoded); - DERValue pol = der.read(); - if (!pol.isConstructed()) - throw new IOException("malformed CertificatePolicies"); - - int len = 0; - LinkedList policyList = new LinkedList(); - HashMap qualifierMap = new HashMap(); - while (len < pol.getLength()) - { - DERValue policyInfo = der.read(); - if (!policyInfo.isConstructed()) - throw new IOException("malformed PolicyInformation"); - DERValue val = der.read(); - if (val.getTag() != DER.OBJECT_IDENTIFIER) - throw new IOException("malformed CertPolicyId"); - OID policyId = (OID) val.getValue(); - policyList.add(policyId); - if (val.getEncodedLength() < policyInfo.getLength()) - { - DERValue qual = der.read(); - int len2 = 0; - LinkedList quals = new LinkedList(); - while (len2 < qual.getLength()) - { - val = der.read(); - quals.add(new PolicyQualifierInfo(val.getEncoded())); - der.skip(val.getLength()); - len2 += val.getEncodedLength(); - } - qualifierMap.put(policyId, quals); - } - len += policyInfo.getEncodedLength(); - } - - policies = Collections.unmodifiableList(policyList); - policyQualifierInfos = Collections.unmodifiableMap(qualifierMap); - } - - public CertificatePolicies (final List policies, - final Map policyQualifierInfos) - { - for (Iterator it = policies.iterator(); it.hasNext(); ) - if (!(it.next() instanceof OID)) - throw new IllegalArgumentException ("policies must be OIDs"); - for (Iterator it = policyQualifierInfos.entrySet().iterator(); it.hasNext();) - { - Map.Entry e = (Map.Entry) it.next(); - if (!(e.getKey() instanceof OID) || !policies.contains (e.getKey())) - throw new IllegalArgumentException - ("policyQualifierInfos keys must be OIDs"); - if (!(e.getValue() instanceof List)) - throw new IllegalArgumentException - ("policyQualifierInfos values must be Lists of PolicyQualifierInfos"); - for (Iterator it2 = ((List) e.getValue()).iterator(); it.hasNext(); ) - if (!(it2.next() instanceof PolicyQualifierInfo)) - throw new IllegalArgumentException - ("policyQualifierInfos values must be Lists of PolicyQualifierInfos"); - } - this.policies = Collections.unmodifiableList (new ArrayList (policies)); - this.policyQualifierInfos = Collections.unmodifiableMap - (new HashMap (policyQualifierInfos)); - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public List getPolicies() - { - return policies; - } - - public List getPolicyQualifierInfos(OID oid) - { - return (List) policyQualifierInfos.get(oid); - } - - public byte[] getEncoded() - { - if (encoded == null) - { - List pol = new ArrayList (policies.size()); - for (Iterator it = policies.iterator(); it.hasNext(); ) - { - OID policy = (OID) it.next(); - List qualifiers = getPolicyQualifierInfos (policy); - List l = new ArrayList (qualifiers == null ? 1 : 2); - l.add (new DERValue (DER.OBJECT_IDENTIFIER, policy)); - if (qualifiers != null) - { - List ll = new ArrayList (qualifiers.size()); - for (Iterator it2 = qualifiers.iterator(); it.hasNext(); ) - { - PolicyQualifierInfo info = (PolicyQualifierInfo) it2.next(); - try - { - ll.add (DERReader.read (info.getEncoded())); - } - catch (IOException ioe) - { - } - } - l.add (new DERValue (DER.CONSTRUCTED|DER.SEQUENCE, ll)); - } - pol.add (new DERValue (DER.CONSTRUCTED|DER.SEQUENCE, l)); - } - encoded = new DERValue (DER.CONSTRUCTED|DER.SEQUENCE, pol).getEncoded(); - } - return (byte[]) encoded.clone(); - } - - public String toString() - { - return CertificatePolicies.class.getName() + " [ policies=" + policies + - " policyQualifierInfos=" + policyQualifierInfos + " ]"; - } -} diff --git a/libjava/gnu/java/security/x509/ext/ExtendedKeyUsage.java b/libjava/gnu/java/security/x509/ext/ExtendedKeyUsage.java deleted file mode 100644 index 37b08acf43e..00000000000 --- a/libjava/gnu/java/security/x509/ext/ExtendedKeyUsage.java +++ /dev/null @@ -1,95 +0,0 @@ -/* ExtendedKeyUsage.java -- the extended key usage extension. - 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.java.security.x509.ext; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; - -import java.io.IOException; -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; - -public class ExtendedKeyUsage extends Extension.Value -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - public static final OID ID = new OID("2.5.29.37"); - - private final List purposeIds; - - // Constructor. - // ------------------------------------------------------------------------- - - public ExtendedKeyUsage(final byte[] encoded) throws IOException - { - super(encoded); - DERReader der = new DERReader(encoded); - DERValue usageList = der.read(); - if (!usageList.isConstructed()) - throw new IOException("malformed ExtKeyUsageSyntax"); - int len = 0; - purposeIds = new LinkedList(); - while (len < usageList.getLength()) - { - DERValue val = der.read(); - if (val.getTag() != DER.OBJECT_IDENTIFIER) - throw new IOException("malformed KeyPurposeId"); - purposeIds.add(val.getValue()); - len += val.getEncodedLength(); - } - } - - // Instance method. - // ------------------------------------------------------------------------- - - public List getPurposeIds() - { - return Collections.unmodifiableList(purposeIds); - } - - public String toString() - { - return ExtendedKeyUsage.class.getName() + " [ " + purposeIds + " ]"; - } -} diff --git a/libjava/gnu/java/security/x509/ext/Extension.java b/libjava/gnu/java/security/x509/ext/Extension.java deleted file mode 100644 index 5ca9ac3a91d..00000000000 --- a/libjava/gnu/java/security/x509/ext/Extension.java +++ /dev/null @@ -1,289 +0,0 @@ -/* Extension.java -- an X.509 certificate or CRL extension. - 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.java.security.x509.ext; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; -import gnu.java.security.x509.Util; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -public class Extension -{ - - // Fields. - // ------------------------------------------------------------------------- - - private static final boolean DEBUG = false; - private static void debug(String msg) - { - System.err.print(">> Extension: "); - System.err.println(msg); - } - - /** - * This extension's object identifier. - */ - protected final OID oid; - - /** - * The criticality flag. - */ - protected final boolean critical; - - /** - * Whether or not this extension is locally supported. - */ - protected boolean isSupported; - - /** - * The extension value. - */ - protected final Value value; - - /** - * The DER encoded form. - */ - protected byte[] encoded; - - // Constructors. - // ------------------------------------------------------------------------- - - public Extension(byte[] encoded) throws IOException - { - this.encoded = (byte[]) encoded.clone(); - DERReader der = new DERReader(encoded); - - // Extension ::= SEQUENCE { - DERValue val = der.read(); - if (DEBUG) debug("read val tag == " + val.getTag() + " len == " + val.getLength()); - if (!val.isConstructed()) - throw new IOException("malformed Extension"); - - // extnID OBJECT IDENTIFIER, - val = der.read(); - if (val.getTag() != DER.OBJECT_IDENTIFIER) - throw new IOException("expecting OBJECT IDENTIFIER"); - oid = (OID) val.getValue(); - if (DEBUG) debug("read oid == " + oid); - - // critical BOOLEAN DEFAULT FALSE, - val = der.read(); - if (val.getTag() == DER.BOOLEAN) - { - critical = ((Boolean) val.getValue()).booleanValue(); - val = der.read(); - } - else - critical = false; - if (DEBUG) debug("is critical == " + critical); - - // extnValue OCTET STRING } - if (val.getTag() != DER.OCTET_STRING) - throw new IOException("expecting OCTET STRING"); - byte[] encval = (byte[]) val.getValue(); - isSupported = true; - if (oid.equals(AuthorityKeyIdentifier.ID)) - { - value = new AuthorityKeyIdentifier(encval); - } - else if (oid.equals(SubjectKeyIdentifier.ID)) - { - value = new SubjectKeyIdentifier(encval); - } - else if (oid.equals(KeyUsage.ID)) - { - value = new KeyUsage(encval); - } - else if (oid.equals(PrivateKeyUsagePeriod.ID)) - { - value = new PrivateKeyUsagePeriod(encval); - } - else if (oid.equals(CertificatePolicies.ID)) - { - value = new CertificatePolicies(encval); - } - else if (oid.equals (PolicyConstraint.ID)) - { - value = new PolicyConstraint (encval); - } - else if (oid.equals(PolicyMappings.ID)) - { - value = new PolicyMappings(encval); - } - else if (oid.equals(SubjectAlternativeNames.ID)) - { - value = new SubjectAlternativeNames(encval); - } - else if (oid.equals(IssuerAlternativeNames.ID)) - { - value = new IssuerAlternativeNames(encval); - } - else if (oid.equals(BasicConstraints.ID)) - { - value = new BasicConstraints(encval); - } - else if (oid.equals(ExtendedKeyUsage.ID)) - { - value = new ExtendedKeyUsage(encval); - } - else if (oid.equals(CRLNumber.ID)) - { - value = new CRLNumber(encval); - } - else if (oid.equals(ReasonCode.ID)) - { - value = new ReasonCode(encval); - } - else - { - value = new Value(encval); - isSupported = false; - } - if (DEBUG) debug("read value == " + value); - } - - public Extension (final OID oid, final Value value, final boolean critical) - { - this.oid = oid; - this.value = value; - this.critical = critical; - isSupported = true; - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public OID getOid() - { - return oid; - } - - public boolean isCritical() - { - return critical; - } - - public boolean isSupported() - { - return isSupported; - } - - public Value getValue() - { - return value; - } - - public byte[] getEncoded() - { - if (encoded == null) - encode(); - return (byte[]) encoded.clone(); - } - - public String toString() - { - return Extension.class.getName() + " [ id=" + oid + " critical=" + - critical + " value=" + value + " ]"; - } - - public DERValue getDerValue() - { - List ext = new ArrayList (3); - ext.add (new DERValue (DER.OBJECT_IDENTIFIER, oid)); - ext.add (new DERValue (DER.BOOLEAN, new Boolean (critical))); - ext.add (new DERValue (DER.OCTET_STRING, value.getEncoded())); - return new DERValue (DER.CONSTRUCTED|DER.SEQUENCE, ext); - } - - // Own methods. - // ------------------------------------------------------------------------- - - private void encode() - { - encoded = getDerValue().getEncoded(); - } - - // Inner class. - // ------------------------------------------------------------------------- - - public static class Value - { - - // Fields. - // ----------------------------------------------------------------------- - - protected byte[] encoded; - - // Constructor. - // ----------------------------------------------------------------------- - - public Value(byte[] encoded) - { - this.encoded = (byte[]) encoded.clone(); - } - - protected Value() { } - - // Instance methods. - // ----------------------------------------------------------------------- - - public byte[] getEncoded() - { - return (byte[]) encoded; - } - - public boolean equals(Object o) - { - if (!(o instanceof Value)) - return false; - return Arrays.equals(encoded, ((Value) o).encoded); - } - - public String toString() - { - return Util.toHexString(encoded, ':'); - } - } -} diff --git a/libjava/gnu/java/security/x509/ext/GeneralNames.java b/libjava/gnu/java/security/x509/ext/GeneralNames.java deleted file mode 100644 index e92aedaefd0..00000000000 --- a/libjava/gnu/java/security/x509/ext/GeneralNames.java +++ /dev/null @@ -1,155 +0,0 @@ -/* GeneralNames.java -- the GeneralNames object - 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.java.security.x509.ext; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; -import gnu.java.security.x509.X500DistinguishedName; - -import java.io.IOException; -import java.net.InetAddress; -import java.util.ArrayList; -import java.util.Collections; -import java.util.Iterator; -import java.util.LinkedList; -import java.util.List; - -public class GeneralNames -{ - - // Instance methods. - // ------------------------------------------------------------------------- - - public static final int OTHER_NAME = 0; - public static final int RFC822_NAME = 1; - public static final int DNS_NAME = 2; - public static final int X400_ADDRESS = 3; - public static final int DIRECTORY_NAME = 4; - public static final int EDI_PARTY_NAME = 5; - public static final int URI = 6; - public static final int IP_ADDRESS = 7; - public static final int REGISTERED_ID = 8; - - private List names; - - // Constructor. - // ------------------------------------------------------------------------- - - public GeneralNames(final byte[] encoded) throws IOException - { - names = new LinkedList(); - DERReader der = new DERReader(encoded); - DERValue nameList = der.read(); - if (!nameList.isConstructed()) - throw new IOException("malformed GeneralNames"); - int len = 0; - while (len < nameList.getLength()) - { - DERValue name = der.read(); - List namePair = new ArrayList(2); - if (name.getTagClass() != DER.APPLICATION) - throw new IOException("malformed GeneralName"); - namePair.add(new Integer(name.getTag())); - DERValue val = null; - switch (name.getTag()) - { - case RFC822_NAME: - case DNS_NAME: - case X400_ADDRESS: - case URI: - namePair.add(new String((byte[]) name.getValue())); - break; - - case OTHER_NAME: - case EDI_PARTY_NAME: - namePair.add(name.getValue()); - break; - - case DIRECTORY_NAME: - byte[] b = name.getEncoded(); - b[0] = (byte) (DER.CONSTRUCTED|DER.SEQUENCE); - namePair.add(new X500DistinguishedName(b).toString()); - break; - - case IP_ADDRESS: - namePair.add(InetAddress.getByAddress((byte[]) name.getValue()) - .getHostAddress()); - break; - - case REGISTERED_ID: - byte[] bb = name.getEncoded(); - bb[0] = (byte) DER.OBJECT_IDENTIFIER; - namePair.add(new OID(bb).toString()); - break; - - default: - throw new IOException("unknown tag " + name.getTag()); - } - names.add(namePair); - len += name.getEncodedLength(); - } - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public List getNames() - { - List l = new ArrayList(names.size()); - for (Iterator it = names.iterator(); it.hasNext(); ) - { - List ll = (List) it.next(); - List pair = new ArrayList(2); - pair.add(ll.get(0)); - if (ll.get(1) instanceof byte[]) - pair.add(((byte[]) ll.get(1)).clone()); - else - pair.add(ll.get(1)); - l.add(Collections.unmodifiableList(pair)); - } - return Collections.unmodifiableList(l); - } - - public String toString() - { - return GeneralNames.class.getName() + " [ " + names + " ]"; - } -} diff --git a/libjava/gnu/java/security/x509/ext/IssuerAlternativeNames.java b/libjava/gnu/java/security/x509/ext/IssuerAlternativeNames.java deleted file mode 100644 index 8b017dc62d8..00000000000 --- a/libjava/gnu/java/security/x509/ext/IssuerAlternativeNames.java +++ /dev/null @@ -1,77 +0,0 @@ -/* IssuerAlternatuveNames.java -- issuer alternative names extension. - 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.java.security.x509.ext; - -import gnu.java.security.OID; - -import java.io.IOException; -import java.util.List; - -public class IssuerAlternativeNames extends Extension.Value -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - public static final OID ID = new OID("2.5.29.18"); - - private final GeneralNames names; - - // Constructor. - // ------------------------------------------------------------------------- - - public IssuerAlternativeNames(final byte[] encoded) throws IOException - { - super(encoded); - names = new GeneralNames(encoded); - } - - // Instance method. - // ------------------------------------------------------------------------- - - public List getNames() - { - return names.getNames(); - } - - public String toString() - { - return IssuerAlternativeNames.class.getName() + " [ " + names + " ]"; - } -} diff --git a/libjava/gnu/java/security/x509/ext/KeyUsage.java b/libjava/gnu/java/security/x509/ext/KeyUsage.java deleted file mode 100644 index dcd98181e12..00000000000 --- a/libjava/gnu/java/security/x509/ext/KeyUsage.java +++ /dev/null @@ -1,92 +0,0 @@ -/* KeyUsage.java -- the key usage extension. - 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.java.security.x509.ext; - -import gnu.java.security.OID; -import gnu.java.security.der.BitString; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; - -import java.io.IOException; - -public class KeyUsage extends Extension.Value -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - public static final OID ID = new OID("2.5.29.15"); - public static final int DIGITAL_SIGNATURE = 0; - public static final int NON_REPUDIATION = 1; - public static final int KEY_ENCIPHERMENT = 2; - public static final int DATA_ENCIPHERMENT = 3; - public static final int KEY_AGREEMENT = 4; - public static final int KEY_CERT_SIGN = 5; - public static final int CRL_SIGN = 6; - public static final int ENCIPHER_ONLY = 7; - public static final int DECIPHER_ONLY = 8; - - private final BitString keyUsage; - - // Constructor. - // ------------------------------------------------------------------------- - - public KeyUsage(final byte[] encoded) throws IOException - { - super(encoded); - DERValue val = DERReader.read(encoded); - if (val.getTag() != DER.BIT_STRING) - throw new IOException("malformed KeyUsage"); - keyUsage = (BitString) val.getValue(); - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public BitString getKeyUsage() - { - return keyUsage; - } - - public String toString() - { - return KeyUsage.class.getName() + " [ " + keyUsage + " ]"; - } -} diff --git a/libjava/gnu/java/security/x509/ext/PolicyConstraint.java b/libjava/gnu/java/security/x509/ext/PolicyConstraint.java deleted file mode 100644 index 20cf552a0fe..00000000000 --- a/libjava/gnu/java/security/x509/ext/PolicyConstraint.java +++ /dev/null @@ -1,107 +0,0 @@ -/* PolicyConstraint.java -- policyConstraint extension - 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.java.security.x509.ext; - -import gnu.java.security.OID; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; - -import java.io.IOException; -import java.math.BigInteger; - -public class PolicyConstraint extends Extension.Value -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - public static final OID ID = new OID ("2.5.29.36"); - - private final int requireExplicitPolicy; - private final int inhibitPolicyMapping; - - // Constructors. - // ------------------------------------------------------------------------- - - public PolicyConstraint (final byte[] encoded) throws IOException - { - super (encoded); - int rpc = -1, ipm = -1; - DERReader der = new DERReader(encoded); - DERValue pc = der.read(); - if (!pc.isConstructed()) - throw new IOException("malformed PolicyConstraints"); - DERValue val; - int len = pc.getLength(); - while (len > 0) - { - val = der.read(); - if (val.getTag() == 0) - rpc = new BigInteger ((byte[]) val.getValue()).intValue(); - else if (val.getTag() == 1) - ipm = new BigInteger ((byte[]) val.getValue()).intValue(); - else - throw new IOException ("invalid policy constraint"); - len -= val.getEncodedLength(); - } - - requireExplicitPolicy = rpc; - inhibitPolicyMapping = ipm; - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public int getRequireExplicitPolicy() - { - return requireExplicitPolicy; - } - - public int getInhibitPolicyMapping() - { - return inhibitPolicyMapping; - } - - public String toString() - { - return PolicyConstraint.class.getName() + " [ requireExplicitPolicy=" + - requireExplicitPolicy + " inhibitPolicyMapping=" + inhibitPolicyMapping - + " ]"; - } -} diff --git a/libjava/gnu/java/security/x509/ext/PolicyMappings.java b/libjava/gnu/java/security/x509/ext/PolicyMappings.java deleted file mode 100644 index 0493ed89dd4..00000000000 --- a/libjava/gnu/java/security/x509/ext/PolicyMappings.java +++ /dev/null @@ -1,104 +0,0 @@ -/* PolicyMappings.java -- policy mappings extension. - 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.java.security.x509.ext; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; - -import java.io.IOException; -import java.util.Collections; -import java.util.HashMap; -import java.util.Map; - -public class PolicyMappings extends Extension.Value -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - public static final OID ID = new OID("2.5.29.33"); - - private final Map mappings; - - // Constructor. - // ------------------------------------------------------------------------- - - public PolicyMappings(final byte[] encoded) throws IOException - { - super(encoded); - DERReader der = new DERReader(encoded); - DERValue maps = der.read(); - if (!maps.isConstructed()) - throw new IOException("malformed PolicyMappings"); - int len = 0; - HashMap _mappings = new HashMap(); - while (len < maps.getLength()) - { - DERValue map = der.read(); - if (!map.isConstructed()) - throw new IOException("malformed PolicyMapping"); - DERValue val = der.read(); - if (val.getTag() != DER.OBJECT_IDENTIFIER) - throw new IOException("malformed PolicyMapping"); - OID issuerPolicy = (OID) val.getValue(); - val = der.read(); - if (val.getTag() != DER.OBJECT_IDENTIFIER) - throw new IOException("malformed PolicyMapping"); - OID subjectPolicy = (OID) val.getValue(); - _mappings.put(issuerPolicy, subjectPolicy); - len += map.getEncodedLength(); - } - mappings = Collections.unmodifiableMap(_mappings); - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public OID getSubjectDomainPolicy(OID issuerDomainPolicy) - { - return (OID) mappings.get(issuerDomainPolicy); - } - - public String toString() - { - return PolicyMappings.class.getName() + " [ " + mappings + " ]"; - } -} diff --git a/libjava/gnu/java/security/x509/ext/PrivateKeyUsagePeriod.java b/libjava/gnu/java/security/x509/ext/PrivateKeyUsagePeriod.java deleted file mode 100644 index 3b531c05517..00000000000 --- a/libjava/gnu/java/security/x509/ext/PrivateKeyUsagePeriod.java +++ /dev/null @@ -1,105 +0,0 @@ -/* PrivateKeyUsagePeriod.java -- private key usage period extension. - 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.java.security.x509.ext; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; - -import java.io.IOException; -import java.util.Date; - -public class PrivateKeyUsagePeriod extends Extension.Value -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - public static final OID ID = new OID("2.5.29.16"); - - private final Date notBefore; - private final Date notAfter; - - // Constructor. - // ------------------------------------------------------------------------- - - public PrivateKeyUsagePeriod(final byte[] encoded) throws IOException - { - super(encoded); - DERReader der = new DERReader(encoded); - DERValue val = der.read(); - if (!val.isConstructed()) - throw new IOException("malformed PrivateKeyUsagePeriod"); - if (val.getLength() > 0) - val = der.read(); - if (val.getTagClass() == DER.APPLICATION || val.getTag() == 0) - { - notBefore = (Date) val.getValueAs (DER.GENERALIZED_TIME); - val = der.read(); - } - else - notBefore = null; - if (val.getTagClass() == DER.APPLICATION || val.getTag() == 1) - { - notAfter = (Date) val.getValueAs (DER.GENERALIZED_TIME); - } - else - notAfter = null; - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public Date getNotBefore() - { - return notBefore != null ? (Date) notBefore.clone() : null; - } - - public Date getNotAfter() - { - return notAfter != null ? (Date) notAfter.clone() : null; - } - - public String toString() - { - return PrivateKeyUsagePeriod.class.getName() + " [ notBefore=" + notBefore - + " notAfter=" + notAfter + " ]"; - } -} diff --git a/libjava/gnu/java/security/x509/ext/ReasonCode.java b/libjava/gnu/java/security/x509/ext/ReasonCode.java deleted file mode 100644 index a6d59e43ae8..00000000000 --- a/libjava/gnu/java/security/x509/ext/ReasonCode.java +++ /dev/null @@ -1,85 +0,0 @@ -/* ReasonCode.java -- a reason code for a certificate revocation. - 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.java.security.x509.ext; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; - -import java.io.IOException; -import java.math.BigInteger; - -public class ReasonCode extends Extension.Value -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - public static final OID ID = new OID("2.5.29.21"); - - public final int reason; - - // Constructor. - // ------------------------------------------------------------------------- - - public ReasonCode(final byte[] encoded) throws IOException - { - super(encoded); - DERValue val = DERReader.read(encoded); - if (val.getTag() != DER.ENUMERATED) - throw new IOException("malformed CRLReason"); - reason = ((BigInteger) val.getValue()).intValue(); - if (reason < 0 || reason == 7 || reason > 10) - throw new IOException("illegal reason: " + reason); - } - - // Instance method. - // ------------------------------------------------------------------------- - - public int getReasonCode() - { - return reason; - } - - public String toString() - { - return ReasonCode.class.getName() + " [ " + reason + " ]"; - } -} diff --git a/libjava/gnu/java/security/x509/ext/SubjectAlternativeNames.java b/libjava/gnu/java/security/x509/ext/SubjectAlternativeNames.java deleted file mode 100644 index f88e854965f..00000000000 --- a/libjava/gnu/java/security/x509/ext/SubjectAlternativeNames.java +++ /dev/null @@ -1,77 +0,0 @@ -/* SubjectAlternatuveNames.java -- subject alternative names extension. - 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.java.security.x509.ext; - -import gnu.java.security.OID; - -import java.io.IOException; -import java.util.List; - -public class SubjectAlternativeNames extends Extension.Value -{ - - // Constants and fields. - // ------------------------------------------------------------------------- - - public static final OID ID = new OID("2.5.29.17"); - - private final GeneralNames names; - - // Constructor. - // ------------------------------------------------------------------------- - - public SubjectAlternativeNames(final byte[] encoded) throws IOException - { - super(encoded); - names = new GeneralNames(encoded); - } - - // Instance method. - // ------------------------------------------------------------------------- - - public List getNames() - { - return names.getNames(); - } - - public String toString() - { - return SubjectAlternativeNames.class.getName() + " [ " + names + " ]"; - } -} diff --git a/libjava/gnu/java/security/x509/ext/SubjectKeyIdentifier.java b/libjava/gnu/java/security/x509/ext/SubjectKeyIdentifier.java deleted file mode 100644 index fc65abe211c..00000000000 --- a/libjava/gnu/java/security/x509/ext/SubjectKeyIdentifier.java +++ /dev/null @@ -1,84 +0,0 @@ -/* SubjectKeyIdentifier.java -- subject key identifier extension. - 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.java.security.x509.ext; - -import gnu.java.security.OID; -import gnu.java.security.der.DER; -import gnu.java.security.der.DERReader; -import gnu.java.security.der.DERValue; -import gnu.java.security.x509.Util; - -import java.io.IOException; - -public class SubjectKeyIdentifier extends Extension.Value -{ - - // Constant. - // ------------------------------------------------------------------------- - - public static final OID ID = new OID("2.5.29.14"); - - private final byte[] keyIdentifier; - - // Constructor. - // ------------------------------------------------------------------------- - - public SubjectKeyIdentifier(final byte[] encoded) throws IOException - { - super(encoded); - DERValue val = DERReader.read(encoded); - if (val.getTag() != DER.OCTET_STRING) - throw new IOException("malformed SubjectKeyIdentifier"); - keyIdentifier = (byte[]) val.getValue(); - } - - // Instance methods. - // ------------------------------------------------------------------------- - - public byte[] getKeyIdentifier() - { - return (byte[]) keyIdentifier.clone(); - } - - public String toString() - { - return SubjectKeyIdentifier.class.getName() + " [ " + - Util.toHexString (keyIdentifier, ':') + " ]"; - } -} diff --git a/libjava/gnu/java/text/AttributedFormatBuffer.java b/libjava/gnu/java/text/AttributedFormatBuffer.java deleted file mode 100644 index 8cfc8f56ddb..00000000000 --- a/libjava/gnu/java/text/AttributedFormatBuffer.java +++ /dev/null @@ -1,247 +0,0 @@ -/* AttributedFormatBuffer.java -- Implements an attributed FormatBuffer. - 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.java.text; - -import java.text.AttributedCharacterIterator; -import java.util.ArrayList; -import java.util.HashMap; - -/** - * This class is an implementation of a FormatBuffer with attributes. - * - * @author Guilhem Lavaux - * @date April 10, 2004 - */ -public class AttributedFormatBuffer implements FormatBuffer -{ - private StringBuffer buffer; - private ArrayList ranges; - private ArrayList attributes; - private int[] a_ranges; - private HashMap[] a_attributes; - private int startingRange; - AttributedCharacterIterator.Attribute defaultAttr; - - /** - * This constructor accepts a StringBuffer. If the buffer contains - * already some characters they will not be attributed. - */ - public AttributedFormatBuffer(StringBuffer buffer) - { - this.buffer = buffer; - this.ranges = new ArrayList(); - this.attributes = new ArrayList(); - this.defaultAttr = null; - if (buffer.length() != 0) - { - this.startingRange = buffer.length(); - addAttribute(buffer.length(), null); - } - else - this.startingRange = -1; - } - - public AttributedFormatBuffer(int prebuffer) - { - this(new StringBuffer(prebuffer)); - } - - public AttributedFormatBuffer() - { - this(10); - } - - /** - * This method is a helper function for formatters. Given a set of ranges - * and attributes it adds exactly one attribute for the range of characters - * comprised between the last entry in 'ranges' and the specified new range. - * - * @param new_range A new range to insert in the list. - * @param new_attribute A new attribute to insert in the list. - */ - private final void addAttribute(int new_range, AttributedCharacterIterator.Attribute attr) - { - HashMap map; - - if (attr != null) - { - map = new HashMap(); - map.put(attr, attr); - attributes.add(map); - } - else - attributes.add(null); - - ranges.add(new Integer(new_range)); - } - - public void append(String s) - { - if (startingRange < 0) - startingRange = 0; - buffer.append(s); - } - - public void append(String s, AttributedCharacterIterator.Attribute attr) - { - setDefaultAttribute(attr); - startingRange = buffer.length(); - append(s); - setDefaultAttribute(null); - } - - public void append(String s, int[] ranges, HashMap[] attrs) - { - int curPos = buffer.length(); - - setDefaultAttribute(null); - if (ranges != null) - { - for (int i = 0; i < ranges.length; i++) - { - this.ranges.add(new Integer(ranges[i] + curPos)); - this.attributes.add(attrs[i]); - } - } - startingRange = buffer.length(); - buffer.append(s); - } - - public void append(char c) - { - if (startingRange < 0) - startingRange = buffer.length(); - buffer.append(c); - } - - public void append(char c, AttributedCharacterIterator.Attribute attr) - { - setDefaultAttribute(attr); - buffer.append(c); - setDefaultAttribute(null); - } - - public void setDefaultAttribute(AttributedCharacterIterator.Attribute attr) - { - if (attr == defaultAttr) - return; - - int currentPos = buffer.length(); - - if (startingRange != currentPos && startingRange >= 0) - { - addAttribute(currentPos, defaultAttr); - } - defaultAttr = attr; - startingRange = currentPos; - } - - public AttributedCharacterIterator.Attribute getDefaultAttribute() - { - return defaultAttr; - } - - public void cutTail(int length) - { - buffer.setLength(buffer.length()-length); - } - - public int length() - { - return buffer.length(); - } - - public void clear() - { - buffer.setLength(0); - ranges.clear(); - attributes.clear(); - defaultAttr = null; - startingRange = -1; - } - - /** - * This method synchronizes the state of the attribute array. - * After calling it you may call {@link #getDefaultAttribute()}. - */ - public void sync() - { - if (startingRange < 0 || startingRange == buffer.length()) - return; - - addAttribute(buffer.length(), defaultAttr); - - a_ranges = new int[ranges.size()]; - for (int i = 0; i < a_ranges.length; i++) - a_ranges[i] = ((Integer)(ranges.get (i))).intValue(); - - a_attributes = new HashMap[attributes.size()]; - System.arraycopy(attributes.toArray(), 0, a_attributes, 0, a_attributes.length); - } - - /** - * This method returns the internal StringBuffer describing - * the attributed string. - * - * @return An instance of StringBuffer which contains the string. - */ - public StringBuffer getBuffer() - { - return buffer; - } - - /** - * This method returns the ranges for the attributes. - * - * @return An array of int describing the ranges. - */ - public int[] getRanges() - { - return a_ranges; - } - - /** - * This method returns the array containing the map on the - * attributes. - * - * @return An array of {@link java.util.Map} containing the attributes. - */ - public HashMap[] getAttributes() - { - return a_attributes; - } -} diff --git a/libjava/gnu/java/text/BaseBreakIterator.java b/libjava/gnu/java/text/BaseBreakIterator.java deleted file mode 100644 index c28a2089ad7..00000000000 --- a/libjava/gnu/java/text/BaseBreakIterator.java +++ /dev/null @@ -1,121 +0,0 @@ -/* BaseBreakIterator.java -- Base class for default BreakIterators - Copyright (C) 1999, 2001, 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.java.text; - -import java.text.BreakIterator; -import java.text.CharacterIterator; -import java.text.StringCharacterIterator; - -/** - * @author Tom Tromey - * @date March 22, 1999 - */ - -public abstract class BaseBreakIterator extends BreakIterator -{ - public BaseBreakIterator () - { - // It isn't documented, but break iterators are created in a - // working state; their methods won't throw exceptions before - // setText(). - iter = new StringCharacterIterator(""); - } - - public int current () - { - return iter.getIndex(); - } - - public int first () - { - iter.first(); - return iter.getBeginIndex(); - } - - public int following (int pos) - { - int save = iter.getIndex(); - iter.setIndex(pos); - int r = next (); - iter.setIndex(save); - return r; - } - - public CharacterIterator getText () - { - return iter; - } - - public int last () - { - iter.last(); - // Go past the last character. - iter.next(); - return iter.getEndIndex(); - } - - public int next (int n) - { - int r = iter.getIndex (); - if (n > 0) - { - while (n > 0 && r != DONE) - { - r = next (); - --n; - } - } - else if (n < 0) - { - while (n < 0 && r != DONE) - { - r = previous (); - ++n; - } - } - return r; - } - - public void setText (CharacterIterator newText) - { - iter = newText; - } - - protected CharacterIterator iter; -} diff --git a/libjava/gnu/java/text/CharacterBreakIterator.java b/libjava/gnu/java/text/CharacterBreakIterator.java deleted file mode 100644 index 5274543a9e5..00000000000 --- a/libjava/gnu/java/text/CharacterBreakIterator.java +++ /dev/null @@ -1,213 +0,0 @@ -/* CharacterBreakIterator.java - Default character BreakIterator. - Copyright (C) 1999, 2001, 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.java.text; - -import java.text.CharacterIterator; - -/** - * @author Tom Tromey - * @date March 19, 1999 - * Written using The Unicode Standard, Version 2.0. - */ - -public class CharacterBreakIterator extends BaseBreakIterator -{ - // Hangul Jamo constants from Unicode book. - private static final int LBase = 0x1100; - private static final int VBase = 0x1161; - private static final int TBase = 0x11a7; - private static final int LCount = 19; - private static final int VCount = 21; - private static final int TCount = 28; - - // Information about surrogates. - private static final int highSurrogateStart = 0xD800; - private static final int highSurrogateEnd = 0xDBFF; - private static final int lowSurrogateStart = 0xDC00; - private static final int lowSurrogateEnd = 0xDFFF; - - public Object clone () - { - return new CharacterBreakIterator (this); - } - - public CharacterBreakIterator () - { - } - - private CharacterBreakIterator (CharacterBreakIterator other) - { - iter = (CharacterIterator) other.iter.clone(); - } - - // Some methods to tell us different properties of characters. - private final boolean isL (char c) - { - return c >= LBase && c <= LBase + LCount; - } - private final boolean isV (char c) - { - return c >= VBase && c <= VBase + VCount; - } - private final boolean isT (char c) - { - return c >= TBase && c <= TBase + TCount; - } - private final boolean isLVT (char c) - { - return isL (c) || isV (c) || isT (c); - } - private final boolean isHighSurrogate (char c) - { - return c >= highSurrogateStart && c <= highSurrogateEnd; - } - private final boolean isLowSurrogate (char c) - { - return c >= lowSurrogateStart && c <= lowSurrogateEnd; - } - - public int next () - { - int end = iter.getEndIndex(); - if (iter.getIndex() == end) - return DONE; - - char c; - for (char prev = CharacterIterator.DONE; iter.getIndex() < end; prev = c) - { - c = iter.next(); - if (c == CharacterIterator.DONE) - break; - int type = Character.getType(c); - - // Break after paragraph separators. - if (type == Character.PARAGRAPH_SEPARATOR) - break; - - // Now we need some lookahead. - char ahead = iter.next(); - iter.previous(); - if (ahead == CharacterIterator.DONE) - break; - int aheadType = Character.getType(ahead); - - if (aheadType != Character.NON_SPACING_MARK - && ! isLowSurrogate (ahead) - && ! isLVT (ahead)) - break; - if (! isLVT (c) && isLVT (ahead)) - break; - if (isL (c) && ! isLVT (ahead) - && aheadType != Character.NON_SPACING_MARK) - break; - if (isV (c) && ! isV (ahead) && !isT (ahead) - && aheadType != Character.NON_SPACING_MARK) - break; - if (isT (c) && ! isT (ahead) - && aheadType != Character.NON_SPACING_MARK) - break; - - if (! isHighSurrogate (c) && isLowSurrogate (ahead)) - break; - if (isHighSurrogate (c) && ! isLowSurrogate (ahead)) - break; - if (! isHighSurrogate (prev) && isLowSurrogate (c)) - break; - } - - return iter.getIndex(); - } - - public int previous () - { - if (iter.getIndex() == iter.getBeginIndex()) - return DONE; - - while (iter.getIndex() >= iter.getBeginIndex()) - { - char c = iter.previous(); - if (c == CharacterIterator.DONE) - break; - int type = Character.getType(c); - - if (type != Character.NON_SPACING_MARK - && ! isLowSurrogate (c) - && ! isLVT (c)) - break; - - // Now we need some lookahead. - char ahead = iter.previous(); - if (ahead == CharacterIterator.DONE) - { - iter.next(); - break; - } - char ahead2 = iter.previous(); - iter.next(); - iter.next(); - if (ahead2 == CharacterIterator.DONE) - break; - int aheadType = Character.getType(ahead); - - if (aheadType == Character.PARAGRAPH_SEPARATOR) - break; - - if (isLVT (c) && ! isLVT (ahead)) - break; - if (! isLVT (c) && type != Character.NON_SPACING_MARK - && isL (ahead)) - break; - if (! isV (c) && ! isT (c) && type != Character.NON_SPACING_MARK - && isV (ahead)) - break; - if (! isT (c) && type != Character.NON_SPACING_MARK - && isT (ahead)) - break; - - if (isLowSurrogate (c) && ! isHighSurrogate (ahead)) - break; - if (! isLowSurrogate (c) && isHighSurrogate (ahead)) - break; - if (isLowSurrogate (ahead) && ! isHighSurrogate (ahead2)) - break; - } - - return iter.getIndex(); - } -} diff --git a/libjava/gnu/java/text/FormatBuffer.java b/libjava/gnu/java/text/FormatBuffer.java deleted file mode 100644 index e6b68208792..00000000000 --- a/libjava/gnu/java/text/FormatBuffer.java +++ /dev/null @@ -1,136 +0,0 @@ -/* FormatBuffer.java -- General interface to build attributed strings. - 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.java.text; - -import java.text.AttributedCharacterIterator; -import java.util.HashMap; - -/** - * This interface describes a modifiable buffer which contains attributed - * characters. The implementation may or may not implements attributes. It - * aims to greatly simplify and clarify the implementation of java.text - * formatters. The buffer may be appended or have its tail cut. It may also - * be completely cleant up. - * - * @author Guilhem Lavaux - * @date April 10, 2004 - */ -public interface FormatBuffer -{ - /** - * This method appends a simple string to the buffer. This part of - * the buffer will be attributed using the default attribute. - * - * @param s The string to append to the buffer. - */ - public void append(String s); - - /** - * This method appends a simple string to the buffer. This part of - * the buffer will have the specified attribute (and only this one). - * The default attribute may be changed after calling this method. - * - * @param s The string to append to the buffer. - * @param attr Attribute to use for the string in the buffer. - */ - public void append(String s, AttributedCharacterIterator.Attribute attr); - - /** - * This method appends a simple string to the buffer. This part of - * the buffer will be attributed using the specified ranges and attributes. - * To have an example on how to specify ranges see {@link gnu.java.text.FormatCharacterIterator}. - * - * @param s The string to append to the buffer. - * @param ranges The ranges describing how the attributes should be applied - * to the string. - * @param attrs The attributes of the string in the buffer. - */ - public void append(String s, int[] ranges, HashMap[] attrs); - - /** - * This method appends a simple char to the buffer. This part of - * the buffer will be attributed using the default attribute. - * - * @param c The character to append to the buffer. - */ - public void append(char c); - - /** - * This method appends a simple character to the buffer. This part of - * the buffer will have the specified attribute (and only this one). - * The default attribute may be changed after calling this method. - * - * @param c The character to append to the buffer. - * @param attr Attribute to use for the character in the buffer. - */ - public void append(char c, AttributedCharacterIterator.Attribute attr); - - /** - * This method changes the current default attribute for the next string - * or character which will be appended to the buffer. - * - * @param attr The attribute which will be used by default. - */ - public void setDefaultAttribute(AttributedCharacterIterator.Attribute attr); - - /** - * This method returns the current default attribute for the buffer. - * - * @return The default attribute for the buffer. - */ - public AttributedCharacterIterator.Attribute getDefaultAttribute(); - - /** - * This method cuts the last characters of the buffer. The number of - * characters to cut is given by "length". - * - * @param length Number of characters to cut at the end of the buffer. - */ - public void cutTail(int length); - - /** - * This method resets completely the buffer. - */ - public void clear(); - - /** - * This method returns the number of character in the buffer. - * - * @return The number of character in the buffer. - */ - public int length(); -} diff --git a/libjava/gnu/java/text/FormatCharacterIterator.java b/libjava/gnu/java/text/FormatCharacterIterator.java deleted file mode 100644 index 7c41ed27c82..00000000000 --- a/libjava/gnu/java/text/FormatCharacterIterator.java +++ /dev/null @@ -1,534 +0,0 @@ -/* FormatCharacter.java -- Implementation of AttributedCharacterIterator for - formatters. - Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005 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.java.text; - -import gnu.classpath.Configuration; - -import java.text.AttributedCharacterIterator; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; -import java.util.Map; -import java.util.Set; -import java.util.Vector; - -/** - * This class should not be put public and it is only intended to the - * classes of the java.text package. Its aim is to build a segmented - * character iterator by appending strings and adding attributes to - * portions of strings. The code intends to do some optimization - * concerning memory consumption and attribute access but at the - * end it is only an AttributedCharacterIterator. - * - * @author Guilhem Lavaux - * @date November 22, 2003 - */ -public class FormatCharacterIterator implements AttributedCharacterIterator -{ - private String formattedString; - private int charIndex; - private int attributeIndex; - private int[] ranges; - private HashMap[] attributes; - - /** - * This constructor builds an empty iterated strings. The attributes - * are empty and so is the string. However you may append strings - * and attributes to this iterator. - */ - public FormatCharacterIterator() - { - formattedString = ""; - ranges = new int[0]; - attributes = new HashMap[0]; - } - - /** - * This constructor take a string s, a set of ranges - * and the corresponding attributes. This is used to build an iterator. - * The array ranges should be formatted as follow: - * each element of ranges specifies the index in the string - * until which the corresponding map of attributes at the same position - * is applied. For example, if you have: - *

-   *   s = "hello";
-   *   ranges = new int[] { 2, 6 };
-   *   attributes = new HashMap[2];
-   * 
- * "he" will have the attributes attributes[0], - * "llo" the attributes[1]. - */ - public FormatCharacterIterator (String s, int[] ranges, HashMap[] attributes) - { - formattedString = s; - this.ranges = ranges; - this.attributes = attributes; - } - - /* - * The following methods are inherited from AttributedCharacterIterator, - * and thus are already documented. - */ - - public Set getAllAttributeKeys() - { - if (attributes != null && attributes[attributeIndex] != null) - return attributes[attributeIndex].keySet(); - else - return new HashSet(); - } - - public Map getAttributes() - { - if (attributes != null && attributes[attributeIndex] != null) - return attributes[attributeIndex]; - else - return new HashMap(); - } - - public Object getAttribute (AttributedCharacterIterator.Attribute attrib) - { - if (attributes != null && attributes[attributeIndex] != null) - return attributes[attributeIndex].get (attrib); - else - return null; - } - - public int getRunLimit(Set reqAttrs) - { - if (attributes == null) - return formattedString.length(); - - int currentAttrIndex = attributeIndex; - Set newKeys; - - do - { - currentAttrIndex++; - if (currentAttrIndex == attributes.length) - return formattedString.length(); - if (attributes[currentAttrIndex] == null) - break; - newKeys = attributes[currentAttrIndex].keySet(); - } - while (newKeys.containsAll (reqAttrs)); - - return ranges[currentAttrIndex-1]; - } - - public int getRunLimit (AttributedCharacterIterator.Attribute attribute) - { - Set s = new HashSet(); - - s.add (attribute); - return getRunLimit (s); - } - - public int getRunLimit() - { - if (attributes == null) - return formattedString.length(); - if (attributes[attributeIndex] == null) - { - for (int i=attributeIndex+1;i 0) ? ranges[currentAttrIndex-1] : 0; - } - - public int getRunStart() - { - if (attributes == null) - return 0; - - if (attributes[attributeIndex] == null) - { - for (int i=attributeIndex;i>0;i--) - if (attributes[i] != null) - return ranges[attributeIndex-1]; - return 0; - } - - return getRunStart (attributes[attributeIndex].keySet()); - } - - public int getRunStart (AttributedCharacterIterator.Attribute attribute) - { - Set s = new HashSet(); - - s.add (attribute); - return getRunStart (s); - } - - public Object clone() - { - return new FormatCharacterIterator (formattedString, ranges, attributes); - } - - /* - * The following methods are inherited from CharacterIterator and thus - * are already documented. - */ - - public char current() - { - return formattedString.charAt (charIndex); - } - - public char first() - { - charIndex = 0; - attributeIndex = 0; - return formattedString.charAt (0); - } - - public int getBeginIndex() - { - return 0; - } - - public int getEndIndex() - { - return formattedString.length(); - } - - public int getIndex() - { - return charIndex; - } - - public char last() - { - charIndex = formattedString.length()-1; - if (attributes != null) - attributeIndex = attributes.length-1; - return formattedString.charAt (charIndex); - } - - public char next() - { - charIndex++; - if (charIndex >= formattedString.length()) - { - charIndex = getEndIndex(); - return DONE; - } - if (attributes != null) - { - if (charIndex >= ranges[attributeIndex]) - attributeIndex++; - } - return formattedString.charAt (charIndex); - } - - public char previous() - { - charIndex--; - if (charIndex < 0) - { - charIndex = 0; - return DONE; - } - - if (attributes != null) - { - if (charIndex < ranges[attributeIndex]) - attributeIndex--; - } - return formattedString.charAt (charIndex); - } - - public char setIndex (int position) - { - if (position < 0 || position > formattedString.length()) - throw new IllegalArgumentException ("position is out of range"); - - charIndex = position; - if (attributes != null) - { - for (attributeIndex=0;attributeIndex charIndex) - break; - attributeIndex--; - } - if (charIndex == formattedString.length()) - return DONE; - else - return formattedString.charAt (charIndex); - } - - /** - * This method merge the specified attributes and ranges with the - * internal tables. This method is in charge of the optimization - * of tables. Two following sets of attributes are never the same. - * - * @see #FormatCharacterIterator() - * - * @param attributes the new array attributes to apply to the string. - */ - public void mergeAttributes (HashMap[] attributes, int[] ranges) - { - Vector new_ranges = new Vector(); - Vector new_attributes = new Vector(); - int i = 0, j = 0; - - debug("merging " + attributes.length + " attrs"); - - while (i < this.ranges.length && j < ranges.length) - { - if (this.attributes[i] != null) - { - new_attributes.add (this.attributes[i]); - if (attributes[j] != null) - this.attributes[i].putAll (attributes[j]); - } - else - { - new_attributes.add (attributes[j]); - } - if (this.ranges[i] == ranges[j]) - { - new_ranges.add (new Integer (ranges[j])); - i++; - j++; - } - else if (this.ranges[i] < ranges[j]) - { - new_ranges.add (new Integer (this.ranges[i])); - i++; - } - else - { - new_ranges.add (new Integer (ranges[j])); - j++; - } - } - - if (i != this.ranges.length) - { - for (;inull the string will simply have no - * attributes. - */ - public void append (String text, HashMap local_attributes) - { - int[] new_ranges = new int[ranges.length+1]; - HashMap[] new_attributes = new HashMap[attributes.length+1]; - - formattedString += text; - System.arraycopy (attributes, 0, new_attributes, 0, attributes.length); - System.arraycopy (ranges, 0, new_ranges, 0, ranges.length); - new_ranges[ranges.length] = formattedString.length(); - new_attributes[attributes.length] = local_attributes; - - ranges = new_ranges; - attributes = new_attributes; - } - - /** - * This method appends a string without attributes. It is completely - * equivalent to call {@link #append(String,HashMap)} with local_attributes - * equal to null. - * - * @param text The string to append to the iterator. - */ - public void append (String text) - { - append (text, null); - } - - /** - * This method adds a set of attributes to a range of character. The - * bounds are always inclusive. In the case many attributes have to - * be added it is advised to directly use {@link #mergeAttributes([Ljava.util.HashMap;[I} - * - * @param attributes Attributes to merge into the iterator. - * @param range_start Lower bound of the range of characters which will receive the - * attribute. - * @param range_end Upper bound of the range of characters which will receive the - * attribute. - * - * @throws IllegalArgumentException if ranges are out of bounds. - */ - public void addAttributes(HashMap attributes, int range_start, int range_end) - { - if (range_start == 0) - mergeAttributes(new HashMap[] { attributes }, new int[] { range_end }); - else - mergeAttributes(new HashMap[] { null, attributes }, new int[] { range_start, range_end }); - } - - private void debug(String s) - { - if (Configuration.DEBUG) - System.out.println(s); - } - - private void dumpTable() - { - int start_range = 0; - - if (!Configuration.DEBUG) - return; - - System.out.println("Dumping internal table:"); - for (int i = 0; i < ranges.length; i++) - { - System.out.print("\t" + start_range + " => " + ranges[i] + ":"); - if (attributes[i] == null) - System.out.println("null"); - else - { - Set keyset = attributes[i].keySet(); - if (keyset != null) - { - Iterator keys = keyset.iterator(); - - while (keys.hasNext()) - System.out.print(" " + keys.next()); - } - else - System.out.println("keySet null"); - System.out.println(); - } - } - System.out.println(); - System.out.flush(); - } -} diff --git a/libjava/gnu/java/text/LineBreakIterator.java b/libjava/gnu/java/text/LineBreakIterator.java deleted file mode 100644 index ad07479fb78..00000000000 --- a/libjava/gnu/java/text/LineBreakIterator.java +++ /dev/null @@ -1,194 +0,0 @@ -/* LineBreakIterator.java - Default word BreakIterator. - Copyright (C) 1999, 2001, 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.java.text; - -import java.text.CharacterIterator; - -/** - * @author Tom Tromey - * @date March 22, 1999 - * Written using The Unicode Standard, Version 2.0. - */ - -public class LineBreakIterator extends BaseBreakIterator -{ - public Object clone () - { - return new LineBreakIterator (this); - } - - public LineBreakIterator () - { - } - - private LineBreakIterator (LineBreakIterator other) - { - iter = (CharacterIterator) other.iter.clone(); - } - - // Some methods to tell us different properties of characters. - private final boolean isNb (char c) - { - return (c == 0x00a0 // NO-BREAK SPACE - || c == 0x2011 // NON-BREAKING HYPHEN - || c == 0xfeff); // ZERO WITH NO-BREAK SPACE - } - private final boolean isClose (int type) - { - return (type == Character.END_PUNCTUATION - // Unicode book says "comma, period, ...", which I take to - // mean "Po" class. - || type == Character.OTHER_PUNCTUATION); - } - private final boolean isIdeo (char c) - { - return (c >= 0x3040 && c <= 0x309f // Hiragana - || c >= 0x30a0 && c <= 0x30ff // Katakana - || c >= 0x4e00 && c <= 0x9fff // Han - || c >= 0x3100 && c <= 0x312f); // Bopomofo - } - - public int next () - { - int end = iter.getEndIndex(); - if (iter.getIndex() == end) - return DONE; - - while (iter.getIndex() < end) - { - char c = iter.current(); - int type = Character.getType(c); - - char n = iter.next(); - - if (n == CharacterIterator.DONE - || type == Character.PARAGRAPH_SEPARATOR - || type == Character.LINE_SEPARATOR) - break; - - // Handle two cases where we must scan for non-spacing marks. - int start = iter.getIndex(); - if (type == Character.SPACE_SEPARATOR - || type == Character.START_PUNCTUATION - || isIdeo (c)) - { - while (n != CharacterIterator.DONE - && Character.getType(n) == Character.NON_SPACING_MARK) - n = iter.next(); - if (n == CharacterIterator.DONE) - break; - - if (type == Character.SPACE_SEPARATOR) - { - int nt = Character.getType(n); - if (nt != Character.NON_SPACING_MARK - && nt != Character.SPACE_SEPARATOR - && ! isNb (n)) - break; - } - else if (type == Character.START_PUNCTUATION) - { - if (isIdeo (n)) - { - // Open punctuation followed by non spacing marks - // and then ideograph does not have a break in - // it. So skip all this. - start = iter.getIndex(); - } - } - else - { - // Ideograph preceded this character. - if (isClose (Character.getType(n))) - break; - } - } - iter.setIndex(start); - } - - return iter.getIndex(); - } - - public int previous () - { - int start = iter.getBeginIndex(); - if (iter.getIndex() == start) - return DONE; - - while (iter.getIndex() >= start) - { - char c = iter.previous(); - if (c == CharacterIterator.DONE) - break; - int type = Character.getType(c); - - char n = iter.previous(); - if (n == CharacterIterator.DONE) - break; - iter.next(); - - int nt = Character.getType(n); - // Break after paragraph separators. - if (nt == Character.PARAGRAPH_SEPARATOR - || nt == Character.LINE_SEPARATOR) - break; - - // Skip non-spacing marks. - int init = iter.getIndex(); - while (n != CharacterIterator.DONE && nt == Character.NON_SPACING_MARK) - { - n = iter.previous(); - nt = Character.getType(n); - } - - if (nt == Character.SPACE_SEPARATOR - && type != Character.SPACE_SEPARATOR - && type != Character.NON_SPACING_MARK - && ! isNb (c)) - break; - if (! isClose (type) && isIdeo (n)) - break; - if (isIdeo (c) && nt != Character.START_PUNCTUATION) - break; - iter.setIndex(init); - } - - return iter.getIndex(); - } -} diff --git a/libjava/gnu/java/text/SentenceBreakIterator.java b/libjava/gnu/java/text/SentenceBreakIterator.java deleted file mode 100644 index f91d269bb08..00000000000 --- a/libjava/gnu/java/text/SentenceBreakIterator.java +++ /dev/null @@ -1,247 +0,0 @@ -/* SentenceBreakIterator.java - Default sentence BreakIterator. - Copyright (C) 1999, 2001, 2002, 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.java.text; - -import java.text.CharacterIterator; - -/** - * @author Tom Tromey - * @date March 23, 1999 - * Written using The Unicode Standard, Version 2.0. - */ - -public class SentenceBreakIterator extends BaseBreakIterator -{ - public Object clone () - { - return new SentenceBreakIterator (this); - } - - public SentenceBreakIterator () - { - } - - private SentenceBreakIterator (SentenceBreakIterator other) - { - iter = (CharacterIterator) other.iter.clone(); - } - - public int next () - { - int end = iter.getEndIndex(); - if (iter.getIndex() == end) - return DONE; - - while (iter.getIndex() < end) - { - char c = iter.current(); - if (c == CharacterIterator.DONE) - break; - int type = Character.getType(c); - - char n = iter.next(); - if (n == CharacterIterator.DONE) - break; - - // Always break after paragraph separator. - if (type == Character.PARAGRAPH_SEPARATOR) - break; - - if (c == '!' || c == '?') - { - // Skip close punctuation. - while (n != CharacterIterator.DONE - && Character.getType(n) == Character.END_PUNCTUATION) - n = iter.next(); - // Skip (java) space, line and paragraph separators. - while (n != CharacterIterator.DONE && Character.isWhitespace(n)) - n = iter.next(); - - // There's always a break somewhere after `!' or `?'. - break; - } - - if (c == '.') - { - int save = iter.getIndex(); - // Skip close punctuation. - while (n != CharacterIterator.DONE - && Character.getType(n) == Character.END_PUNCTUATION) - n = iter.next(); - // Skip (java) space, line and paragraph separators. - // We keep count because we need at least one for this period to - // represent a terminator. - int spcount = 0; - while (n != CharacterIterator.DONE && Character.isWhitespace(n)) - { - n = iter.next(); - ++spcount; - } - if (spcount > 0) - { - int save2 = iter.getIndex(); - // Skip over open puncutation. - while (n != CharacterIterator.DONE - && Character.getType(n) == Character.START_PUNCTUATION) - n = iter.next(); - // Next character must not be lower case. - if (n == CharacterIterator.DONE - || ! Character.isLowerCase(n)) - { - iter.setIndex(save2); - break; - } - } - iter.setIndex(save); - } - } - - return iter.getIndex(); - } - - private final int previous_internal () - { - int start = iter.getBeginIndex(); - if (iter.getIndex() == start) - return DONE; - - while (iter.getIndex() >= start) - { - char c = iter.previous(); - if (c == CharacterIterator.DONE) - break; - - char n = iter.previous(); - if (n == CharacterIterator.DONE) - break; - iter.next(); - int nt = Character.getType(n); - - if (! Character.isLowerCase(c) - && (nt == Character.START_PUNCTUATION - || Character.isWhitespace(n))) - { - int save = iter.getIndex(); - int save_nt = nt; - char save_n = n; - // Skip open punctuation. - while (n != CharacterIterator.DONE - && Character.getType(n) == Character.START_PUNCTUATION) - n = iter.previous(); - if (n == CharacterIterator.DONE) - break; - if (Character.isWhitespace(n)) - { - // Must have at least one (java) space after the `.'. - int save2 = iter.getIndex(); - while (n != CharacterIterator.DONE - && Character.isWhitespace(n)) - n = iter.previous(); - // Skip close punctuation. - while (n != CharacterIterator.DONE - && Character.getType(n) == Character.END_PUNCTUATION) - n = iter.previous(); - if (n == CharacterIterator.DONE || n == '.') - { - // Communicate location of actual end. - period = iter.getIndex(); - iter.setIndex(save2); - break; - } - } - iter.setIndex(save); - nt = save_nt; - n = save_n; - } - - if (nt == Character.PARAGRAPH_SEPARATOR) - { - // Communicate location of actual end. - period = iter.getIndex(); - break; - } - else if (Character.isWhitespace(n) - || nt == Character.END_PUNCTUATION) - { - int save = iter.getIndex(); - // Skip (java) space, line and paragraph separators. - while (n != CharacterIterator.DONE - && Character.isWhitespace(n)) - n = iter.previous(); - // Skip close punctuation. - while (n != CharacterIterator.DONE - && Character.getType(n) == Character.END_PUNCTUATION) - n = iter.previous(); - int here = iter.getIndex(); - iter.setIndex(save); - if (n == CharacterIterator.DONE || n == '!' || n == '?') - { - // Communicate location of actual end. - period = here; - break; - } - } - else if (n == '!' || n == '?') - { - // Communicate location of actual end. - period = iter.getIndex(); - break; - } - } - - return iter.getIndex(); - } - - public int previous () - { - // We want to skip over the first sentence end to the second one. - // However, at the end of the string we want the first end. - int here = iter.getIndex(); - period = here; - int first = previous_internal (); - if (here == iter.getEndIndex() || first == DONE) - return first; - iter.setIndex(period); - return previous_internal (); - } - - // This is used for communication between previous and - // previous_internal. - private int period; -} diff --git a/libjava/gnu/java/text/StringFormatBuffer.java b/libjava/gnu/java/text/StringFormatBuffer.java deleted file mode 100644 index 5772186b4c5..00000000000 --- a/libjava/gnu/java/text/StringFormatBuffer.java +++ /dev/null @@ -1,121 +0,0 @@ -/* StringFormatBuffer.java -- Implements FormatBuffer using StringBuffer. - 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.java.text; - -import java.text.AttributedCharacterIterator; -import java.util.HashMap; - -/** - * This class is an implementation of a FormatBuffer without attributes. - * - * @author Guilhem Lavaux - * @date April 10, 2004 - */ -public class StringFormatBuffer implements FormatBuffer -{ - private StringBuffer buffer; - private AttributedCharacterIterator.Attribute defaultAttr; - - public StringFormatBuffer(int prebuffer) - { - buffer = new StringBuffer(prebuffer); - } - - public StringFormatBuffer(StringBuffer buffer) - { - this.buffer = buffer; - } - - public void append(String s) - { - buffer.append(s); - } - - public void append(String s, AttributedCharacterIterator.Attribute attr) - { - buffer.append(s); - } - - public void append(String s, int[] ranges, HashMap[] attrs) - { - buffer.append(s); - } - - public void append(char c) - { - buffer.append(c); - } - - public void append(char c, AttributedCharacterIterator.Attribute attr) - { - buffer.append(c); - } - - public void setDefaultAttribute(AttributedCharacterIterator.Attribute attr) - { - defaultAttr = attr; - } - - public AttributedCharacterIterator.Attribute getDefaultAttribute() - { - return defaultAttr; - } - - public void cutTail(int length) - { - buffer.setLength(buffer.length()-length); - } - - public int length() - { - return buffer.length(); - } - - public void clear() - { - buffer.setLength(0); - } - - /** - * This method returns the internal {@link java.lang.StringBuffer} which - * contains the string of character. - */ - public StringBuffer getBuffer() - { - return buffer; - } -} diff --git a/libjava/gnu/java/text/WordBreakIterator.java b/libjava/gnu/java/text/WordBreakIterator.java deleted file mode 100644 index f140369f8c6..00000000000 --- a/libjava/gnu/java/text/WordBreakIterator.java +++ /dev/null @@ -1,250 +0,0 @@ -/* WordBreakIterator.java - Default word BreakIterator. - Copyright (C) 1999, 2001, 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.java.text; - -import java.text.CharacterIterator; - -/** - * @author Tom Tromey - * @date March 22, 1999 - * Written using The Unicode Standard, Version 2.0. - */ - -public class WordBreakIterator extends BaseBreakIterator -{ - public Object clone () - { - return new WordBreakIterator (this); - } - - public WordBreakIterator () - { - } - - private WordBreakIterator (WordBreakIterator other) - { - iter = (CharacterIterator) other.iter.clone(); - } - - // Some methods to tell us different properties of characters. - private final boolean isHira (char c) - { - return c >= 0x3040 && c <= 0x309f; - } - private final boolean isKata (char c) - { - return c >= 0x30a0 && c <= 0x30ff; - } - private final boolean isHan (char c) - { - return c >= 0x4e00 && c <= 0x9fff; - } - - public int next () - { - int end = iter.getEndIndex(); - if (iter.getIndex() == end) - return DONE; - - while (iter.getIndex() < end) - { - char c = iter.current(); - if (c == CharacterIterator.DONE) - break; - int type = Character.getType(c); - - char n = iter.next(); - if (n == CharacterIterator.DONE) - break; - - // Break after paragraph separators. - if (type == Character.PARAGRAPH_SEPARATOR - || type == Character.LINE_SEPARATOR) - break; - - // Break between letters and non-letters. - // FIXME: we treat apostrophe as part of a word. This - // is an English-ism. - boolean is_letter = Character.isLetter(c); - if (c != '\'' && ! is_letter && type != Character.NON_SPACING_MARK - && Character.isLetter(n)) - break; - - // Always break after certain symbols, such as punctuation. - // This heuristic is derived from hints in the JCL book and is - // not part of Unicode. It seems to be right, however. - // FIXME: we treat apostrophe as part of a word. This - // is an English-ism. - if (c != '\'' - && (type == Character.DASH_PUNCTUATION - || type == Character.START_PUNCTUATION - || type == Character.END_PUNCTUATION - || type == Character.CONNECTOR_PUNCTUATION - || type == Character.OTHER_PUNCTUATION - || type == Character.MATH_SYMBOL - || type == Character.CURRENCY_SYMBOL - || type == Character.MODIFIER_SYMBOL - || type == Character.OTHER_SYMBOL - || type == Character.FORMAT - || type == Character.CONTROL)) - break; - - boolean is_hira = isHira (c); - boolean is_kata = isKata (c); - boolean is_han = isHan (c); - - // Special case Japanese. - if (! is_hira && ! is_kata && ! is_han - && type != Character.NON_SPACING_MARK - && (isHira (n) || isKata (n) || isHan (n))) - break; - - if (is_hira || is_kata || is_han || is_letter) - { - // Now we need to do some lookahead. We might need to do - // quite a bit of lookahead, so we save our position and - // restore it later. - int save = iter.getIndex(); - // Skip string of non spacing marks. - while (n != CharacterIterator.DONE - && Character.getType(n) == Character.NON_SPACING_MARK) - n = iter.next(); - if (n == CharacterIterator.DONE) - break; - if ((is_hira && ! isHira (n)) - || (is_kata && ! isHira (n) && ! isKata (n)) - || (is_han && ! isHira (n) && ! isHan (n)) - // FIXME: we treat apostrophe as part of a word. This - // is an English-ism. - || (is_letter && ! Character.isLetter(n) && n != '\'')) - break; - iter.setIndex(save); - } - } - - return iter.getIndex(); - } - - public int previous () - { - int start = iter.getBeginIndex(); - if (iter.getIndex() == start) - return DONE; - - while (iter.getIndex() >= start) - { - char c = iter.previous(); - if (c == CharacterIterator.DONE) - break; - - boolean is_hira = isHira (c); - boolean is_kata = isKata (c); - boolean is_han = isHan (c); - boolean is_letter = Character.isLetter(c); - - char n = iter.previous(); - if (n == CharacterIterator.DONE) - break; - iter.next(); - int type = Character.getType(n); - // Break after paragraph separators. - if (type == Character.PARAGRAPH_SEPARATOR - || type == Character.LINE_SEPARATOR) - break; - - // Break between letters and non-letters. - // FIXME: we treat apostrophe as part of a word. This - // is an English-ism. - if (n != '\'' && ! Character.isLetter(n) - && type != Character.NON_SPACING_MARK - && is_letter) - break; - - // Always break after certain symbols, such as punctuation. - // This heuristic is derived from hints in the JCL book and is - // not part of Unicode. It seems to be right, however. - // FIXME: we treat apostrophe as part of a word. This - // is an English-ism. - if (n != '\'' - && (type == Character.DASH_PUNCTUATION - || type == Character.START_PUNCTUATION - || type == Character.END_PUNCTUATION - || type == Character.CONNECTOR_PUNCTUATION - || type == Character.OTHER_PUNCTUATION - || type == Character.MATH_SYMBOL - || type == Character.CURRENCY_SYMBOL - || type == Character.MODIFIER_SYMBOL - || type == Character.OTHER_SYMBOL - || type == Character.FORMAT - || type == Character.CONTROL)) - break; - - // Special case Japanese. - if ((is_hira || is_kata || is_han) - && ! isHira (n) && ! isKata (n) && ! isHan (n) - && type != Character.NON_SPACING_MARK) - break; - - // We might have to skip over non spacing marks to see what's - // on the other side. - if (! is_hira || (! is_letter && c != '\'')) - { - int save = iter.getIndex(); - while (n != CharacterIterator.DONE - && Character.getType(n) == Character.NON_SPACING_MARK) - n = iter.previous(); - iter.setIndex(save); - // This is a strange case: a bunch of non-spacing marks at - // the beginning. We treat the current location as a word - // break. - if (n == CharacterIterator.DONE) - break; - if ((isHira (n) && ! is_hira) - || (isKata (n) && ! is_hira && ! is_kata) - || (isHan (n) && ! is_hira && ! is_han) - // FIXME: we treat apostrophe as part of a word. This - // is an English-ism. - || (! is_letter && c != '\'' && Character.isLetter(n))) - break; - } - } - - return iter.getIndex(); - } -} diff --git a/libjava/gnu/java/util/DoubleEnumeration.java b/libjava/gnu/java/util/DoubleEnumeration.java deleted file mode 100644 index 1fc37f8e0f8..00000000000 --- a/libjava/gnu/java/util/DoubleEnumeration.java +++ /dev/null @@ -1,138 +0,0 @@ -/* gnu.java.util.DoubleEnumeration - Copyright (C) 1998, 1999, 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., 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.java.util; - -import java.util.Enumeration; -import java.util.NoSuchElementException; - - -/** - * This is a helper class that combines two Enumerations. - * It returns the elements of the first Enumeration until it has - * no more elements and then returns the elements of the second - * Enumeration.
- * - * In the default case: - *
- * doubleEnum = new DoubleEnumeration(enum1, enum2);
- * while (doubleEnum.hasMoreElements()) {
- *    Object o = doubleEnum.nextElement();
- *    do_something(o);
- * }
- * 
- * it calls hasMoreElements of the Enumerations as few times as - * possible. - * The references to the Enumerations are cleared as soon as they have no - * more elements to help garbage collecting. - * - * @author Jochen Hoenicke - * @author Mark Wielaard (mark@klomp.org) - */ -public class DoubleEnumeration implements Enumeration -{ - /** - * This is true as long as one of the enumerations has more - * elements. - * Only valid when hasChecked is true. - * Set in hasMoreElements() - */ - private boolean hasMore; - /** - * This is true, if it is sure that hasMore indicates wether there are - * more elements. - * Set to true in hasMoreElements(). - * Set to false in getNextElement(). - */ - private boolean hasChecked; - /** - * The first enumeration. - */ - private Enumeration e1; - /** - * The second enumeration. - */ - private Enumeration e2; - - /** - * Creates a new Enumeration combining the given two enumerations. - * The enumerations mustn't be accessed by other classes. - */ - public DoubleEnumeration(Enumeration e1, Enumeration e2) - { - this.e1 = e1; - this.e2 = e2; - hasChecked = false; - } - - /** - * Returns true, if at least one of the two enumerations has more - * elements. - */ - public boolean hasMoreElements() - { - if (hasChecked) - return hasMore; - - hasMore = (e1 != null && e1.hasMoreElements()); - - if (!hasMore) { - e1 = e2; - e2 = null; - hasMore = (e1 != null && e1.hasMoreElements()); - } - - hasChecked = true; - return hasMore; - } - - /** - * Returns the next element. This returns the next element of the - * first enumeration, if it has more elements, otherwise the next - * element of the second enumeration. If both enumeration don't have - * any elements it throws a NoSuchElementException. - */ - public Object nextElement() - { - if (!hasMoreElements()) - throw new NoSuchElementException(); - else { - hasChecked = false; - return e1.nextElement(); - } - } -} diff --git a/libjava/gnu/java/util/EmptyEnumeration.java b/libjava/gnu/java/util/EmptyEnumeration.java deleted file mode 100644 index 46a82d6cb53..00000000000 --- a/libjava/gnu/java/util/EmptyEnumeration.java +++ /dev/null @@ -1,96 +0,0 @@ -/* EmptyEnumeration.java -- a constant empty enumeration - Copyright (C) 2001, 2002 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.java.util; - -import java.io.Serializable; -import java.util.Enumeration; -import java.util.NoSuchElementException; - -/** - * This is a helper class that produces an empty Enumerations. There is only - * one instance of this class that can be used whenever one needs a - * non-null but empty enumeration. Using this class prevents multiple - * small objects and inner classes. getInstance() returns - * the only instance of this class. It can be shared by multiple objects and - * threads. - * - * @author Mark Wielaard (mark@klomp.org) - */ -public final class EmptyEnumeration implements Enumeration, Serializable -{ - /** The only instance of this class */ - private static final EmptyEnumeration instance = new EmptyEnumeration(); - - /** - * Private constructor that creates a new empty Enumeration. - */ - private EmptyEnumeration() - { - } - - /** - * Returns the only instance of this class. - * It can be shared by multiple objects and threads. - * - * @return the common empty enumeration - */ - public static EmptyEnumeration getInstance() - { - return instance; - } - - /** - * Returns false, since there are no elements. - * - * @return false - */ - public boolean hasMoreElements() - { - return false; - } - - /** - * Always throws NoSuchElementException, since it is empty. - * - * @throws NoSuchElementException this is empty - */ - public Object nextElement() - { - throw new NoSuchElementException(); - } -} diff --git a/libjava/gnu/java/util/prefs/FileBasedFactory.java b/libjava/gnu/java/util/prefs/FileBasedFactory.java deleted file mode 100644 index 70f3558fc6f..00000000000 --- a/libjava/gnu/java/util/prefs/FileBasedFactory.java +++ /dev/null @@ -1,57 +0,0 @@ -/* FileBasedFactory - Default Classpath implementation of a PreferencesFactory - 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., 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.java.util.prefs; - -import java.util.prefs.*; - -/** - * Default Classpath implementation of a PreferencesFactory. - * Returns system and user root Preferences nodes that are read from files. - * - * @author Mark Wielaard (mark@klomp.org) - */ -public class FileBasedFactory implements PreferencesFactory { - - public Preferences systemRoot() { - return null; - } - - public Preferences userRoot() { - return null; - } -} diff --git a/libjava/gnu/java/util/prefs/MemoryBasedFactory.java b/libjava/gnu/java/util/prefs/MemoryBasedFactory.java deleted file mode 100644 index abaf0016f5b..00000000000 --- a/libjava/gnu/java/util/prefs/MemoryBasedFactory.java +++ /dev/null @@ -1,64 +0,0 @@ -/* MemoryBasedFactory - Memory based PreferencesFactory usefull for testing - 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., 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.java.util.prefs; - -import java.util.prefs.*; - -/** - * Memory based PreferencesFactory usefull for testing. - * Returns completely empty Preferences for system and user roots. - * All changes are only backed by the current instances in memory. - * - * @author Mark Wielaard (mark@klomp.org) - */ -public class MemoryBasedFactory implements PreferencesFactory { - - // Static fields containing the preferences root nodes - private static final Preferences systemPreferences - = new MemoryBasedPreferences(null, "", false); - private static final Preferences userPreferences - = new MemoryBasedPreferences(null, "", true); - - public Preferences systemRoot() { - return systemPreferences; - } - - public Preferences userRoot() { - return userPreferences; - } -} diff --git a/libjava/gnu/java/util/prefs/MemoryBasedPreferences.java b/libjava/gnu/java/util/prefs/MemoryBasedPreferences.java deleted file mode 100644 index b2f321c9c7e..00000000000 --- a/libjava/gnu/java/util/prefs/MemoryBasedPreferences.java +++ /dev/null @@ -1,144 +0,0 @@ -/* MemoryBasedPreferences - A Preference node which holds all entries in memory - 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., 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.java.util.prefs; - -import java.util.HashMap; - -import java.util.prefs.*; - -/** - * A Preference node which holds all entries in memory - * - * @author Mark Wielaard (mark@klomp.org) - */ -public class MemoryBasedPreferences extends AbstractPreferences { - - /** True if this is a preference node in the user tree, false otherwise. */ - private final boolean isUser; - - /** Contains all the preference entries of this node. */ - private HashMap entries = new HashMap(); - - /** - * Creates a new preferences node with the given name and parent. - * When isUser is true it will be user node otherwise it will be a system - * node. It will always set the newNode field to true - * since there is no real backing store, so all nodes are new. - */ - public MemoryBasedPreferences(MemoryBasedPreferences parent, - String name, - boolean isUser) { - super(parent, name); - this.isUser = isUser; - - // Since we do not have a real backing store all nodes are new - newNode = true; - } - - /** - * Returns true if this node was created as a user node. - */ - public boolean isUserNode() { - return isUser; - } - - /** - * Returns an empty array since all children names are always already - * chached. - */ - protected String[] childrenNamesSpi() throws BackingStoreException { - return new String[0]; - } - - /** - * Returns a new node with the given name with as parent this node and - * with the isUser flag set to the same value as this node. - */ - protected AbstractPreferences childSpi(String childName) { - return new MemoryBasedPreferences(this, childName, isUser); - } - - /** - * Returns a (possibly empty) array of keys of the preferences entries of - * this node. - */ - protected String[] keysSpi() throws BackingStoreException { - return (String[]) entries.keySet().toArray(new String[entries.size()]); - } - - /** - * Returns the associated value from this nodes preferences entries or - * null when the key has not been set. - */ - protected String getSpi(String key) { - return (String) entries.get(key); - } - - /** - * Sets the value for the given key. - */ - protected void putSpi(String key, String value) { - entries.put(key, value); - } - - /** - * Removes the entry with the given key. - */ - protected void removeSpi(String key) { - entries.remove(key); - } - - /** - * Does nothing since we do not have any backing store. - */ - protected void flushSpi() { - } - - /** - * Does nothing since we do not have any backing store. - */ - protected void syncSpi() { - } - - /** - * Just removes the entries map of this node. - */ - protected void removeNodeSpi() { - entries = null; - } -} diff --git a/libjava/gnu/java/util/prefs/NodeReader.java b/libjava/gnu/java/util/prefs/NodeReader.java deleted file mode 100644 index 4cd52e5dbf9..00000000000 --- a/libjava/gnu/java/util/prefs/NodeReader.java +++ /dev/null @@ -1,223 +0,0 @@ -/* NodeReader - Reads and imports preferences nodes from files - 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., 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.java.util.prefs; - -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.Reader; -import java.util.prefs.InvalidPreferencesFormatException; -import java.util.prefs.Preferences; -import java.util.prefs.PreferencesFactory; - -/** - * Reads and imports preferences nodes from files. - * - * @author Mark Wielaard (mark@klomp.org) - */ -public class NodeReader { - - private final BufferedReader br; - private String line = ""; - - private final PreferencesFactory factory; - - public NodeReader(Reader r, PreferencesFactory factory) { - if(r instanceof BufferedReader) { - br = (BufferedReader) r; - } else { - br = new BufferedReader(r); - } - this.factory = factory; - } - - public NodeReader(InputStream is, PreferencesFactory factory) { - this(new InputStreamReader(is), factory); - } - - public void importPreferences() - throws InvalidPreferencesFormatException, IOException - { - readPreferences(); - } - - private void readPreferences() - throws InvalidPreferencesFormatException, IOException - { - // Begin starting tag - skipTill(""); - } - - private void readRoot() - throws InvalidPreferencesFormatException, IOException - { - // Begin starting tag - skipTill(""); - } - - private void readNodes(Preferences node) - throws InvalidPreferencesFormatException, IOException - { - while ("node".equals(nextTag())) { - skipTill(""); - } - - } - - private void readMap(Preferences node) - throws InvalidPreferencesFormatException, IOException - { - // Begin map tag - skipTill("")) { - line = line.substring(2); - return; - } - - // Map entries - readEntries(node); - - // Ending tag - skipTill(""); - } - - private void readEntries(Preferences node) - throws InvalidPreferencesFormatException, IOException - { - while ("entry".equals(nextTag())) { - skipTill(""); - bw.newLine(); - bw.newLine(); - bw.write(""); - bw.newLine(); - bw.newLine(); - } - - /** - * Write the preferences tag and the root. - */ - private void writePreferences() throws BackingStoreException, IOException { - bw.write(""); - bw.newLine(); - writeRoot(); - bw.write(""); - bw.newLine(); - } - - private void writeRoot() throws BackingStoreException, IOException { - bw.write(" "); - - writeRootMap(); - writeNode(); - - bw.write(" "); - bw.newLine(); - } - - private void writeRootMap() throws BackingStoreException, IOException { - // Is it a root node? - if(prefs.parent() == null && prefs.keys().length > 0) { - bw.newLine(); - writeMap(prefs, 2); - } else { - bw.write(""); - bw.newLine(); - } - } - - /** - * Writes all the parents of the preferences node without any entries. - * Returns the number of parents written, which has to be used as - * argument to writeCloseParents() after writing the node - * itself. - */ - private int writeParents() throws IOException { - int parents; - String path = prefs.absolutePath(); - int lastslash = path.lastIndexOf("/"); - if (lastslash > 0) { - path = path.substring(1, lastslash); - StringTokenizer st = new StringTokenizer(path); - parents = st.countTokens(); - - System.out.println("path: " + path); - System.out.println("parents: " + parents); - - for (int i=0; i"); - bw.write(""); - bw.write(""); - bw.newLine(); - } - } else { - parents = 0; - } - - return parents; - } - - private void writeCloseParents(int parents) throws IOException { - while(parents > 0) { - indent(parents+1); - bw.write(""); - bw.newLine(); - parents--; - } - } - - private void writeNode() throws BackingStoreException, IOException { - int parents = writeParents(); - // root? - int indent; - if (prefs.parent() == null) { - indent = parents+1; - } else { - indent = parents+2; - } - writeNode(prefs, indent); - writeCloseParents(parents); - } - - private void writeNode(Preferences node, int indent) - throws BackingStoreException, IOException - { - // not root? - if (node.parent() != null) { - indent(indent); - bw.write(""); - if (node.keys().length > 0) { - bw.newLine(); - } - writeMap(node, indent+1); - } - - if (subtree) { - String[] children = node.childrenNames(); - for (int i=0; i"); - bw.newLine(); - } - } - - private void writeMap(Preferences node, int indent) - throws BackingStoreException, IOException - { - // construct String used for indentation - StringBuffer indentBuffer = new StringBuffer(2*indent); - for (int i=0; i < indent; i++) - indentBuffer.append(" "); - String indentString = indentBuffer.toString(); - - if (node.keys().length > 0) { - bw.write(indentString); - bw.write(""); - bw.newLine(); - writeEntries(node, indentString + " "); - bw.write(indentString); - bw.write(""); - } else { - bw.write(""); - } - bw.newLine(); - } - - private void writeEntries(Preferences node, String indent) - throws BackingStoreException, IOException - { - String[] keys = node.keys(); - for(int i = 0; i < keys.length; i++) { - String value = node.get(keys[i], null); - if (value == null) { - throw new BackingStoreException("null value for key '" - + keys[i] + "'"); - } - - bw.write(indent); - bw.write(""); - bw.newLine(); - } - } - - private void indent(int x) throws IOException { - for (int i=0; i