summaryrefslogtreecommitdiffstats
path: root/libjava/classpath/gnu/xml/pipeline
diff options
context:
space:
mode:
authorgandalf <gandalf@138bc75d-0d04-0410-961f-82ee72b054a4>2011-01-11 19:46:05 +0000
committergandalf <gandalf@138bc75d-0d04-0410-961f-82ee72b054a4>2011-01-11 19:46:05 +0000
commit1c1d817aeab43a795cd70fc8ff159007ba878938 (patch)
tree0da7dbb2f6c016ebe1a6d0bf012840bd76da9170 /libjava/classpath/gnu/xml/pipeline
parentab0157ddcf1f5d6ec814d0bdddeb4229cca4a309 (diff)
downloadppe42-gcc-1c1d817aeab43a795cd70fc8ff159007ba878938.tar.gz
ppe42-gcc-1c1d817aeab43a795cd70fc8ff159007ba878938.zip
Normalise whitespace in GNU Classpath.
2010-06-03 Andrew John Hughes <ahughes@redhat.com> * examples/gnu/classpath/examples/CORBA/NamingService/Demo.java, * examples/gnu/classpath/examples/CORBA/SimpleCommunication/Demo.java, * examples/gnu/classpath/examples/CORBA/SimpleCommunication/communication/StructureToPass.java, * examples/gnu/classpath/examples/CORBA/SimpleCommunication/communication/StructureToReturn.java, * examples/gnu/classpath/examples/CORBA/SimpleCommunication/communication/TreeNode.java, * examples/gnu/classpath/examples/CORBA/SimpleCommunication/communication/WeThrowThisException.java, * examples/gnu/classpath/examples/CORBA/SimpleCommunication/communication/WeThrowThisExceptionHelper.java, * examples/gnu/classpath/examples/CORBA/SimpleCommunication/communication/_DemoTesterImplBase.java, * examples/gnu/classpath/examples/CORBA/SimpleCommunication/communication/_DemoTesterStub.java, * examples/gnu/classpath/examples/CORBA/swing/x5/CanvasWorld.java, * examples/gnu/classpath/examples/CORBA/swing/x5/ChatConstants.java, * examples/gnu/classpath/examples/CORBA/swing/x5/ClientFrame.java, * examples/gnu/classpath/examples/CORBA/swing/x5/Demo.java, * examples/gnu/classpath/examples/CORBA/swing/x5/GameManager.java, * examples/gnu/classpath/examples/CORBA/swing/x5/GameManagerImpl.java, * examples/gnu/classpath/examples/CORBA/swing/x5/IorReader.java, * examples/gnu/classpath/examples/CORBA/swing/x5/OrbStarter.java, * examples/gnu/classpath/examples/CORBA/swing/x5/Player.java, * examples/gnu/classpath/examples/CORBA/swing/x5/PlayerImpl.java, * examples/gnu/classpath/examples/CORBA/swing/x5/PlayingDesk.java, * examples/gnu/classpath/examples/CORBA/swing/x5/State.java, * examples/gnu/classpath/examples/CORBA/swing/x5/X5Server.java, * examples/gnu/classpath/examples/CORBA/swing/x5/_GameManagerImpl_Tie.java, * examples/gnu/classpath/examples/CORBA/swing/x5/_GameManager_Stub.java, * examples/gnu/classpath/examples/CORBA/swing/x5/_PlayerImpl_Tie.java, * examples/gnu/classpath/examples/CORBA/swing/x5/_Player_Stub.java, * examples/gnu/classpath/examples/awt/AicasGraphicsBenchmark.java, * examples/gnu/classpath/examples/awt/Demo.java, * examples/gnu/classpath/examples/awt/HintingDemo.java, * examples/gnu/classpath/examples/datatransfer/Demo.java, * examples/gnu/classpath/examples/html/Demo.java, * examples/gnu/classpath/examples/java2d/J2dBenchmark.java, * examples/gnu/classpath/examples/java2d/J2dBenchmarkGUI.java, * examples/gnu/classpath/examples/java2d/JNIOverhead.java, * examples/gnu/classpath/examples/jawt/DemoJAWT.java, * examples/gnu/classpath/examples/management/TestClassLoading.java, * examples/gnu/classpath/examples/management/TestCompilation.java, * examples/gnu/classpath/examples/management/TestGarbageCollector.java, * examples/gnu/classpath/examples/management/TestMemory.java, * examples/gnu/classpath/examples/management/TestMemoryManager.java, * examples/gnu/classpath/examples/management/TestMemoryPool.java, * examples/gnu/classpath/examples/management/TestThread.java, * examples/gnu/classpath/examples/midi/Demo.java, * examples/gnu/classpath/examples/print/Demo.java, * examples/gnu/classpath/examples/sound/AudioPlayerSample.java, * examples/gnu/classpath/examples/swing/BrowserEditorKit.java, * examples/gnu/classpath/examples/swing/ButtonDemo.java, * examples/gnu/classpath/examples/swing/ComboBoxDemo.java, * examples/gnu/classpath/examples/swing/Demo.java, * examples/gnu/classpath/examples/swing/DemoFactory.java, * examples/gnu/classpath/examples/swing/DocumentFilterDemo.java, * examples/gnu/classpath/examples/swing/FileChooserDemo.java, * examples/gnu/classpath/examples/swing/HtmlDemo.java, * examples/gnu/classpath/examples/swing/ListDemo.java, * examples/gnu/classpath/examples/swing/MetalThemeEditor.java, * examples/gnu/classpath/examples/swing/NavigationFilterDemo.java, * examples/gnu/classpath/examples/swing/ScrollBarDemo.java, * examples/gnu/classpath/examples/swing/SliderDemo.java, * examples/gnu/classpath/examples/swing/SpinnerDemo.java, * examples/gnu/classpath/examples/swing/TabbedPaneDemo.java, * examples/gnu/classpath/examples/swing/TableDemo.java, * examples/gnu/classpath/examples/swing/TextAreaDemo.java, * examples/gnu/classpath/examples/swing/TextFieldDemo.java, * examples/gnu/classpath/examples/swing/TreeDemo.java, * external/jsr166/java/util/ArrayDeque.java, * external/jsr166/java/util/concurrent/ArrayBlockingQueue.java, * external/jsr166/java/util/concurrent/ConcurrentHashMap.java, * external/jsr166/java/util/concurrent/ConcurrentSkipListMap.java, * external/jsr166/java/util/concurrent/ConcurrentSkipListSet.java, * external/jsr166/java/util/concurrent/CopyOnWriteArraySet.java, * external/jsr166/java/util/concurrent/CyclicBarrier.java, * external/jsr166/java/util/concurrent/DelayQueue.java, * external/jsr166/java/util/concurrent/Executors.java, * external/jsr166/java/util/concurrent/FutureTask.java, * external/jsr166/java/util/concurrent/LinkedBlockingDeque.java, * external/jsr166/java/util/concurrent/LinkedBlockingQueue.java, * external/jsr166/java/util/concurrent/PriorityBlockingQueue.java, * external/jsr166/java/util/concurrent/ScheduledExecutorService.java, * external/jsr166/java/util/concurrent/ScheduledThreadPoolExecutor.java, * external/jsr166/java/util/concurrent/Semaphore.java, * external/jsr166/java/util/concurrent/SynchronousQueue.java, * external/jsr166/java/util/concurrent/ThreadPoolExecutor.java, * external/jsr166/java/util/concurrent/atomic/AtomicInteger.java, * external/jsr166/java/util/concurrent/atomic/AtomicIntegerFieldUpdater.java, * external/jsr166/java/util/concurrent/atomic/AtomicLong.java, * external/jsr166/java/util/concurrent/atomic/AtomicLongFieldUpdater.java, * external/jsr166/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.java, * external/jsr166/java/util/concurrent/locks/AbstractQueuedLongSynchronizer.java, * external/jsr166/java/util/concurrent/locks/AbstractQueuedSynchronizer.java, * external/jsr166/java/util/concurrent/locks/ReentrantReadWriteLock.java, * external/relaxngDatatype/org/relaxng/datatype/Datatype.java, * external/relaxngDatatype/org/relaxng/datatype/DatatypeBuilder.java, * external/relaxngDatatype/org/relaxng/datatype/DatatypeException.java, * external/relaxngDatatype/org/relaxng/datatype/DatatypeLibrary.java, * external/relaxngDatatype/org/relaxng/datatype/DatatypeLibraryFactory.java, * external/relaxngDatatype/org/relaxng/datatype/DatatypeStreamingValidator.java, * external/relaxngDatatype/org/relaxng/datatype/ValidationContext.java, * external/relaxngDatatype/org/relaxng/datatype/helpers/DatatypeLibraryLoader.java, * external/relaxngDatatype/org/relaxng/datatype/helpers/ParameterlessDatatypeBuilder.java, * external/relaxngDatatype/org/relaxng/datatype/helpers/StreamingValidatorImpl.java, * external/sax/org/xml/sax/AttributeList.java, * external/sax/org/xml/sax/Attributes.java, * external/sax/org/xml/sax/ContentHandler.java, * external/sax/org/xml/sax/DTDHandler.java, * external/sax/org/xml/sax/DocumentHandler.java, * external/sax/org/xml/sax/EntityResolver.java, * external/sax/org/xml/sax/ErrorHandler.java, * external/sax/org/xml/sax/HandlerBase.java, * external/sax/org/xml/sax/InputSource.java, * external/sax/org/xml/sax/Locator.java, * external/sax/org/xml/sax/Parser.java, * external/sax/org/xml/sax/SAXException.java, * external/sax/org/xml/sax/SAXNotRecognizedException.java, * external/sax/org/xml/sax/SAXNotSupportedException.java, * external/sax/org/xml/sax/SAXParseException.java, * external/sax/org/xml/sax/XMLReader.java, * external/sax/org/xml/sax/ext/Attributes2.java, * external/sax/org/xml/sax/ext/Attributes2Impl.java, * external/sax/org/xml/sax/ext/DeclHandler.java, * external/sax/org/xml/sax/ext/DefaultHandler2.java, * external/sax/org/xml/sax/ext/EntityResolver2.java, * external/sax/org/xml/sax/ext/LexicalHandler.java, * external/sax/org/xml/sax/ext/Locator2.java, * external/sax/org/xml/sax/ext/Locator2Impl.java, * external/sax/org/xml/sax/helpers/AttributeListImpl.java, * external/sax/org/xml/sax/helpers/AttributesImpl.java, * external/sax/org/xml/sax/helpers/DefaultHandler.java, * external/sax/org/xml/sax/helpers/LocatorImpl.java, * external/sax/org/xml/sax/helpers/NamespaceSupport.java, * external/sax/org/xml/sax/helpers/NewInstance.java, * external/sax/org/xml/sax/helpers/ParserAdapter.java, * external/sax/org/xml/sax/helpers/ParserFactory.java, * external/sax/org/xml/sax/helpers/XMLFilterImpl.java, * external/sax/org/xml/sax/helpers/XMLReaderAdapter.java, * external/sax/org/xml/sax/helpers/XMLReaderFactory.java, * external/w3c_dom/org/w3c/dom/Attr.java, * external/w3c_dom/org/w3c/dom/CDATASection.java, * external/w3c_dom/org/w3c/dom/CharacterData.java, * external/w3c_dom/org/w3c/dom/Comment.java, * external/w3c_dom/org/w3c/dom/DOMConfiguration.java, * external/w3c_dom/org/w3c/dom/DOMError.java, * external/w3c_dom/org/w3c/dom/DOMErrorHandler.java, * external/w3c_dom/org/w3c/dom/DOMException.java, * external/w3c_dom/org/w3c/dom/DOMImplementation.java, * external/w3c_dom/org/w3c/dom/DOMImplementationList.java, * external/w3c_dom/org/w3c/dom/DOMImplementationSource.java, * external/w3c_dom/org/w3c/dom/DOMLocator.java, * external/w3c_dom/org/w3c/dom/DOMStringList.java, * external/w3c_dom/org/w3c/dom/Document.java, * external/w3c_dom/org/w3c/dom/DocumentFragment.java, * external/w3c_dom/org/w3c/dom/DocumentType.java, * external/w3c_dom/org/w3c/dom/Element.java, * external/w3c_dom/org/w3c/dom/Entity.java, * external/w3c_dom/org/w3c/dom/EntityReference.java, * external/w3c_dom/org/w3c/dom/NameList.java, * external/w3c_dom/org/w3c/dom/NamedNodeMap.java, * external/w3c_dom/org/w3c/dom/Node.java, * external/w3c_dom/org/w3c/dom/NodeList.java, * external/w3c_dom/org/w3c/dom/Notation.java, * external/w3c_dom/org/w3c/dom/ProcessingInstruction.java, * external/w3c_dom/org/w3c/dom/Text.java, * external/w3c_dom/org/w3c/dom/TypeInfo.java, * external/w3c_dom/org/w3c/dom/UserDataHandler.java, * external/w3c_dom/org/w3c/dom/bootstrap/DOMImplementationRegistry.java, * external/w3c_dom/org/w3c/dom/css/CSS2Properties.java, * external/w3c_dom/org/w3c/dom/css/CSSCharsetRule.java, * external/w3c_dom/org/w3c/dom/css/CSSFontFaceRule.java, * external/w3c_dom/org/w3c/dom/css/CSSImportRule.java, * external/w3c_dom/org/w3c/dom/css/CSSMediaRule.java, * external/w3c_dom/org/w3c/dom/css/CSSPageRule.java, * external/w3c_dom/org/w3c/dom/css/CSSPrimitiveValue.java, * external/w3c_dom/org/w3c/dom/css/CSSRule.java, * external/w3c_dom/org/w3c/dom/css/CSSRuleList.java, * external/w3c_dom/org/w3c/dom/css/CSSStyleDeclaration.java, * external/w3c_dom/org/w3c/dom/css/CSSStyleRule.java, * external/w3c_dom/org/w3c/dom/css/CSSStyleSheet.java, * external/w3c_dom/org/w3c/dom/css/CSSUnknownRule.java, * external/w3c_dom/org/w3c/dom/css/CSSValue.java, * external/w3c_dom/org/w3c/dom/css/CSSValueList.java, * external/w3c_dom/org/w3c/dom/css/Counter.java, * external/w3c_dom/org/w3c/dom/css/DOMImplementationCSS.java, * external/w3c_dom/org/w3c/dom/css/DocumentCSS.java, * external/w3c_dom/org/w3c/dom/css/ElementCSSInlineStyle.java, * external/w3c_dom/org/w3c/dom/css/RGBColor.java, * external/w3c_dom/org/w3c/dom/css/Rect.java, * external/w3c_dom/org/w3c/dom/css/ViewCSS.java, * external/w3c_dom/org/w3c/dom/events/DocumentEvent.java, * external/w3c_dom/org/w3c/dom/events/Event.java, * external/w3c_dom/org/w3c/dom/events/EventException.java, * external/w3c_dom/org/w3c/dom/events/EventListener.java, * external/w3c_dom/org/w3c/dom/events/EventTarget.java, * external/w3c_dom/org/w3c/dom/events/MouseEvent.java, * external/w3c_dom/org/w3c/dom/events/MutationEvent.java, * external/w3c_dom/org/w3c/dom/events/UIEvent.java, * external/w3c_dom/org/w3c/dom/html2/HTMLAnchorElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLAppletElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLAreaElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLBRElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLBaseElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLBaseFontElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLBodyElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLButtonElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLCollection.java, * external/w3c_dom/org/w3c/dom/html2/HTMLDListElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLDirectoryElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLDivElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLDocument.java, * external/w3c_dom/org/w3c/dom/html2/HTMLElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLFieldSetElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLFontElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLFormElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLFrameElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLFrameSetElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLHRElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLHeadElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLHeadingElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLHtmlElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLIFrameElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLImageElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLInputElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLIsIndexElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLLIElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLLabelElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLLegendElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLLinkElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLMapElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLMenuElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLMetaElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLModElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLOListElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLObjectElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLOptGroupElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLOptionElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLOptionsCollection.java, * external/w3c_dom/org/w3c/dom/html2/HTMLParagraphElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLParamElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLPreElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLQuoteElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLScriptElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLSelectElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLStyleElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLTableCaptionElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLTableCellElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLTableColElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLTableElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLTableRowElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLTableSectionElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLTextAreaElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLTitleElement.java, * external/w3c_dom/org/w3c/dom/html2/HTMLUListElement.java, * external/w3c_dom/org/w3c/dom/ls/DOMImplementationLS.java, * external/w3c_dom/org/w3c/dom/ls/LSException.java, * external/w3c_dom/org/w3c/dom/ls/LSInput.java, * external/w3c_dom/org/w3c/dom/ls/LSLoadEvent.java, * external/w3c_dom/org/w3c/dom/ls/LSOutput.java, * external/w3c_dom/org/w3c/dom/ls/LSParser.java, * external/w3c_dom/org/w3c/dom/ls/LSParserFilter.java, * external/w3c_dom/org/w3c/dom/ls/LSProgressEvent.java, * external/w3c_dom/org/w3c/dom/ls/LSResourceResolver.java, * external/w3c_dom/org/w3c/dom/ls/LSSerializer.java, * external/w3c_dom/org/w3c/dom/ls/LSSerializerFilter.java, * external/w3c_dom/org/w3c/dom/ranges/DocumentRange.java, * external/w3c_dom/org/w3c/dom/ranges/Range.java, * external/w3c_dom/org/w3c/dom/ranges/RangeException.java, * external/w3c_dom/org/w3c/dom/stylesheets/DocumentStyle.java, * external/w3c_dom/org/w3c/dom/stylesheets/LinkStyle.java, * external/w3c_dom/org/w3c/dom/stylesheets/MediaList.java, * external/w3c_dom/org/w3c/dom/stylesheets/StyleSheet.java, * external/w3c_dom/org/w3c/dom/stylesheets/StyleSheetList.java, * external/w3c_dom/org/w3c/dom/traversal/DocumentTraversal.java, * external/w3c_dom/org/w3c/dom/traversal/NodeFilter.java, * external/w3c_dom/org/w3c/dom/traversal/NodeIterator.java, * external/w3c_dom/org/w3c/dom/traversal/TreeWalker.java, * external/w3c_dom/org/w3c/dom/views/AbstractView.java, * external/w3c_dom/org/w3c/dom/views/DocumentView.java, * external/w3c_dom/org/w3c/dom/xpath/XPathEvaluator.java, * external/w3c_dom/org/w3c/dom/xpath/XPathException.java, * external/w3c_dom/org/w3c/dom/xpath/XPathExpression.java, * external/w3c_dom/org/w3c/dom/xpath/XPathNSResolver.java, * external/w3c_dom/org/w3c/dom/xpath/XPathNamespace.java, * external/w3c_dom/org/w3c/dom/xpath/XPathResult.java, * gnu/CORBA/BigDecimalHelper.java, * gnu/CORBA/CDR/AbstractCdrInput.java, * gnu/CORBA/CDR/AbstractCdrOutput.java, * gnu/CORBA/CDR/AbstractDataInput.java, * gnu/CORBA/CDR/AbstractDataOutput.java, * gnu/CORBA/CDR/AligningInput.java, * gnu/CORBA/CDR/AligningOutput.java, * gnu/CORBA/CDR/ArrayValueHelper.java, * gnu/CORBA/CDR/BigEndianInputStream.java, * gnu/CORBA/CDR/BigEndianOutputStream.java, * gnu/CORBA/CDR/BufferedCdrOutput.java, * gnu/CORBA/CDR/BufferredCdrInput.java, * gnu/CORBA/CDR/HeadlessInput.java, * gnu/CORBA/CDR/IDLTypeHelper.java, * gnu/CORBA/CDR/LittleEndianOutputStream.java, * gnu/CORBA/CDR/UnknownExceptionCtxHandler.java, * gnu/CORBA/CDR/VMVio.java, * gnu/CORBA/CDR/Vio.java, * gnu/CORBA/CDR/gnuRuntime.java, * gnu/CORBA/CDR/gnuValueStream.java, * gnu/CORBA/CdrEncapsCodecImpl.java, * gnu/CORBA/CollocatedOrbs.java, * gnu/CORBA/Connected_objects.java, * gnu/CORBA/DefaultSocketFactory.java, * gnu/CORBA/DuplicateNameHolder.java, * gnu/CORBA/DynAn/AbstractAny.java, * gnu/CORBA/DynAn/DivideableAny.java, * gnu/CORBA/DynAn/NameValuePairHolder.java, * gnu/CORBA/DynAn/RecordAny.java, * gnu/CORBA/DynAn/ValueChangeListener.java, * gnu/CORBA/DynAn/gnuDynAny.java, * gnu/CORBA/DynAn/gnuDynAnyFactory.java, * gnu/CORBA/DynAn/gnuDynArray.java, * gnu/CORBA/DynAn/gnuDynEnum.java, * gnu/CORBA/DynAn/gnuDynFixed.java, * gnu/CORBA/DynAn/gnuDynSequence.java, * gnu/CORBA/DynAn/gnuDynUnion.java, * gnu/CORBA/DynAn/gnuDynValue.java, * gnu/CORBA/DynAn/gnuDynValueBox.java, * gnu/CORBA/DynAnySeqHolder.java, * gnu/CORBA/EmptyExceptionHolder.java, * gnu/CORBA/ForwardRequestHelper.java, * gnu/CORBA/GIOP/CharSets_OSF.java, * gnu/CORBA/GIOP/CloseMessage.java, * gnu/CORBA/GIOP/ErrorMessage.java, * gnu/CORBA/GIOP/MessageHeader.java, * gnu/CORBA/GIOP/ServiceContext.java, * gnu/CORBA/GIOP/v1_2/RequestHeader.java, * gnu/CORBA/GeneralHolder.java, * gnu/CORBA/IOR.java, * gnu/CORBA/Interceptor/ClientRequestInterceptors.java, * gnu/CORBA/Interceptor/ForwardRequestHolder.java, * gnu/CORBA/Interceptor/IORInterceptors.java, * gnu/CORBA/Interceptor/Registrator.java, * gnu/CORBA/Interceptor/ServerRequestInterceptors.java, * gnu/CORBA/Interceptor/gnuClientRequestInfo.java, * gnu/CORBA/Interceptor/gnuIcCurrent.java, * gnu/CORBA/Interceptor/gnuIorInfo.java, * gnu/CORBA/Interceptor/gnuServerRequestInfo.java, * gnu/CORBA/IorDelegate.java, * gnu/CORBA/IorObject.java, * gnu/CORBA/Minor.java, * gnu/CORBA/NameDynAnyPairHolder.java, * gnu/CORBA/NameDynAnyPairSeqHolder.java, * gnu/CORBA/NameValuePairHolder.java, * gnu/CORBA/NameValuePairSeqHolder.java, * gnu/CORBA/NamingService/NameParser.java, * gnu/CORBA/NamingService/NamingMap.java, * gnu/CORBA/NamingService/NamingServiceTransient.java, * gnu/CORBA/NamingService/TransientContext.java, * gnu/CORBA/ObjectCreator.java, * gnu/CORBA/OrbFocused.java, * gnu/CORBA/OrbFunctional.java, * gnu/CORBA/OrbRestricted.java, * gnu/CORBA/Poa/AOM.java, * gnu/CORBA/Poa/AccessiblePolicy.java, * gnu/CORBA/Poa/DynamicImpHandler.java, * gnu/CORBA/Poa/ForwardRequestHolder.java, * gnu/CORBA/Poa/ForwardedServant.java, * gnu/CORBA/Poa/InvalidPolicyHolder.java, * gnu/CORBA/Poa/LocalDelegate.java, * gnu/CORBA/Poa/LocalRequest.java, * gnu/CORBA/Poa/LocalServerRequest.java, * gnu/CORBA/Poa/ORB_1_4.java, * gnu/CORBA/Poa/ServantDelegateImpl.java, * gnu/CORBA/Poa/StandardPolicies.java, * gnu/CORBA/Poa/gnuAdapterActivator.java, * gnu/CORBA/Poa/gnuForwardRequest.java, * gnu/CORBA/Poa/gnuIdAssignmentPolicy.java, * gnu/CORBA/Poa/gnuIdUniquenessPolicy.java, * gnu/CORBA/Poa/gnuImplicitActivationPolicy.java, * gnu/CORBA/Poa/gnuLifespanPolicy.java, * gnu/CORBA/Poa/gnuPOA.java, * gnu/CORBA/Poa/gnuPOAManager.java, * gnu/CORBA/Poa/gnuPoaCurrent.java, * gnu/CORBA/Poa/gnuRequestProcessingPolicy.java, * gnu/CORBA/Poa/gnuServantObject.java, * gnu/CORBA/Poa/gnuServantRetentionPolicy.java, * gnu/CORBA/Poa/gnuThreadPolicy.java, * gnu/CORBA/ServiceRequestAdapter.java, * gnu/CORBA/SetOverrideTypeHolder.java, * gnu/CORBA/SimpleDelegate.java, * gnu/CORBA/SocketRepository.java, * gnu/CORBA/StreamHolder.java, * gnu/CORBA/TypeCodeHelper.java, * gnu/CORBA/TypeKindNamer.java, * gnu/CORBA/Version.java, * gnu/CORBA/_PolicyImplBase.java, * gnu/CORBA/gnuAny.java, * gnu/CORBA/gnuCodecFactory.java, * gnu/CORBA/gnuEnvironment.java, * gnu/CORBA/gnuRequest.java, * gnu/CORBA/gnuValueHolder.java, * gnu/CORBA/interfaces/SocketFactory.java, * gnu/CORBA/typecodes/AliasTypeCode.java, * gnu/CORBA/typecodes/ArrayTypeCode.java, * gnu/CORBA/typecodes/FixedTypeCode.java, * gnu/CORBA/typecodes/GeneralTypeCode.java, * gnu/CORBA/typecodes/PrimitiveTypeCode.java, * gnu/CORBA/typecodes/RecordTypeCode.java, * gnu/CORBA/typecodes/RecursiveTypeCode.java, * gnu/CORBA/typecodes/StringTypeCode.java, * gnu/classpath/Pair.java, * gnu/classpath/Pointer.java, * gnu/classpath/Pointer32.java, * gnu/classpath/Pointer64.java, * gnu/classpath/ServiceFactory.java, * gnu/classpath/ServiceProviderLoadingAction.java, * gnu/classpath/SystemProperties.java, * gnu/classpath/debug/Component.java, * gnu/classpath/debug/PreciseFilter.java, * gnu/classpath/debug/SystemLogger.java, * gnu/classpath/debug/TeeInputStream.java, * gnu/classpath/debug/TeeReader.java, * gnu/classpath/jdwp/Jdwp.java, * gnu/classpath/jdwp/JdwpConstants.java, * gnu/classpath/jdwp/event/BreakpointEvent.java, * gnu/classpath/jdwp/event/ClassPrepareEvent.java, * gnu/classpath/jdwp/event/ClassUnloadEvent.java, * gnu/classpath/jdwp/event/Event.java, * gnu/classpath/jdwp/event/EventManager.java, * gnu/classpath/jdwp/event/EventRequest.java, * gnu/classpath/jdwp/event/ExceptionEvent.java, * gnu/classpath/jdwp/event/MethodEntryEvent.java, * gnu/classpath/jdwp/event/MethodExitEvent.java, * gnu/classpath/jdwp/event/SingleStepEvent.java, * gnu/classpath/jdwp/event/ThreadEndEvent.java, * gnu/classpath/jdwp/event/VmDeathEvent.java, * gnu/classpath/jdwp/event/VmInitEvent.java, * gnu/classpath/jdwp/event/filters/ClassExcludeFilter.java, * gnu/classpath/jdwp/event/filters/ClassMatchFilter.java, * gnu/classpath/jdwp/event/filters/ClassOnlyFilter.java, * gnu/classpath/jdwp/event/filters/ExceptionOnlyFilter.java, * gnu/classpath/jdwp/event/filters/FieldOnlyFilter.java, * gnu/classpath/jdwp/event/filters/InstanceOnlyFilter.java, * gnu/classpath/jdwp/event/filters/StepFilter.java, * gnu/classpath/jdwp/event/filters/ThreadOnlyFilter.java, * gnu/classpath/jdwp/exception/InvalidClassException.java, * gnu/classpath/jdwp/exception/InvalidClassLoaderException.java, * gnu/classpath/jdwp/exception/InvalidEventTypeException.java, * gnu/classpath/jdwp/exception/InvalidFieldException.java, * gnu/classpath/jdwp/exception/InvalidFrameException.java, * gnu/classpath/jdwp/exception/InvalidLocationException.java, * gnu/classpath/jdwp/exception/InvalidMethodException.java, * gnu/classpath/jdwp/exception/InvalidObjectException.java, * gnu/classpath/jdwp/exception/InvalidSlotException.java, * gnu/classpath/jdwp/exception/InvalidStringException.java, * gnu/classpath/jdwp/exception/InvalidThreadException.java, * gnu/classpath/jdwp/exception/InvalidThreadGroupException.java, * gnu/classpath/jdwp/exception/NativeMethodException.java, * gnu/classpath/jdwp/exception/NotImplementedException.java, * gnu/classpath/jdwp/id/JdwpId.java, * gnu/classpath/jdwp/id/NullObjectId.java, * gnu/classpath/jdwp/processor/ArrayReferenceCommandSet.java, * gnu/classpath/jdwp/processor/ArrayTypeCommandSet.java, * gnu/classpath/jdwp/processor/ClassLoaderReferenceCommandSet.java, * gnu/classpath/jdwp/processor/ClassObjectReferenceCommandSet.java, * gnu/classpath/jdwp/processor/ClassTypeCommandSet.java, * gnu/classpath/jdwp/processor/CommandSet.java, * gnu/classpath/jdwp/processor/EventRequestCommandSet.java, * gnu/classpath/jdwp/processor/FieldCommandSet.java, * gnu/classpath/jdwp/processor/InterfaceTypeCommandSet.java, * gnu/classpath/jdwp/processor/MethodCommandSet.java, * gnu/classpath/jdwp/processor/ObjectReferenceCommandSet.java, * gnu/classpath/jdwp/processor/PacketProcessor.java, * gnu/classpath/jdwp/processor/ReferenceTypeCommandSet.java, * gnu/classpath/jdwp/processor/StackFrameCommandSet.java, * gnu/classpath/jdwp/processor/StringReferenceCommandSet.java, * gnu/classpath/jdwp/processor/ThreadGroupReferenceCommandSet.java, * gnu/classpath/jdwp/processor/ThreadReferenceCommandSet.java, * gnu/classpath/jdwp/processor/VirtualMachineCommandSet.java, * gnu/classpath/jdwp/transport/JdwpCommandPacket.java, * gnu/classpath/jdwp/transport/JdwpConnection.java, * gnu/classpath/jdwp/transport/JdwpPacket.java, * gnu/classpath/jdwp/transport/JdwpReplyPacket.java, * gnu/classpath/jdwp/transport/SocketTransport.java, * gnu/classpath/jdwp/transport/TransportFactory.java, * gnu/classpath/jdwp/util/JdwpString.java, * gnu/classpath/jdwp/util/LineTable.java, * gnu/classpath/jdwp/util/Location.java, * gnu/classpath/jdwp/util/MethodResult.java, * gnu/classpath/jdwp/util/MonitorInfo.java, * gnu/classpath/jdwp/util/Signature.java, * gnu/classpath/jdwp/util/VariableTable.java, * gnu/classpath/jdwp/value/ArrayValue.java, * gnu/classpath/jdwp/value/BooleanValue.java, * gnu/classpath/jdwp/value/ByteValue.java, * gnu/classpath/jdwp/value/CharValue.java, * gnu/classpath/jdwp/value/DoubleValue.java, * gnu/classpath/jdwp/value/FloatValue.java, * gnu/classpath/jdwp/value/IntValue.java, * gnu/classpath/jdwp/value/LongValue.java, * gnu/classpath/jdwp/value/ObjectValue.java, * gnu/classpath/jdwp/value/ShortValue.java, * gnu/classpath/jdwp/value/StringValue.java, * gnu/classpath/jdwp/value/Value.java, * gnu/classpath/jdwp/value/ValueFactory.java, * gnu/classpath/jdwp/value/VoidValue.java, * gnu/classpath/toolkit/DefaultDaemonThreadFactory.java, * gnu/java/awt/AWTUtilities.java, * gnu/java/awt/BitMaskExtent.java, * gnu/java/awt/BitwiseXORComposite.java, * gnu/java/awt/Buffers.java, * gnu/java/awt/ClasspathGraphicsEnvironment.java, * gnu/java/awt/ClasspathToolkit.java, * gnu/java/awt/ComponentDataBlitOp.java, * gnu/java/awt/EmbeddedWindow.java, * gnu/java/awt/GradientPaintContext.java, * gnu/java/awt/color/CieXyzConverter.java, * gnu/java/awt/color/ClutProfileConverter.java, * gnu/java/awt/color/ColorLookUpTable.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/RgbProfileConverter.java, * gnu/java/awt/color/SrgbConverter.java, * gnu/java/awt/color/ToneReproductionCurve.java, * gnu/java/awt/dnd/GtkMouseDragGestureRecognizer.java, * gnu/java/awt/dnd/peer/gtk/GtkDragSourceContextPeer.java, * gnu/java/awt/dnd/peer/gtk/GtkDropTargetContextPeer.java, * gnu/java/awt/dnd/peer/gtk/GtkDropTargetPeer.java, * gnu/java/awt/font/FontDelegate.java, * gnu/java/awt/font/FontFactory.java, * gnu/java/awt/font/GNUGlyphVector.java, * gnu/java/awt/font/OpenTypeFontPeer.java, * gnu/java/awt/font/autofit/GlyphHints.java, * gnu/java/awt/font/autofit/Latin.java, * gnu/java/awt/font/autofit/Utils.java, * gnu/java/awt/font/opentype/CharGlyphMap.java, * gnu/java/awt/font/opentype/GlyphNamer.java, * gnu/java/awt/font/opentype/MacResourceFork.java, * gnu/java/awt/font/opentype/NameDecoder.java, * gnu/java/awt/font/opentype/OpenTypeFont.java, * gnu/java/awt/font/opentype/OpenTypeFontFactory.java, * gnu/java/awt/font/opentype/truetype/GlyphLoader.java, * gnu/java/awt/font/opentype/truetype/GlyphLocator.java, * gnu/java/awt/font/opentype/truetype/GlyphMeasurer.java, * gnu/java/awt/font/opentype/truetype/Point.java, * gnu/java/awt/font/opentype/truetype/TrueTypeScaler.java, * gnu/java/awt/font/opentype/truetype/VirtualMachine.java, * gnu/java/awt/font/opentype/truetype/Zone.java, * gnu/java/awt/font/opentype/truetype/ZonePathIterator.java, * gnu/java/awt/image/AsyncImage.java, * gnu/java/awt/image/ImageConverter.java, * gnu/java/awt/image/ImageDecoder.java, * gnu/java/awt/image/XBMDecoder.java, * gnu/java/awt/java2d/AbstractGraphics2D.java, * gnu/java/awt/java2d/AlphaCompositeContext.java, * gnu/java/awt/java2d/CubicSegment.java, * gnu/java/awt/java2d/LineSegment.java, * gnu/java/awt/java2d/PixelCoverage.java, * gnu/java/awt/java2d/QuadSegment.java, * gnu/java/awt/java2d/RasterGraphics.java, * gnu/java/awt/java2d/ScanlineConverter.java, * gnu/java/awt/java2d/ScanlineCoverage.java, * gnu/java/awt/java2d/Segment.java, * gnu/java/awt/java2d/TexturePaintContext.java, * gnu/java/awt/peer/ClasspathDesktopPeer.java, * gnu/java/awt/peer/ClasspathFontPeer.java, * gnu/java/awt/peer/GLightweightPeer.java, * gnu/java/awt/peer/GnomeDesktopPeer.java, * gnu/java/awt/peer/KDEDesktopPeer.java, * gnu/java/awt/peer/gtk/AsyncImage.java, * gnu/java/awt/peer/gtk/BufferedImageGraphics.java, * gnu/java/awt/peer/gtk/CairoGraphics2D.java, * gnu/java/awt/peer/gtk/CairoSurface.java, * gnu/java/awt/peer/gtk/CairoSurfaceGraphics.java, * gnu/java/awt/peer/gtk/ComponentGraphics.java, * gnu/java/awt/peer/gtk/ComponentGraphicsCopy.java, * gnu/java/awt/peer/gtk/FreetypeGlyphVector.java, * gnu/java/awt/peer/gtk/GdkFontPeer.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/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/GtkCursor.java, * gnu/java/awt/peer/gtk/GtkDialogPeer.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/GtkImageConsumer.java, * gnu/java/awt/peer/gtk/GtkLabelPeer.java, * gnu/java/awt/peer/gtk/GtkListPeer.java, * gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java, * gnu/java/awt/peer/gtk/GtkMenuPeer.java, * gnu/java/awt/peer/gtk/GtkMouseInfoPeer.java, * gnu/java/awt/peer/gtk/GtkPanelPeer.java, * gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java, * gnu/java/awt/peer/gtk/GtkScrollbarPeer.java, * gnu/java/awt/peer/gtk/GtkSelection.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/VolatileImageGraphics.java, * gnu/java/awt/peer/headless/HeadlessGraphicsEnvironment.java, * gnu/java/awt/peer/qt/MainQtThread.java, * gnu/java/awt/peer/qt/QMatrix.java, * gnu/java/awt/peer/qt/QPainterPath.java, * gnu/java/awt/peer/qt/QPen.java, * gnu/java/awt/peer/qt/QtAudioClip.java, * gnu/java/awt/peer/qt/QtButtonPeer.java, * gnu/java/awt/peer/qt/QtCheckboxPeer.java, * gnu/java/awt/peer/qt/QtChoicePeer.java, * gnu/java/awt/peer/qt/QtComponentGraphics.java, * gnu/java/awt/peer/qt/QtComponentPeer.java, * gnu/java/awt/peer/qt/QtContainerPeer.java, * gnu/java/awt/peer/qt/QtDialogPeer.java, * gnu/java/awt/peer/qt/QtEmbeddedWindowPeer.java, * gnu/java/awt/peer/qt/QtFileDialogPeer.java, * gnu/java/awt/peer/qt/QtFontMetrics.java, * gnu/java/awt/peer/qt/QtFontPeer.java, * gnu/java/awt/peer/qt/QtFramePeer.java, * gnu/java/awt/peer/qt/QtGraphics.java, * gnu/java/awt/peer/qt/QtGraphicsEnvironment.java, * gnu/java/awt/peer/qt/QtImage.java, * gnu/java/awt/peer/qt/QtImageConsumer.java, * gnu/java/awt/peer/qt/QtImageDirectGraphics.java, * gnu/java/awt/peer/qt/QtImageGraphics.java, * gnu/java/awt/peer/qt/QtLabelPeer.java, * gnu/java/awt/peer/qt/QtListPeer.java, * gnu/java/awt/peer/qt/QtMenuBarPeer.java, * gnu/java/awt/peer/qt/QtMenuComponentPeer.java, * gnu/java/awt/peer/qt/QtMenuItemPeer.java, * gnu/java/awt/peer/qt/QtMenuPeer.java, * gnu/java/awt/peer/qt/QtPanelPeer.java, * gnu/java/awt/peer/qt/QtPopupMenuPeer.java, * gnu/java/awt/peer/qt/QtRepaintThread.java, * gnu/java/awt/peer/qt/QtScreenDevice.java, * gnu/java/awt/peer/qt/QtScreenDeviceConfiguration.java, * gnu/java/awt/peer/qt/QtScrollPanePeer.java, * gnu/java/awt/peer/qt/QtScrollbarPeer.java, * gnu/java/awt/peer/qt/QtTextAreaPeer.java, * gnu/java/awt/peer/qt/QtTextFieldPeer.java, * gnu/java/awt/peer/qt/QtToolkit.java, * gnu/java/awt/peer/qt/QtVolatileImage.java, * gnu/java/awt/peer/qt/QtWindowPeer.java, * gnu/java/awt/peer/swing/SwingButtonPeer.java, * gnu/java/awt/peer/swing/SwingCheckboxPeer.java, * gnu/java/awt/peer/swing/SwingComponent.java, * gnu/java/awt/peer/swing/SwingComponentPeer.java, * gnu/java/awt/peer/swing/SwingContainerPeer.java, * gnu/java/awt/peer/swing/SwingLabelPeer.java, * gnu/java/awt/peer/swing/SwingListPeer.java, * gnu/java/awt/peer/swing/SwingMenuItemPeer.java, * gnu/java/awt/peer/swing/SwingMenuPeer.java, * gnu/java/awt/peer/swing/SwingTextAreaPeer.java, * gnu/java/awt/peer/swing/SwingTextFieldPeer.java, * gnu/java/awt/peer/x/GLGraphics.java, * gnu/java/awt/peer/x/KeyboardMapping.java, * gnu/java/awt/peer/x/XEventPump.java, * gnu/java/awt/peer/x/XFontPeer.java, * gnu/java/awt/peer/x/XFramePeer.java, * gnu/java/awt/peer/x/XGraphics2D.java, * gnu/java/awt/peer/x/XGraphicsConfiguration.java, * gnu/java/awt/peer/x/XGraphicsDevice.java, * gnu/java/awt/peer/x/XGraphicsEnvironment.java, * gnu/java/awt/peer/x/XImage.java, * gnu/java/awt/peer/x/XToolkit.java, * gnu/java/awt/peer/x/XWindowPeer.java, * gnu/java/awt/print/JavaPrinterGraphics.java, * gnu/java/awt/print/JavaPrinterJob.java, * gnu/java/awt/print/PostScriptGraphics2D.java, * gnu/java/awt/print/SpooledDocument.java, * gnu/java/beans/BeanInfoEmbryo.java, * gnu/java/beans/DefaultExceptionListener.java, * gnu/java/beans/ExplicitBeanInfo.java, * gnu/java/beans/IntrospectionIncubator.java, * 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/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/encoder/ArrayPersistenceDelegate.java, * gnu/java/beans/encoder/ClassPersistenceDelegate.java, * gnu/java/beans/encoder/CollectionPersistenceDelegate.java, * gnu/java/beans/encoder/Context.java, * gnu/java/beans/encoder/GenericScannerState.java, * gnu/java/beans/encoder/IgnoringScannerState.java, * gnu/java/beans/encoder/MapPersistenceDelegate.java, * gnu/java/beans/encoder/ObjectId.java, * gnu/java/beans/encoder/PrimitivePersistenceDelegate.java, * gnu/java/beans/encoder/ReportingScannerState.java, * gnu/java/beans/encoder/Root.java, * gnu/java/beans/encoder/ScanEngine.java, * gnu/java/beans/encoder/ScannerState.java, * gnu/java/beans/encoder/StAXWriter.java, * gnu/java/beans/encoder/Writer.java, * gnu/java/beans/encoder/elements/ArrayInstantiation.java, * gnu/java/beans/encoder/elements/Array_Get.java, * gnu/java/beans/encoder/elements/ClassResolution.java, * gnu/java/beans/encoder/elements/Element.java, * gnu/java/beans/encoder/elements/List_Get.java, * gnu/java/beans/encoder/elements/List_Set.java, * gnu/java/beans/encoder/elements/MethodInvocation.java, * gnu/java/beans/encoder/elements/NullObject.java, * gnu/java/beans/encoder/elements/ObjectInstantiation.java, * gnu/java/beans/encoder/elements/ObjectReference.java, * gnu/java/beans/encoder/elements/PrimitiveInstantiation.java, * gnu/java/beans/encoder/elements/StaticFieldAccess.java, * gnu/java/beans/encoder/elements/StaticMethodInvocation.java, * gnu/java/beans/encoder/elements/StringReference.java, * gnu/java/io/ASN1ParsingException.java, * gnu/java/io/Base64InputStream.java, * gnu/java/io/ClassLoaderObjectInputStream.java, * gnu/java/io/NullOutputStream.java, * gnu/java/io/ObjectIdentityMap2Int.java, * gnu/java/io/ObjectIdentityWrapper.java, * gnu/java/io/PlatformHelper.java, * gnu/java/lang/CPStringBuilder.java, * gnu/java/lang/CharData.java, * gnu/java/lang/InstrumentationImpl.java, * gnu/java/lang/MainThread.java, * gnu/java/lang/management/BeanImpl.java, * gnu/java/lang/management/ClassLoadingMXBeanImpl.java, * gnu/java/lang/management/CompilationMXBeanImpl.java, * gnu/java/lang/management/GarbageCollectorMXBeanImpl.java, * gnu/java/lang/management/MemoryMXBeanImpl.java, * gnu/java/lang/management/MemoryManagerMXBeanImpl.java, * gnu/java/lang/management/MemoryPoolMXBeanImpl.java, * gnu/java/lang/management/OperatingSystemMXBeanImpl.java, * gnu/java/lang/management/RuntimeMXBeanImpl.java, * gnu/java/lang/management/ThreadMXBeanImpl.java, * gnu/java/lang/reflect/TypeSignature.java, * gnu/java/locale/LocaleHelper.java, * gnu/java/math/Fixed.java, * gnu/java/math/GMP.java, * gnu/java/math/MPN.java, * gnu/java/net/CRLFInputStream.java, * gnu/java/net/CRLFOutputStream.java, * gnu/java/net/DefaultContentHandlerFactory.java, * gnu/java/net/DefaultProxySelector.java, * gnu/java/net/EmptyX509TrustManager.java, * gnu/java/net/GetLocalHostAction.java, * gnu/java/net/HeaderFieldHelper.java, * gnu/java/net/IndexListParser.java, * gnu/java/net/LineInputStream.java, * gnu/java/net/PlainDatagramSocketImpl.java, * gnu/java/net/PlainSocketImpl.java, * gnu/java/net/loader/FileResource.java, * gnu/java/net/loader/FileURLLoader.java, * gnu/java/net/loader/JarURLLoader.java, * gnu/java/net/loader/JarURLResource.java, * gnu/java/net/loader/RemoteResource.java, * gnu/java/net/loader/RemoteURLLoader.java, * gnu/java/net/loader/Resource.java, * gnu/java/net/loader/URLLoader.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/http/Authenticator.java, * gnu/java/net/protocol/http/ByteArrayRequestBodyWriter.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/ResponseHeaderHandler.java, * gnu/java/net/protocol/http/SimpleCookieManager.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/ChannelWriter.java, * gnu/java/nio/DatagramChannelImpl.java, * gnu/java/nio/DatagramChannelSelectionKey.java, * gnu/java/nio/EpollSelectionKeyImpl.java, * gnu/java/nio/EpollSelectorImpl.java, * gnu/java/nio/FileChannelImpl.java, * gnu/java/nio/FileLockImpl.java, * gnu/java/nio/InputStreamChannel.java, * gnu/java/nio/KqueueSelectionKeyImpl.java, * gnu/java/nio/KqueueSelectorImpl.java, * gnu/java/nio/NIODatagramSocket.java, * gnu/java/nio/NIOServerSocket.java, * gnu/java/nio/NIOSocket.java, * gnu/java/nio/NIOSocketImpl.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/SocketChannelSelectionKeyImpl.java, * gnu/java/nio/VMChannelOwner.java, * gnu/java/nio/charset/ByteCharset.java, * gnu/java/nio/charset/ByteDecodeLoopHelper.java, * gnu/java/nio/charset/ByteEncodeLoopHelper.java, * gnu/java/nio/charset/Cp424.java, * gnu/java/nio/charset/Cp437.java, * gnu/java/nio/charset/Cp737.java, * gnu/java/nio/charset/Cp775.java, * gnu/java/nio/charset/Cp850.java, * gnu/java/nio/charset/Cp852.java, * gnu/java/nio/charset/Cp855.java, * gnu/java/nio/charset/Cp857.java, * gnu/java/nio/charset/Cp860.java, * gnu/java/nio/charset/Cp861.java, * gnu/java/nio/charset/Cp862.java, * gnu/java/nio/charset/Cp863.java, * gnu/java/nio/charset/Cp864.java, * gnu/java/nio/charset/Cp865.java, * gnu/java/nio/charset/Cp866.java, * gnu/java/nio/charset/Cp869.java, * gnu/java/nio/charset/Cp874.java, * gnu/java/nio/charset/EncodingHelper.java, * gnu/java/nio/charset/ISO_8859_1.java, * gnu/java/nio/charset/ISO_8859_13.java, * gnu/java/nio/charset/ISO_8859_15.java, * gnu/java/nio/charset/ISO_8859_2.java, * gnu/java/nio/charset/ISO_8859_3.java, * gnu/java/nio/charset/ISO_8859_4.java, * gnu/java/nio/charset/ISO_8859_5.java, * gnu/java/nio/charset/ISO_8859_6.java, * gnu/java/nio/charset/ISO_8859_7.java, * gnu/java/nio/charset/ISO_8859_8.java, * gnu/java/nio/charset/ISO_8859_9.java, * gnu/java/nio/charset/KOI_8.java, * gnu/java/nio/charset/MS874.java, * gnu/java/nio/charset/MacCentralEurope.java, * gnu/java/nio/charset/MacCroatian.java, * gnu/java/nio/charset/MacCyrillic.java, * gnu/java/nio/charset/MacDingbat.java, * gnu/java/nio/charset/MacGreek.java, * gnu/java/nio/charset/MacIceland.java, * gnu/java/nio/charset/MacRoman.java, * gnu/java/nio/charset/MacRomania.java, * gnu/java/nio/charset/MacSymbol.java, * gnu/java/nio/charset/MacThai.java, * 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/nio/charset/UnicodeLittle.java, * gnu/java/nio/charset/Windows1250.java, * gnu/java/nio/charset/Windows1251.java, * gnu/java/nio/charset/Windows1252.java, * gnu/java/nio/charset/Windows1253.java, * gnu/java/nio/charset/Windows1254.java, * gnu/java/nio/charset/Windows1255.java, * gnu/java/nio/charset/Windows1256.java, * gnu/java/nio/charset/Windows1257.java, * gnu/java/nio/charset/Windows1258.java, * gnu/java/nio/charset/iconv/IconvCharset.java, * gnu/java/nio/charset/iconv/IconvDecoder.java, * gnu/java/nio/charset/iconv/IconvEncoder.java, * gnu/java/nio/charset/iconv/IconvProvider.java, * gnu/java/rmi/RMIMarshalledObjectInputStream.java, * gnu/java/rmi/RMIMarshalledObjectOutputStream.java, * gnu/java/rmi/activation/ActivationSystemTransient.java, * gnu/java/rmi/activation/BidiTable.java, * gnu/java/rmi/activation/DefaultActivationGroup.java, * gnu/java/rmi/activation/DefaultActivationSystem.java, * gnu/java/rmi/dgc/DGCImpl.java, * gnu/java/rmi/dgc/DGCImpl_Skel.java, * gnu/java/rmi/dgc/DGCImpl_Stub.java, * gnu/java/rmi/dgc/LeaseRenewingTask.java, * gnu/java/rmi/registry/RegistryImpl.java, * gnu/java/rmi/registry/RegistryImpl_Skel.java, * gnu/java/rmi/registry/RegistryImpl_Stub.java, * gnu/java/rmi/server/ActivatableRef.java, * gnu/java/rmi/server/ActivatableServerRef.java, * gnu/java/rmi/server/CombinedClassLoader.java, * gnu/java/rmi/server/ConnectionRunnerPool.java, * gnu/java/rmi/server/ProtocolConstants.java, * gnu/java/rmi/server/RMIClassLoaderImpl.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/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, * gnu/java/security/Engine.java, * gnu/java/security/OID.java, * gnu/java/security/PolicyFile.java, * gnu/java/security/Properties.java, * gnu/java/security/Registry.java, * gnu/java/security/Requires.java, * gnu/java/security/action/GetPropertyAction.java, * gnu/java/security/action/SetAccessibleAction.java, * gnu/java/security/der/DERValue.java, * gnu/java/security/hash/BaseHash.java, * gnu/java/security/hash/HashFactory.java, * gnu/java/security/hash/Haval.java, * gnu/java/security/hash/IMessageDigest.java, * gnu/java/security/hash/MD2.java, * gnu/java/security/hash/MD4.java, * gnu/java/security/hash/MD5.java, * gnu/java/security/hash/RipeMD128.java, * gnu/java/security/hash/RipeMD160.java, * gnu/java/security/hash/Sha160.java, * gnu/java/security/hash/Sha256.java, * gnu/java/security/hash/Sha384.java, * gnu/java/security/hash/Sha512.java, * gnu/java/security/hash/Tiger.java, * gnu/java/security/hash/Whirlpool.java, * gnu/java/security/jce/hash/HavalSpi.java, * gnu/java/security/jce/hash/MD2Spi.java, * gnu/java/security/jce/hash/MD4Spi.java, * gnu/java/security/jce/hash/MD5Spi.java, * gnu/java/security/jce/hash/MessageDigestAdapter.java, * gnu/java/security/jce/hash/RipeMD128Spi.java, * gnu/java/security/jce/hash/RipeMD160Spi.java, * gnu/java/security/jce/hash/Sha160Spi.java, * gnu/java/security/jce/hash/Sha256Spi.java, * gnu/java/security/jce/hash/Sha384Spi.java, * gnu/java/security/jce/hash/Sha512Spi.java, * gnu/java/security/jce/hash/TigerSpi.java, * gnu/java/security/jce/hash/WhirlpoolSpi.java, * gnu/java/security/jce/prng/HavalRandomSpi.java, * gnu/java/security/jce/prng/MD2RandomSpi.java, * gnu/java/security/jce/prng/MD4RandomSpi.java, * gnu/java/security/jce/prng/MD5RandomSpi.java, * gnu/java/security/jce/prng/RipeMD128RandomSpi.java, * gnu/java/security/jce/prng/RipeMD160RandomSpi.java, * gnu/java/security/jce/prng/SecureRandomAdapter.java, * gnu/java/security/jce/prng/Sha160RandomSpi.java, * gnu/java/security/jce/prng/Sha256RandomSpi.java, * gnu/java/security/jce/prng/Sha384RandomSpi.java, * gnu/java/security/jce/prng/Sha512RandomSpi.java, * gnu/java/security/jce/prng/TigerRandomSpi.java, * gnu/java/security/jce/prng/WhirlpoolRandomSpi.java, * gnu/java/security/jce/sig/DSSKeyFactory.java, * gnu/java/security/jce/sig/DSSKeyPairGeneratorSpi.java, * gnu/java/security/jce/sig/DSSParameters.java, * gnu/java/security/jce/sig/DSSRawSignatureSpi.java, * gnu/java/security/jce/sig/KeyPairGeneratorAdapter.java, * gnu/java/security/jce/sig/RSAPSSRawSignatureSpi.java, * gnu/java/security/jce/sig/SignatureAdapter.java, * gnu/java/security/key/IKeyPairCodec.java, * gnu/java/security/key/IKeyPairGenerator.java, * gnu/java/security/key/KeyPairCodecFactory.java, * gnu/java/security/key/KeyPairGeneratorFactory.java, * gnu/java/security/key/dss/DSSKey.java, * gnu/java/security/key/dss/DSSKeyPairGenerator.java, * gnu/java/security/key/dss/DSSKeyPairPKCS8Codec.java, * gnu/java/security/key/dss/DSSKeyPairRawCodec.java, * gnu/java/security/key/dss/DSSKeyPairX509Codec.java, * gnu/java/security/key/dss/DSSPrivateKey.java, * gnu/java/security/key/dss/DSSPublicKey.java, * gnu/java/security/key/dss/FIPS186.java, * gnu/java/security/key/rsa/GnuRSAKey.java, * gnu/java/security/key/rsa/GnuRSAPrivateKey.java, * gnu/java/security/key/rsa/GnuRSAPublicKey.java, * gnu/java/security/key/rsa/RSAKeyPairGenerator.java, * gnu/java/security/key/rsa/RSAKeyPairPKCS8Codec.java, * gnu/java/security/key/rsa/RSAKeyPairRawCodec.java, * gnu/java/security/key/rsa/RSAKeyPairX509Codec.java, * gnu/java/security/pkcs/PKCS7Data.java, * gnu/java/security/pkcs/PKCS7SignedData.java, * gnu/java/security/pkcs/SignerInfo.java, * gnu/java/security/prng/BasePRNG.java, * gnu/java/security/prng/EntropySource.java, * gnu/java/security/prng/IRandom.java, * gnu/java/security/prng/LimitReachedException.java, * gnu/java/security/prng/MDGenerator.java, * gnu/java/security/prng/PRNGFactory.java, * gnu/java/security/prng/RandomEventListener.java, * gnu/java/security/provider/DefaultPolicy.java, * gnu/java/security/provider/PKIXCertPathValidatorImpl.java, * gnu/java/security/sig/BaseSignature.java, * gnu/java/security/sig/ISignature.java, * gnu/java/security/sig/ISignatureCodec.java, * gnu/java/security/sig/SignatureCodecFactory.java, * gnu/java/security/sig/SignatureFactory.java, * gnu/java/security/sig/dss/DSSSignature.java, * gnu/java/security/sig/dss/DSSSignatureRawCodec.java, * gnu/java/security/sig/dss/DSSSignatureX509Codec.java, * gnu/java/security/sig/rsa/EME_PKCS1_V1_5.java, * gnu/java/security/sig/rsa/EMSA_PKCS1_V1_5.java, * gnu/java/security/sig/rsa/EMSA_PSS.java, * gnu/java/security/sig/rsa/RSA.java, * gnu/java/security/sig/rsa/RSAPKCS1V1_5Signature.java, * gnu/java/security/sig/rsa/RSAPKCS1V1_5SignatureRawCodec.java, * gnu/java/security/sig/rsa/RSAPKCS1V1_5SignatureX509Codec.java, * gnu/java/security/sig/rsa/RSAPSSSignature.java, * gnu/java/security/sig/rsa/RSAPSSSignatureRawCodec.java, * gnu/java/security/sig/rsa/RSASignatureFactory.java, * gnu/java/security/util/ByteArray.java, * gnu/java/security/util/ByteBufferOutputStream.java, * gnu/java/security/util/ExpirableObject.java, * gnu/java/security/util/FormatUtil.java, * gnu/java/security/util/IntegerUtil.java, * gnu/java/security/util/PRNG.java, * gnu/java/security/util/Prime.java, * gnu/java/security/util/Sequence.java, * gnu/java/security/util/SimpleList.java, * gnu/java/security/util/Util.java, * gnu/java/security/x509/X509CRLSelectorImpl.java, * gnu/java/security/x509/X509CertSelectorImpl.java, * gnu/java/security/x509/ext/CertificatePolicies.java, * gnu/java/security/x509/ext/GeneralName.java, * gnu/java/security/x509/ext/GeneralSubtree.java, * gnu/java/security/x509/ext/NameConstraints.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/Base64.java, * gnu/java/util/DoubleEnumeration.java, * gnu/java/util/EmptyEnumeration.java, * gnu/java/util/WeakIdentityHashMap.java, * gnu/java/util/ZoneInfo.java, * gnu/java/util/jar/JarUtils.java, * gnu/java/util/prefs/FileBasedFactory.java, * gnu/java/util/prefs/FileBasedPreferences.java, * gnu/java/util/prefs/GConfBasedFactory.java, * gnu/java/util/prefs/GConfBasedPreferences.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/java/util/prefs/gconf/GConfNativePeer.java, * gnu/java/util/regex/BacktrackStack.java, * gnu/java/util/regex/CharIndexed.java, * gnu/java/util/regex/CharIndexedInputStream.java, * gnu/java/util/regex/RE.java, * gnu/java/util/regex/REFilterInputStream.java, * gnu/java/util/regex/REMatch.java, * gnu/java/util/regex/REMatchEnumeration.java, * gnu/java/util/regex/RESyntax.java, * gnu/java/util/regex/REToken.java, * gnu/java/util/regex/RETokenAny.java, * gnu/java/util/regex/RETokenBackRef.java, * gnu/java/util/regex/RETokenChar.java, * gnu/java/util/regex/RETokenEnd.java, * gnu/java/util/regex/RETokenEndOfPreviousMatch.java, * gnu/java/util/regex/RETokenIndependent.java, * gnu/java/util/regex/RETokenLookAhead.java, * gnu/java/util/regex/RETokenLookBehind.java, * gnu/java/util/regex/RETokenNamedProperty.java, * gnu/java/util/regex/RETokenOneOf.java, * gnu/java/util/regex/RETokenPOSIX.java, * gnu/java/util/regex/RETokenRange.java, * gnu/java/util/regex/RETokenRepeated.java, * gnu/java/util/regex/RETokenStart.java, * gnu/java/util/regex/RETokenWordBoundary.java, * gnu/java/util/regex/UncheckedRE.java, * gnu/javax/activation/viewers/ImageViewer.java, * gnu/javax/activation/viewers/TextEditor.java, * gnu/javax/activation/viewers/TextViewer.java, * gnu/javax/crypto/assembly/Assembly.java, * gnu/javax/crypto/assembly/Cascade.java, * gnu/javax/crypto/assembly/CascadeStage.java, * gnu/javax/crypto/assembly/CascadeTransformer.java, * gnu/javax/crypto/assembly/DeflateTransformer.java, * gnu/javax/crypto/assembly/Direction.java, * gnu/javax/crypto/assembly/LoopbackTransformer.java, * gnu/javax/crypto/assembly/ModeStage.java, * gnu/javax/crypto/assembly/Operation.java, * gnu/javax/crypto/assembly/PaddingTransformer.java, * gnu/javax/crypto/assembly/Stage.java, * gnu/javax/crypto/assembly/Transformer.java, * gnu/javax/crypto/assembly/TransformerException.java, * gnu/javax/crypto/cipher/Anubis.java, * gnu/javax/crypto/cipher/BaseCipher.java, * gnu/javax/crypto/cipher/Blowfish.java, * gnu/javax/crypto/cipher/Cast5.java, * gnu/javax/crypto/cipher/CipherFactory.java, * gnu/javax/crypto/cipher/DES.java, * gnu/javax/crypto/cipher/IBlockCipher.java, * gnu/javax/crypto/cipher/IBlockCipherSpi.java, * gnu/javax/crypto/cipher/Khazad.java, * gnu/javax/crypto/cipher/NullCipher.java, * gnu/javax/crypto/cipher/Rijndael.java, * gnu/javax/crypto/cipher/Serpent.java, * gnu/javax/crypto/cipher/Square.java, * gnu/javax/crypto/cipher/TripleDES.java, * gnu/javax/crypto/cipher/Twofish.java, * gnu/javax/crypto/cipher/WeakKeyException.java, * gnu/javax/crypto/jce/DiffieHellmanImpl.java, * gnu/javax/crypto/jce/GnuCrypto.java, * gnu/javax/crypto/jce/GnuSasl.java, * gnu/javax/crypto/jce/PBKDF2SecretKeyFactory.java, * gnu/javax/crypto/jce/cipher/AESKeyWrapSpi.java, * gnu/javax/crypto/jce/cipher/AESSpi.java, * gnu/javax/crypto/jce/cipher/ARCFourSpi.java, * gnu/javax/crypto/jce/cipher/AnubisSpi.java, * gnu/javax/crypto/jce/cipher/BlowfishSpi.java, * gnu/javax/crypto/jce/cipher/Cast5Spi.java, * gnu/javax/crypto/jce/cipher/CipherAdapter.java, * gnu/javax/crypto/jce/cipher/DESSpi.java, * gnu/javax/crypto/jce/cipher/KeyWrappingAlgorithmAdapter.java, * gnu/javax/crypto/jce/cipher/KhazadSpi.java, * gnu/javax/crypto/jce/cipher/NullCipherSpi.java, * gnu/javax/crypto/jce/cipher/PBES2.java, * gnu/javax/crypto/jce/cipher/RijndaelSpi.java, * gnu/javax/crypto/jce/cipher/SerpentSpi.java, * gnu/javax/crypto/jce/cipher/SquareSpi.java, * gnu/javax/crypto/jce/cipher/TripleDESSpi.java, * gnu/javax/crypto/jce/cipher/TwofishSpi.java, * gnu/javax/crypto/jce/key/AnubisSecretKeyFactoryImpl.java, * gnu/javax/crypto/jce/key/BlowfishSecretKeyFactoryImpl.java, * gnu/javax/crypto/jce/key/Cast5SecretKeyFactoryImpl.java, * gnu/javax/crypto/jce/key/SecretKeyGeneratorImpl.java, * gnu/javax/crypto/jce/keyring/GnuKeyring.java, * gnu/javax/crypto/jce/mac/HMacHavalSpi.java, * gnu/javax/crypto/jce/mac/HMacMD2Spi.java, * gnu/javax/crypto/jce/mac/HMacMD4Spi.java, * gnu/javax/crypto/jce/mac/HMacMD5Spi.java, * gnu/javax/crypto/jce/mac/HMacRipeMD128Spi.java, * gnu/javax/crypto/jce/mac/HMacRipeMD160Spi.java, * gnu/javax/crypto/jce/mac/HMacSHA160Spi.java, * gnu/javax/crypto/jce/mac/HMacSHA256Spi.java, * gnu/javax/crypto/jce/mac/HMacSHA384Spi.java, * gnu/javax/crypto/jce/mac/HMacSHA512Spi.java, * gnu/javax/crypto/jce/mac/HMacTigerSpi.java, * gnu/javax/crypto/jce/mac/HMacWhirlpoolSpi.java, * gnu/javax/crypto/jce/mac/MacAdapter.java, * gnu/javax/crypto/jce/mac/TMMH16Spi.java, * gnu/javax/crypto/jce/mac/UHash32Spi.java, * gnu/javax/crypto/jce/mac/UMac32Spi.java, * gnu/javax/crypto/jce/params/BlockCipherParameters.java, * gnu/javax/crypto/jce/params/DEREncodingException.java, * gnu/javax/crypto/jce/params/DERReader.java, * gnu/javax/crypto/jce/params/DERWriter.java, * gnu/javax/crypto/jce/prng/ARCFourRandomSpi.java, * gnu/javax/crypto/jce/prng/CSPRNGSpi.java, * gnu/javax/crypto/jce/prng/FortunaImpl.java, * gnu/javax/crypto/jce/prng/ICMRandomSpi.java, * gnu/javax/crypto/jce/prng/UMacRandomSpi.java, * gnu/javax/crypto/jce/sig/DHParameters.java, * gnu/javax/crypto/jce/spec/BlockCipherParameterSpec.java, * gnu/javax/crypto/jce/spec/TMMHParameterSpec.java, * gnu/javax/crypto/jce/spec/UMac32ParameterSpec.java, * gnu/javax/crypto/key/BaseKeyAgreementParty.java, * gnu/javax/crypto/key/GnuPBEKey.java, * gnu/javax/crypto/key/GnuSecretKey.java, * gnu/javax/crypto/key/IKeyAgreementParty.java, * gnu/javax/crypto/key/IncomingMessage.java, * gnu/javax/crypto/key/KeyAgreementException.java, * gnu/javax/crypto/key/KeyAgreementFactory.java, * gnu/javax/crypto/key/OutgoingMessage.java, * gnu/javax/crypto/key/dh/DHKeyPairPKCS8Codec.java, * gnu/javax/crypto/key/dh/DHKeyPairRawCodec.java, * gnu/javax/crypto/key/dh/DHKeyPairX509Codec.java, * gnu/javax/crypto/key/dh/DiffieHellmanKeyAgreement.java, * gnu/javax/crypto/key/dh/DiffieHellmanReceiver.java, * gnu/javax/crypto/key/dh/DiffieHellmanSender.java, * gnu/javax/crypto/key/dh/ElGamalKeyAgreement.java, * gnu/javax/crypto/key/dh/ElGamalReceiver.java, * gnu/javax/crypto/key/dh/ElGamalSender.java, * gnu/javax/crypto/key/dh/GnuDHKey.java, * gnu/javax/crypto/key/dh/GnuDHKeyPairGenerator.java, * gnu/javax/crypto/key/dh/GnuDHPrivateKey.java, * gnu/javax/crypto/key/dh/GnuDHPublicKey.java, * gnu/javax/crypto/key/dh/RFC2631.java, * gnu/javax/crypto/key/srp6/SRP6Host.java, * gnu/javax/crypto/key/srp6/SRP6KeyAgreement.java, * gnu/javax/crypto/key/srp6/SRP6SaslClient.java, * gnu/javax/crypto/key/srp6/SRP6SaslServer.java, * gnu/javax/crypto/key/srp6/SRP6TLSClient.java, * gnu/javax/crypto/key/srp6/SRP6TLSServer.java, * gnu/javax/crypto/key/srp6/SRP6User.java, * gnu/javax/crypto/key/srp6/SRPAlgorithm.java, * gnu/javax/crypto/key/srp6/SRPKey.java, * gnu/javax/crypto/key/srp6/SRPKeyPairGenerator.java, * gnu/javax/crypto/key/srp6/SRPKeyPairRawCodec.java, * gnu/javax/crypto/key/srp6/SRPPrivateKey.java, * gnu/javax/crypto/key/srp6/SRPPublicKey.java, * gnu/javax/crypto/keyring/AuthenticatedEntry.java, * gnu/javax/crypto/keyring/BaseKeyring.java, * gnu/javax/crypto/keyring/BinaryDataEntry.java, * gnu/javax/crypto/keyring/CertPathEntry.java, * gnu/javax/crypto/keyring/CertificateEntry.java, * gnu/javax/crypto/keyring/CompressedEntry.java, * gnu/javax/crypto/keyring/EncryptedEntry.java, * gnu/javax/crypto/keyring/Entry.java, * gnu/javax/crypto/keyring/EnvelopeEntry.java, * gnu/javax/crypto/keyring/GnuPrivateKeyring.java, * gnu/javax/crypto/keyring/GnuPublicKeyring.java, * gnu/javax/crypto/keyring/IKeyring.java, * gnu/javax/crypto/keyring/IPrivateKeyring.java, * gnu/javax/crypto/keyring/IPublicKeyring.java, * gnu/javax/crypto/keyring/MalformedKeyringException.java, * gnu/javax/crypto/keyring/MaskableEnvelopeEntry.java, * gnu/javax/crypto/keyring/MeteredInputStream.java, * gnu/javax/crypto/keyring/PasswordAuthenticatedEntry.java, * gnu/javax/crypto/keyring/PasswordEncryptedEntry.java, * gnu/javax/crypto/keyring/PasswordProtectedEntry.java, * gnu/javax/crypto/keyring/PrimitiveEntry.java, * gnu/javax/crypto/keyring/PrivateKeyEntry.java, * gnu/javax/crypto/keyring/Properties.java, * gnu/javax/crypto/keyring/PublicKeyEntry.java, * gnu/javax/crypto/kwa/BaseKeyWrappingAlgorithm.java, * gnu/javax/crypto/kwa/IKeyWrappingAlgorithm.java, * gnu/javax/crypto/kwa/KeyWrappingAlgorithmFactory.java, * gnu/javax/crypto/kwa/TripleDESKeyWrap.java, * gnu/javax/crypto/mac/BaseMac.java, * gnu/javax/crypto/mac/HMac.java, * gnu/javax/crypto/mac/HMacFactory.java, * gnu/javax/crypto/mac/IMac.java, * gnu/javax/crypto/mac/MacFactory.java, * gnu/javax/crypto/mac/MacInputStream.java, * gnu/javax/crypto/mac/MacOutputStream.java, * gnu/javax/crypto/mac/OMAC.java, * gnu/javax/crypto/mac/TMMH16.java, * gnu/javax/crypto/mac/UHash32.java, * gnu/javax/crypto/mac/UMac32.java, * gnu/javax/crypto/mode/BaseMode.java, * gnu/javax/crypto/mode/CBC.java, * gnu/javax/crypto/mode/CFB.java, * gnu/javax/crypto/mode/CTR.java, * gnu/javax/crypto/mode/EAX.java, * gnu/javax/crypto/mode/ECB.java, * gnu/javax/crypto/mode/IAuthenticatedMode.java, * gnu/javax/crypto/mode/ICM.java, * gnu/javax/crypto/mode/IMode.java, * gnu/javax/crypto/mode/ModeFactory.java, * gnu/javax/crypto/mode/OFB.java, * gnu/javax/crypto/pad/BasePad.java, * gnu/javax/crypto/pad/IPad.java, * gnu/javax/crypto/pad/PKCS1_V1_5.java, * gnu/javax/crypto/pad/PKCS7.java, * gnu/javax/crypto/pad/PadFactory.java, * gnu/javax/crypto/pad/TBC.java, * gnu/javax/crypto/pad/WrongPaddingException.java, * gnu/javax/crypto/prng/ARCFour.java, * gnu/javax/crypto/prng/CSPRNG.java, * gnu/javax/crypto/prng/ICMGenerator.java, * gnu/javax/crypto/prng/IPBE.java, * gnu/javax/crypto/prng/PBKDF2.java, * gnu/javax/crypto/prng/PRNGFactory.java, * gnu/javax/crypto/prng/UMacGenerator.java, * gnu/javax/crypto/sasl/AuthInfo.java, * gnu/javax/crypto/sasl/AuthInfoProviderFactory.java, * gnu/javax/crypto/sasl/ClientFactory.java, * gnu/javax/crypto/sasl/ClientMechanism.java, * gnu/javax/crypto/sasl/ConfidentialityException.java, * gnu/javax/crypto/sasl/IAuthInfoProvider.java, * gnu/javax/crypto/sasl/IAuthInfoProviderFactory.java, * gnu/javax/crypto/sasl/IllegalMechanismStateException.java, * gnu/javax/crypto/sasl/InputBuffer.java, * gnu/javax/crypto/sasl/IntegrityException.java, * gnu/javax/crypto/sasl/NoSuchMechanismException.java, * gnu/javax/crypto/sasl/NoSuchUserException.java, * gnu/javax/crypto/sasl/OutputBuffer.java, * gnu/javax/crypto/sasl/SaslEncodingException.java, * gnu/javax/crypto/sasl/SaslInputStream.java, * gnu/javax/crypto/sasl/SaslOutputStream.java, * gnu/javax/crypto/sasl/SaslUtil.java, * gnu/javax/crypto/sasl/ServerFactory.java, * gnu/javax/crypto/sasl/ServerMechanism.java, * gnu/javax/crypto/sasl/UserAlreadyExistsException.java, * gnu/javax/crypto/sasl/anonymous/AnonymousClient.java, * gnu/javax/crypto/sasl/anonymous/AnonymousServer.java, * gnu/javax/crypto/sasl/anonymous/AnonymousUtil.java, * gnu/javax/crypto/sasl/crammd5/CramMD5AuthInfoProvider.java, * gnu/javax/crypto/sasl/crammd5/CramMD5Client.java, * gnu/javax/crypto/sasl/crammd5/CramMD5Registry.java, * gnu/javax/crypto/sasl/crammd5/CramMD5Server.java, * gnu/javax/crypto/sasl/crammd5/CramMD5Util.java, * gnu/javax/crypto/sasl/crammd5/PasswordFile.java, * gnu/javax/crypto/sasl/plain/PasswordFile.java, * gnu/javax/crypto/sasl/plain/PlainAuthInfoProvider.java, * gnu/javax/crypto/sasl/plain/PlainClient.java, * gnu/javax/crypto/sasl/plain/PlainRegistry.java, * gnu/javax/crypto/sasl/plain/PlainServer.java, * gnu/javax/crypto/sasl/srp/CALG.java, * gnu/javax/crypto/sasl/srp/ClientStore.java, * gnu/javax/crypto/sasl/srp/IALG.java, * gnu/javax/crypto/sasl/srp/KDF.java, * gnu/javax/crypto/sasl/srp/PasswordFile.java, * gnu/javax/crypto/sasl/srp/SRP.java, * gnu/javax/crypto/sasl/srp/SRPAuthInfoProvider.java, * gnu/javax/crypto/sasl/srp/SRPClient.java, * gnu/javax/crypto/sasl/srp/SRPRegistry.java, * gnu/javax/crypto/sasl/srp/SRPServer.java, * gnu/javax/crypto/sasl/srp/SecurityContext.java, * gnu/javax/crypto/sasl/srp/ServerStore.java, * gnu/javax/crypto/sasl/srp/StoreEntry.java, * gnu/javax/imageio/IIOInputStream.java, * gnu/javax/imageio/bmp/BMPDecoder.java, * gnu/javax/imageio/bmp/BMPEncoder.java, * gnu/javax/imageio/bmp/BMPException.java, * gnu/javax/imageio/bmp/BMPFileHeader.java, * gnu/javax/imageio/bmp/BMPImageReader.java, * gnu/javax/imageio/bmp/BMPImageReaderSpi.java, * gnu/javax/imageio/bmp/BMPImageWriter.java, * gnu/javax/imageio/bmp/BMPImageWriterSpi.java, * gnu/javax/imageio/bmp/BMPInfoHeader.java, * gnu/javax/imageio/bmp/DecodeBF16.java, * gnu/javax/imageio/bmp/DecodeBF32.java, * gnu/javax/imageio/bmp/DecodeRGB1.java, * gnu/javax/imageio/bmp/DecodeRGB24.java, * gnu/javax/imageio/bmp/DecodeRGB4.java, * gnu/javax/imageio/bmp/DecodeRGB8.java, * gnu/javax/imageio/bmp/DecodeRLE4.java, * gnu/javax/imageio/bmp/DecodeRLE8.java, * gnu/javax/imageio/bmp/EncodeRGB1.java, * gnu/javax/imageio/bmp/EncodeRGB16.java, * gnu/javax/imageio/bmp/EncodeRGB24.java, * gnu/javax/imageio/bmp/EncodeRGB32.java, * gnu/javax/imageio/bmp/EncodeRGB4.java, * gnu/javax/imageio/bmp/EncodeRGB8.java, * gnu/javax/imageio/bmp/EncodeRLE4.java, * gnu/javax/imageio/bmp/EncodeRLE8.java, * gnu/javax/imageio/gif/GIFFile.java, * gnu/javax/imageio/gif/GIFImageReader.java, * gnu/javax/imageio/gif/GIFImageReaderSpi.java, * gnu/javax/imageio/jpeg/DCT.java, * gnu/javax/imageio/jpeg/JPEGComponent.java, * gnu/javax/imageio/jpeg/JPEGDecoder.java, * gnu/javax/imageio/jpeg/JPEGImageInputStream.java, * gnu/javax/imageio/jpeg/JPEGImageReader.java, * gnu/javax/imageio/jpeg/JPEGImageReaderSpi.java, * gnu/javax/imageio/jpeg/JPEGMarker.java, * gnu/javax/imageio/jpeg/ZigZag.java, * gnu/javax/imageio/png/PNGChunk.java, * gnu/javax/imageio/png/PNGData.java, * gnu/javax/imageio/png/PNGDecoder.java, * gnu/javax/imageio/png/PNGEncoder.java, * gnu/javax/imageio/png/PNGException.java, * gnu/javax/imageio/png/PNGFile.java, * gnu/javax/imageio/png/PNGFilter.java, * gnu/javax/imageio/png/PNGGamma.java, * gnu/javax/imageio/png/PNGHeader.java, * gnu/javax/imageio/png/PNGICCProfile.java, * gnu/javax/imageio/png/PNGImageReader.java, * gnu/javax/imageio/png/PNGPalette.java, * gnu/javax/imageio/png/PNGPhys.java, * gnu/javax/imageio/png/PNGTime.java, * gnu/javax/management/ListenerData.java, * gnu/javax/management/Server.java, * gnu/javax/management/Translator.java, * gnu/javax/naming/giop/ContextContinuation.java, * gnu/javax/naming/giop/CorbalocParser.java, * gnu/javax/naming/giop/GiopNamingEnumeration.java, * gnu/javax/naming/giop/GiopNamingServiceFactory.java, * gnu/javax/naming/giop/GiopNamingServiceURLContext.java, * gnu/javax/naming/giop/ListBindingsEnumeration.java, * gnu/javax/naming/giop/ListEnumeration.java, * gnu/javax/naming/ictxImpl/trans/GnuName.java, * gnu/javax/naming/jndi/url/corbaname/corbanameURLContextFactory.java, * gnu/javax/naming/jndi/url/rmi/ContextContinuation.java, * gnu/javax/naming/jndi/url/rmi/ListBindingsEnumeration.java, * gnu/javax/naming/jndi/url/rmi/ListEnumeration.java, * gnu/javax/naming/jndi/url/rmi/RmiContinuation.java, * gnu/javax/naming/jndi/url/rmi/RmiNamingEnumeration.java, * gnu/javax/naming/jndi/url/rmi/rmiURLContext.java, * gnu/javax/naming/jndi/url/rmi/rmiURLContextFactory.java, * gnu/javax/net/ssl/AbstractSessionContext.java, * gnu/javax/net/ssl/PreSharedKeyManager.java, * gnu/javax/net/ssl/PreSharedKeyManagerParameters.java, * gnu/javax/net/ssl/SSLCipherSuite.java, * gnu/javax/net/ssl/SSLRecordHandler.java, * gnu/javax/net/ssl/Session.java, * gnu/javax/net/ssl/SessionStoreException.java, * gnu/javax/net/ssl/provider/AbstractHandshake.java, * gnu/javax/net/ssl/provider/Alert.java, * gnu/javax/net/ssl/provider/AlertException.java, * gnu/javax/net/ssl/provider/Builder.java, * gnu/javax/net/ssl/provider/Certificate.java, * gnu/javax/net/ssl/provider/CertificateBuilder.java, * gnu/javax/net/ssl/provider/CertificateRequest.java, * gnu/javax/net/ssl/provider/CertificateRequestBuilder.java, * gnu/javax/net/ssl/provider/CertificateStatusRequest.java, * gnu/javax/net/ssl/provider/CertificateStatusType.java, * gnu/javax/net/ssl/provider/CertificateURL.java, * gnu/javax/net/ssl/provider/CertificateVerify.java, * gnu/javax/net/ssl/provider/CipherSuite.java, * gnu/javax/net/ssl/provider/CipherSuiteList.java, * gnu/javax/net/ssl/provider/ClientCertificateTypeList.java, * gnu/javax/net/ssl/provider/ClientDHE_PSKParameters.java, * gnu/javax/net/ssl/provider/ClientDiffieHellmanPublic.java, * gnu/javax/net/ssl/provider/ClientHandshake.java, * gnu/javax/net/ssl/provider/ClientHello.java, * gnu/javax/net/ssl/provider/ClientHelloBuilder.java, * gnu/javax/net/ssl/provider/ClientHelloV2.java, * gnu/javax/net/ssl/provider/ClientKeyExchangeBuilder.java, * gnu/javax/net/ssl/provider/ClientPSKParameters.java, * gnu/javax/net/ssl/provider/ClientRSA_PSKParameters.java, * gnu/javax/net/ssl/provider/CompressionMethod.java, * gnu/javax/net/ssl/provider/CompressionMethodList.java, * gnu/javax/net/ssl/provider/Constructed.java, * gnu/javax/net/ssl/provider/Debug.java, * gnu/javax/net/ssl/provider/DelegatedTask.java, * gnu/javax/net/ssl/provider/EmptyExchangeKeys.java, * gnu/javax/net/ssl/provider/EncryptedPreMasterSecret.java, * gnu/javax/net/ssl/provider/ExchangeKeys.java, * gnu/javax/net/ssl/provider/Extension.java, * gnu/javax/net/ssl/provider/ExtensionList.java, * gnu/javax/net/ssl/provider/Handshake.java, * gnu/javax/net/ssl/provider/InputSecurityParameters.java, * gnu/javax/net/ssl/provider/Jessie.java, * gnu/javax/net/ssl/provider/MaxFragmentLength.java, * gnu/javax/net/ssl/provider/OutputSecurityParameters.java, * gnu/javax/net/ssl/provider/PreSharedKeyManagerFactoryImpl.java, * gnu/javax/net/ssl/provider/Random.java, * gnu/javax/net/ssl/provider/SSLContextImpl.java, * gnu/javax/net/ssl/provider/SSLEngineImpl.java, * gnu/javax/net/ssl/provider/SSLRSASignatureImpl.java, * gnu/javax/net/ssl/provider/SSLServerSocketFactoryImpl.java, * gnu/javax/net/ssl/provider/SSLServerSocketImpl.java, * gnu/javax/net/ssl/provider/SSLSocketFactoryImpl.java, * gnu/javax/net/ssl/provider/SSLSocketImpl.java, * gnu/javax/net/ssl/provider/SSLv3HMacMD5Impl.java, * gnu/javax/net/ssl/provider/SSLv3HMacSHAImpl.java, * gnu/javax/net/ssl/provider/ServerDHE_PSKParameters.java, * gnu/javax/net/ssl/provider/ServerDHParams.java, * gnu/javax/net/ssl/provider/ServerHandshake.java, * gnu/javax/net/ssl/provider/ServerHello.java, * gnu/javax/net/ssl/provider/ServerHelloBuilder.java, * gnu/javax/net/ssl/provider/ServerHelloDone.java, * gnu/javax/net/ssl/provider/ServerKeyExchangeBuilder.java, * gnu/javax/net/ssl/provider/ServerNameList.java, * gnu/javax/net/ssl/provider/ServerPSKParameters.java, * gnu/javax/net/ssl/provider/ServerRSA_PSKParameters.java, * gnu/javax/net/ssl/provider/SessionImpl.java, * gnu/javax/net/ssl/provider/Signature.java, * gnu/javax/net/ssl/provider/SignatureAlgorithm.java, * gnu/javax/net/ssl/provider/SimpleSessionContext.java, * gnu/javax/net/ssl/provider/TruncatedHMAC.java, * gnu/javax/net/ssl/provider/TrustedAuthorities.java, * gnu/javax/net/ssl/provider/UnresolvedExtensionValue.java, * gnu/javax/net/ssl/provider/Util.java, * gnu/javax/net/ssl/provider/X500PrincipalList.java, * gnu/javax/net/ssl/provider/X509KeyManagerFactory.java, * gnu/javax/net/ssl/provider/X509TrustManagerFactory.java, * gnu/javax/print/ipp/IppRequest.java, * gnu/javax/rmi/CORBA/CorbaInput.java, * gnu/javax/rmi/CORBA/CorbaOutput.java, * gnu/javax/rmi/CORBA/DefaultWriteObjectTester.java, * gnu/javax/rmi/CORBA/DelegateFactory.java, * gnu/javax/rmi/CORBA/GetDelegateInstanceException.java, * gnu/javax/rmi/CORBA/PortableRemoteObjectDelegateImpl.java, * gnu/javax/rmi/CORBA/RmiUtilities.java, * gnu/javax/rmi/CORBA/StubDelegateImpl.java, * gnu/javax/rmi/CORBA/TieTargetRecord.java, * gnu/javax/rmi/CORBA/UtilDelegateImpl.java, * gnu/javax/rmi/CORBA/ValueHandlerDelegateImpl.java, * gnu/javax/security/auth/callback/AWTCallbackHandler.java, * gnu/javax/security/auth/callback/AbstractCallbackHandler.java, * gnu/javax/security/auth/callback/CertificateCallback.java, * gnu/javax/security/auth/callback/ConsoleCallbackHandler.java, * gnu/javax/security/auth/callback/DefaultCallbackHandler.java, * gnu/javax/security/auth/callback/SwingCallbackHandler.java, * gnu/javax/security/auth/login/ConfigFileParser.java, * gnu/javax/security/auth/login/ConfigFileTokenizer.java, * gnu/javax/security/auth/login/GnuConfiguration.java, * gnu/javax/sound/AudioSecurityManager.java, * gnu/javax/sound/midi/alsa/AlsaInputPortDevice.java, * gnu/javax/sound/midi/alsa/AlsaMidiDeviceProvider.java, * gnu/javax/sound/midi/alsa/AlsaMidiSequencerDevice.java, * gnu/javax/sound/midi/alsa/AlsaOutputPortDevice.java, * gnu/javax/sound/midi/alsa/AlsaPortDevice.java, * gnu/javax/sound/midi/dssi/DSSIMidiDeviceProvider.java, * gnu/javax/sound/midi/dssi/DSSISynthesizer.java, * gnu/javax/sound/midi/file/ExtendedMidiFileFormat.java, * gnu/javax/sound/midi/file/MidiDataInputStream.java, * gnu/javax/sound/midi/file/MidiDataOutputStream.java, * gnu/javax/sound/midi/file/MidiFileReader.java, * gnu/javax/sound/midi/file/MidiFileWriter.java, * gnu/javax/sound/sampled/AU/AUReader.java, * gnu/javax/sound/sampled/WAV/WAVReader.java, * gnu/javax/sound/sampled/gstreamer/GStreamerMixer.java, * gnu/javax/sound/sampled/gstreamer/GStreamerMixerProvider.java, * gnu/javax/sound/sampled/gstreamer/io/GstAudioFileReader.java, * gnu/javax/sound/sampled/gstreamer/io/GstAudioFileReaderNativePeer.java, * gnu/javax/sound/sampled/gstreamer/io/GstInputStream.java, * gnu/javax/sound/sampled/gstreamer/lines/GstDataLine.java, * gnu/javax/sound/sampled/gstreamer/lines/GstNativeDataLine.java, * gnu/javax/sound/sampled/gstreamer/lines/GstPipeline.java, * gnu/javax/sound/sampled/gstreamer/lines/GstSourceDataLine.java, * gnu/javax/swing/plaf/gnu/GNULookAndFeel.java, * gnu/javax/swing/text/html/CharacterAttributeTranslator.java, * gnu/javax/swing/text/html/CombinedAttributes.java, * gnu/javax/swing/text/html/ImageViewIconFactory.java, * gnu/javax/swing/text/html/css/BorderStyle.java, * gnu/javax/swing/text/html/css/CSSParser.java, * gnu/javax/swing/text/html/css/CSSScanner.java, * gnu/javax/swing/text/html/css/Selector.java, * gnu/javax/swing/text/html/parser/GnuParserDelegator.java, * gnu/javax/swing/text/html/parser/HTML_401F.java, * gnu/javax/swing/text/html/parser/SmallHtmlAttributeSet.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/support/Parser.java, * gnu/javax/swing/text/html/parser/support/low/ReaderTokenizer.java, * gnu/javax/swing/text/html/parser/support/textPreProcessor.java, * gnu/javax/swing/tree/GnuPath.java, * gnu/test/Fail.java, * gnu/test/Pass.java, * gnu/test/Test.java, * gnu/test/Unsupported.java, * gnu/xml/aelfred2/JAXPFactory.java, * gnu/xml/aelfred2/SAXDriver.java, * gnu/xml/aelfred2/XmlParser.java, * gnu/xml/aelfred2/XmlReader.java, * gnu/xml/dom/Consumer.java, * gnu/xml/dom/DTDAttributeTypeInfo.java, * gnu/xml/dom/DTDElementTypeInfo.java, * gnu/xml/dom/DomAttr.java, * gnu/xml/dom/DomCDATASection.java, * gnu/xml/dom/DomCharacterData.java, * gnu/xml/dom/DomComment.java, * gnu/xml/dom/DomDOMException.java, * gnu/xml/dom/DomDoctype.java, * gnu/xml/dom/DomDocument.java, * gnu/xml/dom/DomDocumentBuilder.java, * gnu/xml/dom/DomDocumentBuilderFactory.java, * gnu/xml/dom/DomDocumentConfiguration.java, * gnu/xml/dom/DomDocumentFragment.java, * gnu/xml/dom/DomElement.java, * gnu/xml/dom/DomEntity.java, * gnu/xml/dom/DomEntityReference.java, * gnu/xml/dom/DomEvent.java, * gnu/xml/dom/DomExtern.java, * gnu/xml/dom/DomImpl.java, * gnu/xml/dom/DomIterator.java, * gnu/xml/dom/DomNSResolverContext.java, * gnu/xml/dom/DomNamedNodeMap.java, * gnu/xml/dom/DomNode.java, * gnu/xml/dom/DomNodeIterator.java, * gnu/xml/dom/DomNotation.java, * gnu/xml/dom/DomNsNode.java, * gnu/xml/dom/DomProcessingInstruction.java, * gnu/xml/dom/DomText.java, * gnu/xml/dom/DomXPathExpression.java, * gnu/xml/dom/DomXPathNSResolver.java, * gnu/xml/dom/DomXPathResult.java, * gnu/xml/dom/ImplementationList.java, * gnu/xml/dom/ImplementationSource.java, * gnu/xml/dom/JAXPFactory.java, * gnu/xml/dom/html2/DomHTMLAnchorElement.java, * gnu/xml/dom/html2/DomHTMLAppletElement.java, * gnu/xml/dom/html2/DomHTMLAreaElement.java, * gnu/xml/dom/html2/DomHTMLBRElement.java, * gnu/xml/dom/html2/DomHTMLBaseElement.java, * gnu/xml/dom/html2/DomHTMLBaseFontElement.java, * gnu/xml/dom/html2/DomHTMLBodyElement.java, * gnu/xml/dom/html2/DomHTMLButtonElement.java, * gnu/xml/dom/html2/DomHTMLCollection.java, * gnu/xml/dom/html2/DomHTMLDListElement.java, * gnu/xml/dom/html2/DomHTMLDirectoryElement.java, * gnu/xml/dom/html2/DomHTMLDivElement.java, * gnu/xml/dom/html2/DomHTMLDocument.java, * gnu/xml/dom/html2/DomHTMLElement.java, * gnu/xml/dom/html2/DomHTMLEmbedElement.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/DomHTMLHRElement.java, * gnu/xml/dom/html2/DomHTMLHeadElement.java, * gnu/xml/dom/html2/DomHTMLHeadingElement.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/DomHTMLLIElement.java, * gnu/xml/dom/html2/DomHTMLLabelElement.java, * gnu/xml/dom/html2/DomHTMLLegendElement.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/DomHTMLOListElement.java, * gnu/xml/dom/html2/DomHTMLObjectElement.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/dom/ls/DomLSException.java, * gnu/xml/dom/ls/DomLSInput.java, * gnu/xml/dom/ls/DomLSOutput.java, * gnu/xml/dom/ls/DomLSParser.java, * gnu/xml/dom/ls/DomLSSerializer.java, * gnu/xml/dom/ls/FilteredSAXEventSink.java, * gnu/xml/dom/ls/ReaderInputStream.java, * gnu/xml/dom/ls/SAXEventSink.java, * gnu/xml/dom/ls/WriterOutputStream.java, * gnu/xml/libxmlj/dom/GnomeAttr.java, * gnu/xml/libxmlj/dom/GnomeCDATASection.java, * gnu/xml/libxmlj/dom/GnomeCharacterData.java, * gnu/xml/libxmlj/dom/GnomeComment.java, * gnu/xml/libxmlj/dom/GnomeDOMException.java, * gnu/xml/libxmlj/dom/GnomeDOMStringList.java, * gnu/xml/libxmlj/dom/GnomeDocument.java, * gnu/xml/libxmlj/dom/GnomeDocumentBuilder.java, * gnu/xml/libxmlj/dom/GnomeDocumentBuilderFactory.java, * gnu/xml/libxmlj/dom/GnomeDocumentFragment.java, * gnu/xml/libxmlj/dom/GnomeDocumentType.java, * gnu/xml/libxmlj/dom/GnomeElement.java, * gnu/xml/libxmlj/dom/GnomeEntity.java, * gnu/xml/libxmlj/dom/GnomeEntityReference.java, * gnu/xml/libxmlj/dom/GnomeNamedNodeMap.java, * gnu/xml/libxmlj/dom/GnomeNode.java, * gnu/xml/libxmlj/dom/GnomeNodeList.java, * gnu/xml/libxmlj/dom/GnomeNotation.java, * gnu/xml/libxmlj/dom/GnomeProcessingInstruction.java, * gnu/xml/libxmlj/dom/GnomeText.java, * gnu/xml/libxmlj/dom/GnomeTypeInfo.java, * gnu/xml/libxmlj/dom/GnomeXPathExpression.java, * gnu/xml/libxmlj/dom/GnomeXPathNSResolver.java, * gnu/xml/libxmlj/dom/GnomeXPathNodeList.java, * gnu/xml/libxmlj/dom/GnomeXPathResult.java, * gnu/xml/libxmlj/sax/GnomeLocator.java, * gnu/xml/libxmlj/sax/GnomeSAXParser.java, * gnu/xml/libxmlj/sax/GnomeSAXParserFactory.java, * gnu/xml/libxmlj/sax/GnomeXMLReader.java, * gnu/xml/libxmlj/sax/Namespaces.java, * gnu/xml/libxmlj/sax/StringArrayAttributes.java, * gnu/xml/libxmlj/sax/XMLName.java, * gnu/xml/libxmlj/transform/ErrorListenerErrorHandler.java, * gnu/xml/libxmlj/transform/GnomeTransformer.java, * gnu/xml/libxmlj/transform/GnomeTransformerFactory.java, * gnu/xml/libxmlj/transform/URIResolverEntityResolver.java, * gnu/xml/libxmlj/util/EmptyNodeList.java, * gnu/xml/libxmlj/util/NamedInputStream.java, * gnu/xml/libxmlj/util/StandaloneDocumentType.java, * gnu/xml/libxmlj/util/StandaloneLocator.java, * gnu/xml/libxmlj/util/XMLJ.java, * gnu/xml/pipeline/CallFilter.java, * gnu/xml/pipeline/DomConsumer.java, * gnu/xml/pipeline/EventConsumer.java, * gnu/xml/pipeline/EventFilter.java, * gnu/xml/pipeline/LinkFilter.java, * gnu/xml/pipeline/NSFilter.java, * gnu/xml/pipeline/PipelineFactory.java, * gnu/xml/pipeline/TeeConsumer.java, * gnu/xml/pipeline/TextConsumer.java, * gnu/xml/pipeline/ValidationConsumer.java, * gnu/xml/pipeline/WellFormednessFilter.java, * gnu/xml/pipeline/XIncludeFilter.java, * gnu/xml/pipeline/XsltFilter.java, * gnu/xml/stream/AttributeImpl.java, * gnu/xml/stream/BufferedReader.java, * gnu/xml/stream/CRLFReader.java, * gnu/xml/stream/CharactersImpl.java, * gnu/xml/stream/CommentImpl.java, * gnu/xml/stream/DTDImpl.java, * gnu/xml/stream/EndDocumentImpl.java, * gnu/xml/stream/EndElementImpl.java, * gnu/xml/stream/EntityDeclarationImpl.java, * gnu/xml/stream/EntityReferenceImpl.java, * gnu/xml/stream/FilteredEventReader.java, * gnu/xml/stream/FilteredStreamReader.java, * gnu/xml/stream/NamespaceImpl.java, * gnu/xml/stream/NotationDeclarationImpl.java, * gnu/xml/stream/ProcessingInstructionImpl.java, * gnu/xml/stream/SAXParser.java, * gnu/xml/stream/SAXParserFactory.java, * gnu/xml/stream/StartDocumentImpl.java, * gnu/xml/stream/StartElementImpl.java, * gnu/xml/stream/UnicodeReader.java, * gnu/xml/stream/XIncludeFilter.java, * gnu/xml/stream/XMLEventAllocatorImpl.java, * gnu/xml/stream/XMLEventFactoryImpl.java, * gnu/xml/stream/XMLEventImpl.java, * gnu/xml/stream/XMLEventReaderImpl.java, * gnu/xml/stream/XMLEventWriterImpl.java, * gnu/xml/stream/XMLInputFactoryImpl.java, * gnu/xml/stream/XMLOutputFactoryImpl.java, * gnu/xml/stream/XMLParser.java, * gnu/xml/stream/XMLStreamWriterImpl.java, * gnu/xml/transform/AbstractNumberNode.java, * gnu/xml/transform/ApplyImportsNode.java, * gnu/xml/transform/ApplyTemplatesNode.java, * gnu/xml/transform/AttributeNode.java, * gnu/xml/transform/AttributeSet.java, * gnu/xml/transform/Bindings.java, * gnu/xml/transform/CallTemplateNode.java, * gnu/xml/transform/ChooseNode.java, * gnu/xml/transform/CommentNode.java, * gnu/xml/transform/CopyNode.java, * gnu/xml/transform/CopyOfNode.java, * gnu/xml/transform/CurrentFunction.java, * gnu/xml/transform/DOMSourceLocator.java, * gnu/xml/transform/DocumentFunction.java, * gnu/xml/transform/ElementAvailableFunction.java, * gnu/xml/transform/ElementNode.java, * gnu/xml/transform/ErrorListenerErrorHandler.java, * gnu/xml/transform/ForEachNode.java, * gnu/xml/transform/FormatNumberFunction.java, * gnu/xml/transform/FunctionAvailableFunction.java, * gnu/xml/transform/GenerateIdFunction.java, * gnu/xml/transform/IfNode.java, * gnu/xml/transform/Key.java, * gnu/xml/transform/KeyFunction.java, * gnu/xml/transform/LiteralNode.java, * gnu/xml/transform/MessageNode.java, * gnu/xml/transform/NamespaceProxy.java, * gnu/xml/transform/NodeNumberNode.java, * gnu/xml/transform/NumberNode.java, * gnu/xml/transform/OtherwiseNode.java, * gnu/xml/transform/ParameterNode.java, * gnu/xml/transform/ProcessingInstructionNode.java, * gnu/xml/transform/SAXSerializer.java, * gnu/xml/transform/SAXTemplatesHandler.java, * gnu/xml/transform/SAXTransformerHandler.java, * gnu/xml/transform/SortKey.java, * gnu/xml/transform/StreamSerializer.java, * gnu/xml/transform/StrippingInstruction.java, * gnu/xml/transform/Stylesheet.java, * gnu/xml/transform/SystemPropertyFunction.java, * gnu/xml/transform/Template.java, * gnu/xml/transform/TemplateNode.java, * gnu/xml/transform/TemplatesImpl.java, * gnu/xml/transform/TextNode.java, * gnu/xml/transform/TransformerFactoryImpl.java, * gnu/xml/transform/TransformerImpl.java, * gnu/xml/transform/TransformerOutputProperties.java, * gnu/xml/transform/URIResolverEntityResolver.java, * gnu/xml/transform/UnparsedEntityUriFunction.java, * gnu/xml/transform/ValueOfNode.java, * gnu/xml/transform/WhenNode.java, * gnu/xml/transform/WithParam.java, * gnu/xml/transform/XSLComparator.java, * gnu/xml/transform/XSLURIResolver.java, * gnu/xml/util/DoParse.java, * gnu/xml/util/DomParser.java, * gnu/xml/util/Resolver.java, * gnu/xml/util/SAXNullTransformerFactory.java, * gnu/xml/util/XCat.java, * gnu/xml/util/XHTMLWriter.java, * gnu/xml/util/XMLWriter.java, * gnu/xml/validation/datatype/Annotation.java, * gnu/xml/validation/datatype/AnySimpleType.java, * gnu/xml/validation/datatype/AnyType.java, * gnu/xml/validation/datatype/AnyURIType.java, * gnu/xml/validation/datatype/AtomicSimpleType.java, * gnu/xml/validation/datatype/Base64BinaryType.java, * gnu/xml/validation/datatype/BooleanType.java, * gnu/xml/validation/datatype/ByteType.java, * gnu/xml/validation/datatype/DateTimeType.java, * gnu/xml/validation/datatype/DateType.java, * gnu/xml/validation/datatype/DecimalType.java, * gnu/xml/validation/datatype/DoubleType.java, * gnu/xml/validation/datatype/DurationType.java, * gnu/xml/validation/datatype/EntitiesType.java, * gnu/xml/validation/datatype/EntityType.java, * gnu/xml/validation/datatype/EnumerationFacet.java, * gnu/xml/validation/datatype/Facet.java, * gnu/xml/validation/datatype/FloatType.java, * gnu/xml/validation/datatype/FractionDigitsFacet.java, * gnu/xml/validation/datatype/GDayType.java, * gnu/xml/validation/datatype/GMonthDayType.java, * gnu/xml/validation/datatype/GMonthType.java, * gnu/xml/validation/datatype/GYearMonthType.java, * gnu/xml/validation/datatype/GYearType.java, * gnu/xml/validation/datatype/HexBinaryType.java, * gnu/xml/validation/datatype/IDRefType.java, * gnu/xml/validation/datatype/IDRefsType.java, * gnu/xml/validation/datatype/IDType.java, * gnu/xml/validation/datatype/IntType.java, * gnu/xml/validation/datatype/IntegerType.java, * gnu/xml/validation/datatype/LanguageType.java, * gnu/xml/validation/datatype/LengthFacet.java, * gnu/xml/validation/datatype/ListSimpleType.java, * gnu/xml/validation/datatype/LongType.java, * gnu/xml/validation/datatype/MaxExclusiveFacet.java, * gnu/xml/validation/datatype/MaxInclusiveFacet.java, * gnu/xml/validation/datatype/MaxLengthFacet.java, * gnu/xml/validation/datatype/MinExclusiveFacet.java, * gnu/xml/validation/datatype/MinInclusiveFacet.java, * gnu/xml/validation/datatype/MinLengthFacet.java, * gnu/xml/validation/datatype/NCNameType.java, * gnu/xml/validation/datatype/NMTokenType.java, * gnu/xml/validation/datatype/NMTokensType.java, * gnu/xml/validation/datatype/NameType.java, * gnu/xml/validation/datatype/NegativeIntegerType.java, * gnu/xml/validation/datatype/NonNegativeIntegerType.java, * gnu/xml/validation/datatype/NonPositiveIntegerType.java, * gnu/xml/validation/datatype/NormalizedStringType.java, * gnu/xml/validation/datatype/NotationType.java, * gnu/xml/validation/datatype/PatternFacet.java, * gnu/xml/validation/datatype/PositiveIntegerType.java, * gnu/xml/validation/datatype/QNameType.java, * gnu/xml/validation/datatype/ShortType.java, * gnu/xml/validation/datatype/SimpleType.java, * gnu/xml/validation/datatype/StringType.java, * gnu/xml/validation/datatype/TimeType.java, * gnu/xml/validation/datatype/TokenType.java, * gnu/xml/validation/datatype/TotalDigitsFacet.java, * gnu/xml/validation/datatype/Type.java, * gnu/xml/validation/datatype/TypeBuilder.java, * gnu/xml/validation/datatype/TypeLibrary.java, * gnu/xml/validation/datatype/TypeLibraryFactory.java, * gnu/xml/validation/datatype/UnionSimpleType.java, * gnu/xml/validation/datatype/UnsignedByteType.java, * gnu/xml/validation/datatype/UnsignedIntType.java, * gnu/xml/validation/datatype/UnsignedLongType.java, * gnu/xml/validation/datatype/UnsignedShortType.java, * gnu/xml/validation/datatype/WhiteSpaceFacet.java, * gnu/xml/validation/relaxng/AnyNameNameClass.java, * gnu/xml/validation/relaxng/AttributePattern.java, * gnu/xml/validation/relaxng/ChoiceNameClass.java, * gnu/xml/validation/relaxng/ChoicePattern.java, * gnu/xml/validation/relaxng/DataPattern.java, * gnu/xml/validation/relaxng/Define.java, * gnu/xml/validation/relaxng/ElementPattern.java, * gnu/xml/validation/relaxng/EmptyPattern.java, * gnu/xml/validation/relaxng/FullSyntaxBuilder.java, * gnu/xml/validation/relaxng/Grammar.java, * gnu/xml/validation/relaxng/GrammarException.java, * gnu/xml/validation/relaxng/GrammarValidator.java, * gnu/xml/validation/relaxng/GroupPattern.java, * gnu/xml/validation/relaxng/InterleavePattern.java, * gnu/xml/validation/relaxng/ListPattern.java, * gnu/xml/validation/relaxng/NSNameNameClass.java, * gnu/xml/validation/relaxng/NameClass.java, * gnu/xml/validation/relaxng/NameNameClass.java, * gnu/xml/validation/relaxng/NotAllowedPattern.java, * gnu/xml/validation/relaxng/OneOrMorePattern.java, * gnu/xml/validation/relaxng/Param.java, * gnu/xml/validation/relaxng/Pattern.java, * gnu/xml/validation/relaxng/RELAXNGSchemaFactory.java, * gnu/xml/validation/relaxng/RefPattern.java, * gnu/xml/validation/relaxng/TextPattern.java, * gnu/xml/validation/relaxng/ValuePattern.java, * gnu/xml/validation/xmlschema/AnyAttribute.java, * gnu/xml/validation/xmlschema/AttributeDeclaration.java, * gnu/xml/validation/xmlschema/AttributeUse.java, * gnu/xml/validation/xmlschema/ComplexType.java, * gnu/xml/validation/xmlschema/ElementDeclaration.java, * gnu/xml/validation/xmlschema/Particle.java, * gnu/xml/validation/xmlschema/ValidationException.java, * gnu/xml/validation/xmlschema/XMLSchema.java, * gnu/xml/validation/xmlschema/XMLSchemaAttributeTypeInfo.java, * gnu/xml/validation/xmlschema/XMLSchemaBuilder.java, * gnu/xml/validation/xmlschema/XMLSchemaElementTypeInfo.java, * gnu/xml/validation/xmlschema/XMLSchemaSchemaFactory.java, * gnu/xml/validation/xmlschema/XMLSchemaTypeInfo.java, * gnu/xml/validation/xmlschema/XMLSchemaTypeInfoProvider.java, * gnu/xml/validation/xmlschema/XMLSchemaValidator.java, * gnu/xml/validation/xmlschema/XMLSchemaValidatorHandler.java, * gnu/xml/xpath/AndExpr.java, * gnu/xml/xpath/ArithmeticExpr.java, * gnu/xml/xpath/BooleanFunction.java, * gnu/xml/xpath/CeilingFunction.java, * gnu/xml/xpath/ConcatFunction.java, * gnu/xml/xpath/Constant.java, * gnu/xml/xpath/ContainsFunction.java, * gnu/xml/xpath/CountFunction.java, * gnu/xml/xpath/DocumentOrderComparator.java, * gnu/xml/xpath/EqualityExpr.java, * gnu/xml/xpath/Expr.java, * gnu/xml/xpath/FalseFunction.java, * gnu/xml/xpath/FloorFunction.java, * gnu/xml/xpath/Function.java, * gnu/xml/xpath/FunctionCall.java, * gnu/xml/xpath/IdFunction.java, * gnu/xml/xpath/LangFunction.java, * gnu/xml/xpath/LastFunction.java, * gnu/xml/xpath/LocalNameFunction.java, * gnu/xml/xpath/NameFunction.java, * gnu/xml/xpath/NameTest.java, * gnu/xml/xpath/NamespaceTest.java, * gnu/xml/xpath/NamespaceUriFunction.java, * gnu/xml/xpath/NegativeExpr.java, * gnu/xml/xpath/NodeTypeTest.java, * gnu/xml/xpath/NormalizeSpaceFunction.java, * gnu/xml/xpath/NotFunction.java, * gnu/xml/xpath/NumberFunction.java, * gnu/xml/xpath/OrExpr.java, * gnu/xml/xpath/ParenthesizedExpr.java, * gnu/xml/xpath/Path.java, * gnu/xml/xpath/Pattern.java, * gnu/xml/xpath/PositionFunction.java, * gnu/xml/xpath/Predicate.java, * gnu/xml/xpath/RelationalExpr.java, * gnu/xml/xpath/Root.java, * gnu/xml/xpath/RoundFunction.java, * gnu/xml/xpath/Selector.java, * gnu/xml/xpath/StartsWithFunction.java, * gnu/xml/xpath/Steps.java, * gnu/xml/xpath/StringFunction.java, * gnu/xml/xpath/StringLengthFunction.java, * gnu/xml/xpath/SubstringAfterFunction.java, * gnu/xml/xpath/SubstringBeforeFunction.java, * gnu/xml/xpath/SubstringFunction.java, * gnu/xml/xpath/SumFunction.java, * gnu/xml/xpath/Test.java, * gnu/xml/xpath/TranslateFunction.java, * gnu/xml/xpath/TrueFunction.java, * gnu/xml/xpath/UnionExpr.java, * gnu/xml/xpath/VariableReference.java, * gnu/xml/xpath/XPathFactoryImpl.java, * gnu/xml/xpath/XPathImpl.java, * gnu/xml/xpath/XPathParser.java, * gnu/xml/xpath/XPathTokenizer.java, * java/applet/Applet.java, * java/awt/AWTEvent.java, * java/awt/AWTEventMulticaster.java, * java/awt/AWTKeyStroke.java, * java/awt/AlphaComposite.java, * java/awt/BasicStroke.java, * java/awt/BorderLayout.java, * java/awt/BufferCapabilities.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/ColorPaintContext.java, * java/awt/Component.java, * java/awt/Container.java, * java/awt/ContainerOrderFocusTraversalPolicy.java, * java/awt/Cursor.java, * java/awt/DefaultFocusTraversalPolicy.java, * java/awt/DefaultKeyboardFocusManager.java, * java/awt/Desktop.java, * java/awt/Dialog.java, * java/awt/DisplayMode.java, * java/awt/Event.java, * java/awt/EventDispatchThread.java, * java/awt/EventQueue.java, * java/awt/FileDialog.java, * java/awt/FlowLayout.java, * java/awt/FocusTraversalPolicy.java, * java/awt/Font.java, * java/awt/FontMetrics.java, * java/awt/Frame.java, * java/awt/GradientPaint.java, * java/awt/Graphics.java, * java/awt/Graphics2D.java, * java/awt/GraphicsConfiguration.java, * java/awt/GraphicsDevice.java, * java/awt/GridBagConstraints.java, * java/awt/GridBagLayout.java, * java/awt/GridLayout.java, * java/awt/Image.java, * java/awt/Insets.java, * java/awt/JobAttributes.java, * java/awt/KeyboardFocusManager.java, * java/awt/Label.java, * java/awt/LightweightDispatcher.java, * java/awt/List.java, * java/awt/MediaTracker.java, * java/awt/Menu.java, * java/awt/MenuBar.java, * java/awt/MenuComponent.java, * java/awt/MenuItem.java, * java/awt/MenuShortcut.java, * java/awt/MouseInfo.java, * java/awt/PageAttributes.java, * java/awt/Point.java, * java/awt/PointerInfo.java, * java/awt/Polygon.java, * java/awt/PopupMenu.java, * java/awt/Rectangle.java, * java/awt/RenderingHints.java, * java/awt/Robot.java, * java/awt/ScrollPane.java, * java/awt/ScrollPaneAdjustable.java, * java/awt/Scrollbar.java, * java/awt/Shape.java, * java/awt/SystemColor.java, * java/awt/TextArea.java, * java/awt/TextComponent.java, * java/awt/TextField.java, * java/awt/TexturePaint.java, * java/awt/Toolkit.java, * java/awt/Window.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/datatransfer/Clipboard.java, * java/awt/datatransfer/ClipboardOwner.java, * java/awt/datatransfer/DataFlavor.java, * java/awt/datatransfer/FlavorEvent.java, * java/awt/datatransfer/FlavorListener.java, * java/awt/datatransfer/MimeType.java, * java/awt/datatransfer/StringSelection.java, * java/awt/datatransfer/SystemFlavorMap.java, * java/awt/datatransfer/Transferable.java, * java/awt/datatransfer/UnsupportedFlavorException.java, * java/awt/dnd/Autoscroll.java, * java/awt/dnd/DnDEventMulticaster.java, * java/awt/dnd/DragGestureEvent.java, * java/awt/dnd/DragGestureRecognizer.java, * java/awt/dnd/DragSource.java, * java/awt/dnd/DragSourceContext.java, * java/awt/dnd/DragSourceDropEvent.java, * java/awt/dnd/DragSourceEvent.java, * java/awt/dnd/DropTarget.java, * java/awt/dnd/DropTargetContext.java, * java/awt/dnd/DropTargetDragEvent.java, * java/awt/dnd/DropTargetDropEvent.java, * java/awt/dnd/DropTargetEvent.java, * java/awt/dnd/MouseDragGestureRecognizer.java, * java/awt/dnd/peer/DropTargetContextPeer.java, * java/awt/event/AWTEventListener.java, * java/awt/event/ActionEvent.java, * java/awt/event/ComponentAdapter.java, * java/awt/event/ComponentEvent.java, * java/awt/event/InputEvent.java, * java/awt/event/InputMethodEvent.java, * java/awt/event/InvocationEvent.java, * java/awt/event/KeyEvent.java, * java/awt/event/MouseEvent.java, * java/awt/event/MouseListener.java, * java/awt/event/MouseWheelEvent.java, * java/awt/event/WindowEvent.java, * java/awt/font/FontRenderContext.java, * java/awt/font/GlyphJustificationInfo.java, * java/awt/font/GlyphMetrics.java, * java/awt/font/GlyphVector.java, * java/awt/font/GraphicAttribute.java, * java/awt/font/ImageGraphicAttribute.java, * java/awt/font/LineBreakMeasurer.java, * java/awt/font/LineMetrics.java, * java/awt/font/MultipleMaster.java, * java/awt/font/OpenType.java, * java/awt/font/ShapeGraphicAttribute.java, * java/awt/font/TextAttribute.java, * java/awt/font/TextHitInfo.java, * java/awt/font/TextLayout.java, * java/awt/font/TextMeasurer.java, * java/awt/font/TransformAttribute.java, * java/awt/geom/AffineTransform.java, * java/awt/geom/Arc2D.java, * java/awt/geom/Area.java, * java/awt/geom/CubicCurve2D.java, * java/awt/geom/Ellipse2D.java, * java/awt/geom/FlatteningPathIterator.java, * java/awt/geom/GeneralPath.java, * java/awt/geom/Line2D.java, * java/awt/geom/QuadCurve2D.java, * java/awt/geom/RectangularShape.java, * java/awt/geom/RoundRectangle2D.java, * java/awt/im/InputContext.java, * java/awt/im/spi/InputMethodDescriptor.java, * java/awt/image/AffineTransformOp.java, * java/awt/image/AreaAveragingScaleFilter.java, * java/awt/image/BandCombineOp.java, * java/awt/image/BandedSampleModel.java, * java/awt/image/BufferedImage.java, * java/awt/image/BufferedImageFilter.java, * java/awt/image/BufferedImageOp.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/CropImageFilter.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/FilteredImageSource.java, * java/awt/image/ImageConsumer.java, * java/awt/image/ImageFilter.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/MemoryImageSource.java, * java/awt/image/MultiPixelPackedSampleModel.java, * java/awt/image/PackedColorModel.java, * java/awt/image/PixelGrabber.java, * java/awt/image/PixelInterleavedSampleModel.java, * java/awt/image/RGBImageFilter.java, * java/awt/image/Raster.java, * java/awt/image/RasterOp.java, * java/awt/image/RenderedImage.java, * java/awt/image/ReplicateScaleFilter.java, * java/awt/image/RescaleOp.java, * java/awt/image/SampleModel.java, * java/awt/image/ShortLookupTable.java, * java/awt/image/SinglePixelPackedSampleModel.java, * java/awt/image/TileObserver.java, * java/awt/image/WritableRaster.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/DesktopPeer.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/MouseInfoPeer.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/TextComponentPeer.java, * java/awt/peer/TextFieldPeer.java, * java/awt/peer/WindowPeer.java, * java/awt/print/Book.java, * java/awt/print/PageFormat.java, * java/awt/print/Pageable.java, * java/awt/print/Paper.java, * java/awt/print/PrinterGraphics.java, * java/awt/print/PrinterIOException.java, * java/awt/print/PrinterJob.java, * java/beans/AppletInitializer.java, * java/beans/BeanDescriptor.java, * java/beans/BeanInfo.java, * java/beans/Beans.java, * java/beans/Customizer.java, * java/beans/DefaultPersistenceDelegate.java, * java/beans/DesignMode.java, * java/beans/Encoder.java, * java/beans/EventHandler.java, * java/beans/EventSetDescriptor.java, * java/beans/Expression.java, * java/beans/FeatureDescriptor.java, * java/beans/IndexedPropertyChangeEvent.java, * java/beans/IndexedPropertyDescriptor.java, * java/beans/Introspector.java, * java/beans/MethodDescriptor.java, * java/beans/ParameterDescriptor.java, * java/beans/PersistenceDelegate.java, * java/beans/PropertyChangeSupport.java, * java/beans/PropertyDescriptor.java, * java/beans/PropertyEditor.java, * java/beans/PropertyEditorManager.java, * java/beans/SimpleBeanInfo.java, * java/beans/Statement.java, * java/beans/VetoableChangeSupport.java, * java/beans/Visibility.java, * java/beans/XMLDecoder.java, * java/beans/XMLEncoder.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/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/DataInput.java, * java/io/DataInputStream.java, * java/io/DataOutput.java, * java/io/DataOutputStream.java, * java/io/DeleteFileHelper.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/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/InputStream.java, * java/io/InputStreamReader.java, * java/io/InvalidClassException.java, * java/io/LineNumberInputStream.java, * java/io/LineNumberReader.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/ObjectStreamField.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/StreamTokenizer.java, * java/io/StringBufferInputStream.java, * java/io/StringReader.java, * java/io/StringWriter.java, * java/io/UnsupportedEncodingException.java, * java/io/Writer.java, * java/lang/AbstractStringBuffer.java, * java/lang/Boolean.java, * java/lang/Character.java, * java/lang/Class.java, * java/lang/ClassLoader.java, * java/lang/Comparable.java, * java/lang/Double.java, * java/lang/Enum.java, * java/lang/EnumConstantNotPresentException.java, * java/lang/Float.java, * java/lang/IllegalArgumentException.java, * java/lang/IllegalStateException.java, * java/lang/IndexOutOfBoundsException.java, * java/lang/Integer.java, * java/lang/Long.java, * java/lang/Math.java, * java/lang/NoClassDefFoundError.java, * java/lang/Object.java, * java/lang/Package.java, * java/lang/ProcessBuilder.java, * java/lang/Runtime.java, * java/lang/SecurityException.java, * java/lang/SecurityManager.java, * java/lang/StackTraceElement.java, * java/lang/StrictMath.java, * java/lang/String.java, * java/lang/StringBuffer.java, * java/lang/StringBuilder.java, * java/lang/System.java, * java/lang/Thread.java, * java/lang/ThreadLocal.java, * java/lang/Throwable.java, * java/lang/TypeNotPresentException.java, * java/lang/UnsupportedOperationException.java, * java/lang/annotation/Annotation.java, * java/lang/annotation/AnnotationTypeMismatchException.java, * java/lang/annotation/IncompleteAnnotationException.java, * java/lang/instrument/ClassFileTransformer.java, * java/lang/instrument/Instrumentation.java, * java/lang/management/ClassLoadingMXBean.java, * java/lang/management/CompilationMXBean.java, * java/lang/management/GarbageCollectorMXBean.java, * java/lang/management/ManagementFactory.java, * java/lang/management/ManagementPermission.java, * java/lang/management/MemoryMXBean.java, * java/lang/management/MemoryManagerMXBean.java, * java/lang/management/MemoryNotificationInfo.java, * java/lang/management/MemoryPoolMXBean.java, * java/lang/management/MemoryType.java, * java/lang/management/MemoryUsage.java, * java/lang/management/MonitorInfo.java, * java/lang/management/OperatingSystemMXBean.java, * java/lang/management/RuntimeMXBean.java, * java/lang/management/ThreadInfo.java, * java/lang/management/ThreadMXBean.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/AnnotatedElement.java, * java/lang/reflect/Array.java, * java/lang/reflect/Constructor.java, * java/lang/reflect/Field.java, * java/lang/reflect/GenericArrayType.java, * java/lang/reflect/GenericDeclaration.java, * java/lang/reflect/InvocationHandler.java, * java/lang/reflect/MalformedParameterizedTypeException.java, * java/lang/reflect/Method.java, * java/lang/reflect/Modifier.java, * java/lang/reflect/Proxy.java, * java/lang/reflect/Type.java, * java/lang/reflect/TypeVariable.java, * java/lang/reflect/WildcardType.java, * java/math/BigDecimal.java, * java/math/BigInteger.java, * java/math/MathContext.java, * java/math/RoundingMode.java, * java/net/ContentHandler.java, * java/net/DatagramSocket.java, * java/net/DatagramSocketImpl.java, * java/net/HttpURLConnection.java, * java/net/Inet4Address.java, * java/net/Inet6Address.java, * java/net/InetAddress.java, * java/net/InetSocketAddress.java, * java/net/MimeTypeMapper.java, * java/net/MulticastSocket.java, * java/net/NetworkInterface.java, * java/net/Proxy.java, * java/net/ProxySelector.java, * java/net/ResolverCache.java, * java/net/ServerSocket.java, * java/net/Socket.java, * java/net/SocketPermission.java, * java/net/URI.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/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/CharSequenceBuffer.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/channels/FileChannel.java, * java/nio/channels/SocketChannel.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/rmi/AccessException.java, * java/rmi/AlreadyBoundException.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/StubNotFoundException.java, * java/rmi/UnknownHostException.java, * java/rmi/activation/Activatable.java, * java/rmi/activation/ActivationDesc.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/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/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/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/RemoteObjectInvocationHandler.java, * java/rmi/server/RemoteRef.java, * java/rmi/server/RemoteServer.java, * java/rmi/server/RemoteStub.java, * java/rmi/server/ServerRef.java, * java/rmi/server/Skeleton.java, * java/rmi/server/UID.java, * java/rmi/server/UnicastRemoteObject.java, * java/rmi/server/Unreferenced.java, * java/security/AccessControlContext.java, * java/security/AccessController.java, * java/security/AlgorithmParameterGenerator.java, * java/security/AlgorithmParameterGeneratorSpi.java, * java/security/AlgorithmParameters.java, * java/security/AlgorithmParametersSpi.java, * java/security/CodeSource.java, * java/security/DigestInputStream.java, * java/security/DigestOutputStream.java, * java/security/GeneralSecurityException.java, * java/security/Identity.java, * java/security/IdentityScope.java, * java/security/KeyFactory.java, * java/security/KeyFactorySpi.java, * java/security/KeyPairGenerator.java, * java/security/KeyPairGeneratorSpi.java, * java/security/KeyStore.java, * java/security/KeyStoreSpi.java, * java/security/MessageDigest.java, * java/security/MessageDigestSpi.java, * java/security/Permission.java, * java/security/Permissions.java, * java/security/Policy.java, * java/security/ProtectionDomain.java, * java/security/Provider.java, * java/security/ProviderException.java, * java/security/SecureClassLoader.java, * java/security/SecureRandom.java, * java/security/SecureRandomSpi.java, * java/security/Security.java, * java/security/Signature.java, * java/security/SignatureSpi.java, * java/security/SignedObject.java, * java/security/Signer.java, * java/security/acl/Acl.java, * java/security/acl/AclEntry.java, * java/security/acl/Group.java, * java/security/acl/Owner.java, * java/security/cert/CRL.java, * java/security/cert/CRLSelector.java, * java/security/cert/CertPathBuilder.java, * java/security/cert/CertPathBuilderResult.java, * java/security/cert/CertPathValidator.java, * java/security/cert/CertPathValidatorResult.java, * java/security/cert/CertPathValidatorSpi.java, * java/security/cert/CertSelector.java, * java/security/cert/CertStore.java, * java/security/cert/CertStoreParameters.java, * java/security/cert/CertStoreSpi.java, * java/security/cert/Certificate.java, * java/security/cert/CertificateFactory.java, * java/security/cert/CertificateFactorySpi.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/X509CRL.java, * java/security/cert/X509CRLEntry.java, * java/security/cert/X509CertSelector.java, * java/security/cert/X509Certificate.java, * java/security/cert/X509Extension.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/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/Bidi.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/ParsePosition.java, * java/text/RuleBasedCollator.java, * java/text/SimpleDateFormat.java, * java/text/StringCharacterIterator.java, * java/text/spi/DateFormatProvider.java, * java/text/spi/NumberFormatProvider.java, * java/util/AbstractCollection.java, * java/util/AbstractList.java, * java/util/AbstractMap.java, * java/util/AbstractSet.java, * java/util/ArrayList.java, * java/util/Arrays.java, * java/util/BitSet.java, * java/util/Calendar.java, * java/util/Collections.java, * java/util/Currency.java, * java/util/Date.java, * java/util/Dictionary.java, * java/util/DuplicateFormatFlagsException.java, * java/util/EnumMap.java, * java/util/EnumSet.java, * java/util/FormatFlagsConversionMismatchException.java, * java/util/Formattable.java, * java/util/FormattableFlags.java, * java/util/Formatter.java, * java/util/FormatterClosedException.java, * java/util/GregorianCalendar.java, * java/util/HashMap.java, * java/util/Hashtable.java, * java/util/IdentityHashMap.java, * java/util/IllegalFormatCodePointException.java, * java/util/IllegalFormatConversionException.java, * java/util/IllegalFormatException.java, * java/util/IllegalFormatFlagsException.java, * java/util/IllegalFormatPrecisionException.java, * java/util/IllegalFormatWidthException.java, * java/util/InputMismatchException.java, * java/util/LinkedHashMap.java, * java/util/LinkedHashSet.java, * java/util/LinkedList.java, * java/util/List.java, * java/util/Locale.java, * java/util/Map.java, * java/util/MissingFormatArgumentException.java, * java/util/MissingFormatWidthException.java, * java/util/PriorityQueue.java, * java/util/Properties.java, * java/util/PropertyPermission.java, * java/util/PropertyPermissionCollection.java, * java/util/Random.java, * java/util/ResourceBundle.java, * java/util/ServiceConfigurationError.java, * java/util/ServiceLoader.java, * java/util/SimpleTimeZone.java, * java/util/StringTokenizer.java, * java/util/TimeZone.java, * java/util/Timer.java, * java/util/TreeMap.java, * java/util/TreeSet.java, * java/util/UUID.java, * java/util/UnknownFormatConversionException.java, * java/util/UnknownFormatFlagsException.java, * java/util/Vector.java, * java/util/WeakHashMap.java, * java/util/concurrent/CopyOnWriteArrayList.java, * java/util/jar/Attributes.java, * java/util/jar/JarEntry.java, * java/util/jar/JarFile.java, * java/util/jar/JarInputStream.java, * java/util/jar/JarOutputStream.java, * java/util/jar/Manifest.java, * java/util/logging/ConsoleHandler.java, * java/util/logging/ErrorManager.java, * java/util/logging/FileHandler.java, * java/util/logging/Formatter.java, * java/util/logging/Handler.java, * java/util/logging/Level.java, * java/util/logging/LogManager.java, * java/util/logging/LogRecord.java, * java/util/logging/Logger.java, * java/util/logging/LoggingMXBean.java, * java/util/logging/LoggingPermission.java, * java/util/logging/MemoryHandler.java, * java/util/logging/SocketHandler.java, * java/util/logging/StreamHandler.java, * java/util/logging/XMLFormatter.java, * java/util/prefs/AbstractPreferences.java, * java/util/prefs/NodeChangeEvent.java, * java/util/prefs/NodeChangeListener.java, * java/util/prefs/PreferenceChangeEvent.java, * java/util/prefs/PreferenceChangeListener.java, * java/util/prefs/Preferences.java, * java/util/prefs/PreferencesFactory.java, * java/util/regex/MatchResult.java, * java/util/regex/Pattern.java, * java/util/regex/PatternSyntaxException.java, * java/util/spi/LocaleNameProvider.java, * java/util/spi/TimeZoneNameProvider.java, * java/util/zip/Adler32.java, * java/util/zip/CRC32.java, * java/util/zip/CheckedInputStream.java, * java/util/zip/CheckedOutputStream.java, * java/util/zip/Deflater.java, * java/util/zip/DeflaterEngine.java, * java/util/zip/DeflaterHuffman.java, * java/util/zip/DeflaterOutputStream.java, * java/util/zip/DeflaterPending.java, * java/util/zip/GZIPInputStream.java, * java/util/zip/GZIPOutputStream.java, * java/util/zip/Inflater.java, * java/util/zip/InflaterDynHeader.java, * java/util/zip/InflaterHuffmanTree.java, * java/util/zip/InflaterInputStream.java, * java/util/zip/OutputWindow.java, * java/util/zip/PendingBuffer.java, * java/util/zip/StreamManipulator.java, * java/util/zip/ZipConstants.java, * java/util/zip/ZipEntry.java, * java/util/zip/ZipFile.java, * java/util/zip/ZipInputStream.java, * java/util/zip/ZipOutputStream.java, * javax/accessibility/AccessibleExtendedText.java, * javax/accessibility/AccessibleRelation.java, * javax/accessibility/AccessibleRole.java, * javax/accessibility/AccessibleState.java, * javax/activation/ActivationDataFlavor.java, * javax/activation/CommandInfo.java, * javax/activation/CommandMap.java, * javax/activation/CommandObject.java, * javax/activation/DataContentHandler.java, * javax/activation/DataContentHandlerFactory.java, * javax/activation/DataHandler.java, * javax/activation/DataHandlerDataSource.java, * javax/activation/DataSource.java, * javax/activation/DataSourceDataContentHandler.java, * javax/activation/FileDataSource.java, * javax/activation/FileTypeMap.java, * javax/activation/MailcapCommandMap.java, * javax/activation/MimeType.java, * javax/activation/MimeTypeParameterList.java, * javax/activation/MimeTypeParseException.java, * javax/activation/MimetypesFileTypeMap.java, * javax/activation/ObjectDataContentHandler.java, * javax/activation/URLDataSource.java, * javax/activation/UnsupportedDataTypeException.java, * javax/crypto/Cipher.java, * javax/crypto/CipherOutputStream.java, * javax/crypto/ExemptionMechanism.java, * javax/crypto/KeyAgreement.java, * javax/crypto/KeyGenerator.java, * javax/crypto/Mac.java, * javax/crypto/MacSpi.java, * javax/crypto/SecretKeyFactory.java, * javax/crypto/spec/PBEKeySpec.java, * javax/imageio/IIOImage.java, * javax/imageio/IIOParam.java, * javax/imageio/IIOParamController.java, * javax/imageio/ImageIO.java, * javax/imageio/ImageReadParam.java, * javax/imageio/ImageReader.java, * javax/imageio/ImageTranscoder.java, * javax/imageio/ImageTypeSpecifier.java, * javax/imageio/ImageWriteParam.java, * javax/imageio/ImageWriter.java, * javax/imageio/event/IIOReadProgressListener.java, * javax/imageio/event/IIOReadUpdateListener.java, * javax/imageio/event/IIOWriteProgressListener.java, * javax/imageio/metadata/IIOInvalidTreeException.java, * javax/imageio/metadata/IIOMetadata.java, * javax/imageio/metadata/IIOMetadataFormatImpl.java, * javax/imageio/metadata/IIOMetadataNode.java, * javax/imageio/plugins/bmp/BMPImageWriteParam.java, * javax/imageio/plugins/jpeg/JPEGHuffmanTable.java, * javax/imageio/spi/IIORegistry.java, * javax/imageio/spi/ImageReaderSpi.java, * javax/imageio/spi/ImageWriterSpi.java, * javax/imageio/spi/RegisterableService.java, * javax/imageio/spi/ServiceRegistry.java, * javax/imageio/stream/FileCacheImageInputStream.java, * javax/imageio/stream/FileCacheImageOutputStream.java, * javax/imageio/stream/FileImageInputStream.java, * javax/imageio/stream/FileImageOutputStream.java, * javax/imageio/stream/ImageInputStream.java, * javax/imageio/stream/ImageInputStreamImpl.java, * javax/imageio/stream/ImageOutputStreamImpl.java, * javax/imageio/stream/MemoryCacheImageInputStream.java, * javax/imageio/stream/MemoryCacheImageOutputStream.java, * javax/management/Attribute.java, * javax/management/AttributeChangeNotification.java, * javax/management/AttributeChangeNotificationFilter.java, * javax/management/AttributeList.java, * javax/management/AttributeNotFoundException.java, * javax/management/AttributeValueExp.java, * javax/management/BadAttributeValueExpException.java, * javax/management/BadBinaryOpValueExpException.java, * javax/management/BadStringOperationException.java, * javax/management/DefaultLoaderRepository.java, * javax/management/Descriptor.java, * javax/management/DynamicMBean.java, * javax/management/InstanceAlreadyExistsException.java, * javax/management/InstanceNotFoundException.java, * javax/management/IntrospectionException.java, * javax/management/InvalidApplicationException.java, * javax/management/InvalidAttributeValueException.java, * javax/management/JMException.java, * javax/management/JMRuntimeException.java, * javax/management/JMX.java, * javax/management/ListenerNotFoundException.java, * javax/management/MBeanAttributeInfo.java, * javax/management/MBeanConstructorInfo.java, * javax/management/MBeanException.java, * javax/management/MBeanFeatureInfo.java, * javax/management/MBeanInfo.java, * javax/management/MBeanNotificationInfo.java, * javax/management/MBeanOperationInfo.java, * javax/management/MBeanParameterInfo.java, * javax/management/MBeanPermission.java, * javax/management/MBeanRegistrationException.java, * javax/management/MBeanServer.java, * javax/management/MBeanServerBuilder.java, * javax/management/MBeanServerConnection.java, * javax/management/MBeanServerDelegate.java, * javax/management/MBeanServerFactory.java, * javax/management/MBeanServerInvocationHandler.java, * javax/management/MBeanServerNotification.java, * javax/management/MBeanServerPermission.java, * javax/management/MBeanTrustPermission.java, * javax/management/MalformedObjectNameException.java, * javax/management/NotCompliantMBeanException.java, * javax/management/Notification.java, * javax/management/NotificationBroadcaster.java, * javax/management/NotificationBroadcasterSupport.java, * javax/management/NotificationEmitter.java, * javax/management/NotificationFilter.java, * javax/management/NotificationFilterSupport.java, * javax/management/NotificationListener.java, * javax/management/ObjectInstance.java, * javax/management/ObjectName.java, * javax/management/OperationsException.java, * javax/management/PersistentMBean.java, * javax/management/Query.java, * javax/management/QueryEval.java, * javax/management/QueryExp.java, * javax/management/ReflectionException.java, * javax/management/RuntimeErrorException.java, * javax/management/RuntimeMBeanException.java, * javax/management/RuntimeOperationsException.java, * javax/management/ServiceNotFoundException.java, * javax/management/StandardMBean.java, * javax/management/StringValueExp.java, * javax/management/ValueExp.java, * javax/management/loading/ClassLoaderRepository.java, * javax/management/openmbean/ArrayType.java, * javax/management/openmbean/CompositeData.java, * javax/management/openmbean/CompositeDataInvocationHandler.java, * javax/management/openmbean/CompositeDataSupport.java, * javax/management/openmbean/CompositeType.java, * javax/management/openmbean/InvalidKeyException.java, * javax/management/openmbean/InvalidOpenTypeException.java, * javax/management/openmbean/KeyAlreadyExistsException.java, * javax/management/openmbean/OpenDataException.java, * javax/management/openmbean/OpenMBeanAttributeInfo.java, * javax/management/openmbean/OpenMBeanAttributeInfoSupport.java, * javax/management/openmbean/OpenMBeanConstructorInfo.java, * javax/management/openmbean/OpenMBeanConstructorInfoSupport.java, * javax/management/openmbean/OpenMBeanInfo.java, * javax/management/openmbean/OpenMBeanInfoSupport.java, * javax/management/openmbean/OpenMBeanOperationInfo.java, * javax/management/openmbean/OpenMBeanOperationInfoSupport.java, * javax/management/openmbean/OpenMBeanParameterInfo.java, * javax/management/openmbean/OpenMBeanParameterInfoSupport.java, * javax/management/openmbean/OpenType.java, * javax/management/openmbean/SimpleType.java, * javax/management/openmbean/TabularData.java, * javax/management/openmbean/TabularDataSupport.java, * javax/management/openmbean/TabularType.java, * javax/management/remote/NotificationResult.java, * javax/management/remote/TargetedNotification.java, * javax/management/remote/rmi/RMIConnection.java, * javax/naming/AuthenticationException.java, * javax/naming/AuthenticationNotSupportedException.java, * javax/naming/BinaryRefAddr.java, * javax/naming/Binding.java, * javax/naming/CannotProceedException.java, * javax/naming/CommunicationException.java, * javax/naming/CompositeName.java, * javax/naming/CompoundName.java, * javax/naming/ConfigurationException.java, * javax/naming/Context.java, * javax/naming/ContextNotEmptyException.java, * javax/naming/InitialContext.java, * javax/naming/InsufficientResourcesException.java, * javax/naming/InterruptedNamingException.java, * javax/naming/InvalidNameException.java, * javax/naming/LimitExceededException.java, * javax/naming/LinkException.java, * javax/naming/LinkLoopException.java, * javax/naming/MalformedLinkException.java, * javax/naming/Name.java, * javax/naming/NameAlreadyBoundException.java, * javax/naming/NameClassPair.java, * javax/naming/NameNotFoundException.java, * javax/naming/NameParser.java, * javax/naming/NamingEnumeration.java, * javax/naming/NamingException.java, * javax/naming/NamingSecurityException.java, * javax/naming/NoInitialContextException.java, * javax/naming/NoPermissionException.java, * javax/naming/NotContextException.java, * javax/naming/PartialResultException.java, * javax/naming/RefAddr.java, * javax/naming/Reference.java, * javax/naming/Referenceable.java, * javax/naming/ReferralException.java, * javax/naming/ServiceUnavailableException.java, * javax/naming/SizeLimitExceededException.java, * javax/naming/StringRefAddr.java, * javax/naming/TimeLimitExceededException.java, * javax/naming/directory/AttributeInUseException.java, * javax/naming/directory/Attributes.java, * javax/naming/directory/BasicAttribute.java, * javax/naming/directory/BasicAttributes.java, * javax/naming/directory/InitialDirContext.java, * javax/naming/directory/ModificationItem.java, * javax/naming/directory/SearchControls.java, * javax/naming/directory/SearchResult.java, * javax/naming/event/EventContext.java, * javax/naming/event/NamespaceChangeListener.java, * javax/naming/event/NamingEvent.java, * javax/naming/event/NamingExceptionEvent.java, * javax/naming/event/NamingListener.java, * javax/naming/event/ObjectChangeListener.java, * javax/naming/ldap/Control.java, * javax/naming/ldap/ControlFactory.java, * javax/naming/ldap/ExtendedRequest.java, * javax/naming/ldap/ExtendedResponse.java, * javax/naming/ldap/HasControls.java, * javax/naming/ldap/InitialLdapContext.java, * javax/naming/ldap/LdapContext.java, * javax/naming/ldap/LdapReferralException.java, * javax/naming/ldap/StartTlsRequest.java, * javax/naming/ldap/UnsolicitedNotification.java, * javax/naming/ldap/UnsolicitedNotificationEvent.java, * javax/naming/ldap/UnsolicitedNotificationListener.java, * javax/naming/spi/DirObjectFactory.java, * javax/naming/spi/DirStateFactory.java, * javax/naming/spi/DirectoryManager.java, * javax/naming/spi/InitialContextFactory.java, * javax/naming/spi/InitialContextFactoryBuilder.java, * javax/naming/spi/NamingManager.java, * javax/naming/spi/ObjectFactory.java, * javax/naming/spi/ObjectFactoryBuilder.java, * javax/naming/spi/ResolveResult.java, * javax/naming/spi/Resolver.java, * javax/naming/spi/StateFactory.java, * javax/net/ssl/CertPathTrustManagerParameters.java, * javax/net/ssl/KeyManagerFactory.java, * javax/net/ssl/KeyStoreBuilderParameters.java, * javax/net/ssl/SSLContext.java, * javax/net/ssl/SSLEngine.java, * javax/net/ssl/SSLEngineResult.java, * javax/net/ssl/SSLException.java, * javax/net/ssl/TrustManagerFactory.java, * javax/net/ssl/X509ExtendedKeyManager.java, * javax/print/AttributeException.java, * javax/print/CancelablePrintJob.java, * javax/print/Doc.java, * javax/print/DocFlavor.java, * javax/print/DocPrintJob.java, * javax/print/FlavorException.java, * javax/print/MultiDoc.java, * javax/print/MultiDocPrintJob.java, * javax/print/MultiDocPrintService.java, * javax/print/PrintException.java, * javax/print/PrintService.java, * javax/print/PrintServiceLookup.java, * javax/print/ServiceUI.java, * javax/print/ServiceUIFactory.java, * javax/print/SimpleDoc.java, * javax/print/StreamPrintService.java, * javax/print/StreamPrintServiceFactory.java, * javax/print/URIException.java, * javax/print/attribute/Attribute.java, * javax/print/attribute/AttributeSet.java, * javax/print/attribute/AttributeSetUtilities.java, * javax/print/attribute/DateTimeSyntax.java, * javax/print/attribute/DocAttribute.java, * javax/print/attribute/DocAttributeSet.java, * javax/print/attribute/EnumSyntax.java, * javax/print/attribute/HashAttributeSet.java, * javax/print/attribute/HashDocAttributeSet.java, * javax/print/attribute/HashPrintJobAttributeSet.java, * javax/print/attribute/HashPrintRequestAttributeSet.java, * javax/print/attribute/HashPrintServiceAttributeSet.java, * javax/print/attribute/IntegerSyntax.java, * javax/print/attribute/PrintJobAttribute.java, * javax/print/attribute/PrintJobAttributeSet.java, * javax/print/attribute/PrintRequestAttribute.java, * javax/print/attribute/PrintRequestAttributeSet.java, * javax/print/attribute/PrintServiceAttribute.java, * javax/print/attribute/PrintServiceAttributeSet.java, * javax/print/attribute/ResolutionSyntax.java, * javax/print/attribute/SetOfIntegerSyntax.java, * javax/print/attribute/Size2DSyntax.java, * javax/print/attribute/SupportedValuesAttribute.java, * javax/print/attribute/TextSyntax.java, * javax/print/attribute/URISyntax.java, * javax/print/attribute/UnmodifiableSetException.java, * javax/print/attribute/standard/Chromaticity.java, * javax/print/attribute/standard/ColorSupported.java, * javax/print/attribute/standard/Compression.java, * javax/print/attribute/standard/Copies.java, * javax/print/attribute/standard/CopiesSupported.java, * javax/print/attribute/standard/DateTimeAtCompleted.java, * javax/print/attribute/standard/DateTimeAtCreation.java, * javax/print/attribute/standard/DateTimeAtProcessing.java, * javax/print/attribute/standard/Destination.java, * javax/print/attribute/standard/DocumentName.java, * javax/print/attribute/standard/Fidelity.java, * javax/print/attribute/standard/Finishings.java, * javax/print/attribute/standard/JobHoldUntil.java, * javax/print/attribute/standard/JobImpressions.java, * javax/print/attribute/standard/JobImpressionsCompleted.java, * javax/print/attribute/standard/JobImpressionsSupported.java, * javax/print/attribute/standard/JobKOctets.java, * javax/print/attribute/standard/JobKOctetsProcessed.java, * javax/print/attribute/standard/JobKOctetsSupported.java, * javax/print/attribute/standard/JobMediaSheets.java, * javax/print/attribute/standard/JobMediaSheetsCompleted.java, * javax/print/attribute/standard/JobMediaSheetsSupported.java, * javax/print/attribute/standard/JobMessageFromOperator.java, * javax/print/attribute/standard/JobName.java, * javax/print/attribute/standard/JobOriginatingUserName.java, * javax/print/attribute/standard/JobPriority.java, * javax/print/attribute/standard/JobPrioritySupported.java, * javax/print/attribute/standard/JobSheets.java, * javax/print/attribute/standard/JobState.java, * javax/print/attribute/standard/JobStateReason.java, * javax/print/attribute/standard/JobStateReasons.java, * javax/print/attribute/standard/Media.java, * javax/print/attribute/standard/MediaName.java, * javax/print/attribute/standard/MediaPrintableArea.java, * javax/print/attribute/standard/MediaSize.java, * javax/print/attribute/standard/MediaSizeName.java, * javax/print/attribute/standard/MediaTray.java, * javax/print/attribute/standard/MultipleDocumentHandling.java, * javax/print/attribute/standard/NumberOfDocuments.java, * javax/print/attribute/standard/NumberOfInterveningJobs.java, * javax/print/attribute/standard/NumberUp.java, * javax/print/attribute/standard/NumberUpSupported.java, * javax/print/attribute/standard/OrientationRequested.java, * javax/print/attribute/standard/OutputDeviceAssigned.java, * javax/print/attribute/standard/PDLOverrideSupported.java, * javax/print/attribute/standard/PageRanges.java, * javax/print/attribute/standard/PagesPerMinute.java, * javax/print/attribute/standard/PagesPerMinuteColor.java, * javax/print/attribute/standard/PresentationDirection.java, * javax/print/attribute/standard/PrintQuality.java, * javax/print/attribute/standard/PrinterInfo.java, * javax/print/attribute/standard/PrinterIsAcceptingJobs.java, * javax/print/attribute/standard/PrinterLocation.java, * javax/print/attribute/standard/PrinterMakeAndModel.java, * javax/print/attribute/standard/PrinterMessageFromOperator.java, * javax/print/attribute/standard/PrinterMoreInfo.java, * javax/print/attribute/standard/PrinterMoreInfoManufacturer.java, * javax/print/attribute/standard/PrinterName.java, * javax/print/attribute/standard/PrinterResolution.java, * javax/print/attribute/standard/PrinterState.java, * javax/print/attribute/standard/PrinterStateReason.java, * javax/print/attribute/standard/PrinterStateReasons.java, * javax/print/attribute/standard/PrinterURI.java, * javax/print/attribute/standard/QueuedJobCount.java, * javax/print/attribute/standard/ReferenceUriSchemesSupported.java, * javax/print/attribute/standard/RequestingUserName.java, * javax/print/attribute/standard/Severity.java, * javax/print/attribute/standard/SheetCollate.java, * javax/print/attribute/standard/Sides.java, * javax/print/event/PrintEvent.java, * javax/print/event/PrintJobAdapter.java, * javax/print/event/PrintJobAttributeEvent.java, * javax/print/event/PrintJobAttributeListener.java, * javax/print/event/PrintJobEvent.java, * javax/print/event/PrintJobListener.java, * javax/print/event/PrintServiceAttributeEvent.java, * javax/print/event/PrintServiceAttributeListener.java, * javax/rmi/CORBA/ClassDesc.java, * javax/rmi/CORBA/PortableRemoteObjectDelegate.java, * javax/rmi/CORBA/Stub.java, * javax/rmi/CORBA/StubDelegate.java, * javax/rmi/CORBA/Tie.java, * javax/rmi/CORBA/Util.java, * javax/rmi/CORBA/UtilDelegate.java, * javax/rmi/CORBA/ValueHandler.java, * javax/rmi/CORBA/ValueHandlerMultiFormat.java, * javax/rmi/PortableRemoteObject.java, * javax/rmi/ssl/SslRMIClientSocketFactory.java, * javax/rmi/ssl/SslRMIServerSocketFactory.java, * javax/security/auth/Subject.java, * javax/security/auth/callback/ChoiceCallback.java, * javax/security/auth/callback/ConfirmationCallback.java, * javax/security/auth/callback/NameCallback.java, * javax/security/auth/callback/PasswordCallback.java, * javax/security/auth/callback/TextInputCallback.java, * javax/security/auth/callback/TextOutputCallback.java, * javax/security/auth/kerberos/DelegationPermission.java, * javax/security/auth/kerberos/KerberosKey.java, * javax/security/auth/kerberos/KerberosPrincipal.java, * javax/security/auth/kerberos/ServicePermission.java, * javax/security/auth/login/AccountNotFoundException.java, * javax/security/auth/login/AppConfigurationEntry.java, * javax/security/auth/login/LoginContext.java, * javax/security/sasl/Sasl.java, * javax/sound/midi/ControllerEventListener.java, * javax/sound/midi/Instrument.java, * javax/sound/midi/InvalidMidiDataException.java, * javax/sound/midi/MetaEventListener.java, * javax/sound/midi/MetaMessage.java, * javax/sound/midi/MidiChannel.java, * javax/sound/midi/MidiDevice.java, * javax/sound/midi/MidiEvent.java, * javax/sound/midi/MidiFileFormat.java, * javax/sound/midi/MidiMessage.java, * javax/sound/midi/MidiSystem.java, * javax/sound/midi/MidiUnavailableException.java, * javax/sound/midi/Patch.java, * javax/sound/midi/Receiver.java, * javax/sound/midi/Sequence.java, * javax/sound/midi/Sequencer.java, * javax/sound/midi/ShortMessage.java, * javax/sound/midi/Soundbank.java, * javax/sound/midi/SoundbankResource.java, * javax/sound/midi/Synthesizer.java, * javax/sound/midi/SysexMessage.java, * javax/sound/midi/Track.java, * javax/sound/midi/Transmitter.java, * javax/sound/midi/VoiceStatus.java, * javax/sound/midi/spi/MidiDeviceProvider.java, * javax/sound/midi/spi/MidiFileReader.java, * javax/sound/midi/spi/MidiFileWriter.java, * javax/sound/midi/spi/SoundbankReader.java, * javax/sound/sampled/AudioFileFormat.java, * javax/sound/sampled/AudioFormat.java, * javax/sound/sampled/AudioInputStream.java, * javax/sound/sampled/AudioPermission.java, * javax/sound/sampled/AudioSystem.java, * javax/sound/sampled/BooleanControl.java, * javax/sound/sampled/Clip.java, * javax/sound/sampled/CompoundControl.java, * javax/sound/sampled/DataLine.java, * javax/sound/sampled/EnumControl.java, * javax/sound/sampled/FloatControl.java, * javax/sound/sampled/Line.java, * javax/sound/sampled/LineEvent.java, * javax/sound/sampled/LineUnavailableException.java, * javax/sound/sampled/Mixer.java, * javax/sound/sampled/Port.java, * javax/sound/sampled/ReverbType.java, * javax/sound/sampled/UnsupportedAudioFileException.java, * javax/sound/sampled/spi/AudioFileReader.java, * javax/sound/sampled/spi/AudioFileWriter.java, * javax/sound/sampled/spi/FormatConversionProvider.java, * javax/sql/ConnectionEvent.java, * javax/sql/ConnectionEventListener.java, * javax/sql/ConnectionPoolDataSource.java, * javax/sql/DataSource.java, * javax/sql/PooledConnection.java, * javax/sql/RowSet.java, * javax/sql/RowSetEvent.java, * javax/sql/RowSetInternal.java, * javax/sql/RowSetListener.java, * javax/sql/RowSetMetaData.java, * javax/sql/RowSetReader.java, * javax/sql/RowSetWriter.java, * javax/sql/XAConnection.java, * javax/sql/XADataSource.java, * javax/swing/AbstractAction.java, * javax/swing/AbstractButton.java, * javax/swing/AbstractCellEditor.java, * javax/swing/AbstractListModel.java, * javax/swing/AbstractSpinnerModel.java, * javax/swing/Action.java, * javax/swing/BorderFactory.java, * javax/swing/BoundedRangeModel.java, * javax/swing/Box.java, * javax/swing/BoxLayout.java, * javax/swing/ButtonGroup.java, * javax/swing/ButtonModel.java, * javax/swing/CellEditor.java, * javax/swing/CellRendererPane.java, * javax/swing/ComboBoxModel.java, * javax/swing/ComponentInputMap.java, * javax/swing/DebugGraphics.java, * javax/swing/DefaultBoundedRangeModel.java, * javax/swing/DefaultButtonModel.java, * javax/swing/DefaultCellEditor.java, * javax/swing/DefaultComboBoxModel.java, * javax/swing/DefaultDesktopManager.java, * javax/swing/DefaultFocusManager.java, * javax/swing/DefaultListModel.java, * javax/swing/DefaultListSelectionModel.java, * javax/swing/DefaultSingleSelectionModel.java, * javax/swing/FocusManager.java, * javax/swing/GrayFilter.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/JCheckBoxMenuItem.java, * javax/swing/JComboBox.java, * javax/swing/JComponent.java, * javax/swing/JDesktopPane.java, * javax/swing/JDialog.java, * javax/swing/JEditorPane.java, * javax/swing/JFileChooser.java, * javax/swing/JFormattedTextField.java, * javax/swing/JFrame.java, * javax/swing/JInternalFrame.java, * javax/swing/JLabel.java, * javax/swing/JLayeredPane.java, * javax/swing/JList.java, * javax/swing/JMenu.java, * javax/swing/JMenuBar.java, * javax/swing/JMenuItem.java, * javax/swing/JOptionPane.java, * javax/swing/JPanel.java, * javax/swing/JPasswordField.java, * javax/swing/JPopupMenu.java, * javax/swing/JProgressBar.java, * javax/swing/JRadioButton.java, * javax/swing/JRadioButtonMenuItem.java, * javax/swing/JRootPane.java, * javax/swing/JScrollBar.java, * javax/swing/JScrollPane.java, * javax/swing/JSeparator.java, * javax/swing/JSlider.java, * javax/swing/JSpinner.java, * javax/swing/JSplitPane.java, * javax/swing/JTabbedPane.java, * javax/swing/JTable.java, * javax/swing/JTextArea.java, * javax/swing/JTextField.java, * javax/swing/JTextPane.java, * javax/swing/JToggleButton.java, * javax/swing/JToolBar.java, * javax/swing/JToolTip.java, * javax/swing/JTree.java, * javax/swing/JViewport.java, * javax/swing/JWindow.java, * javax/swing/KeyStroke.java, * javax/swing/KeyboardManager.java, * javax/swing/LayoutFocusTraversalPolicy.java, * javax/swing/ListCellRenderer.java, * javax/swing/ListSelectionModel.java, * javax/swing/LookAndFeel.java, * javax/swing/MenuSelectionManager.java, * javax/swing/OverlayLayout.java, * javax/swing/Popup.java, * javax/swing/PopupFactory.java, * javax/swing/ProgressMonitor.java, * javax/swing/ProgressMonitorInputStream.java, * javax/swing/Renderer.java, * javax/swing/RepaintManager.java, * javax/swing/ScrollPaneLayout.java, * javax/swing/Scrollable.java, * javax/swing/SingleSelectionModel.java, * javax/swing/SizeRequirements.java, * javax/swing/SizeSequence.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/ViewportLayout.java, * javax/swing/WindowConstants.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/colorchooser/AbstractColorChooserPanel.java, * javax/swing/colorchooser/ColorChooserComponentFactory.java, * javax/swing/colorchooser/ColorSelectionModel.java, * javax/swing/colorchooser/DefaultColorSelectionModel.java, * javax/swing/colorchooser/DefaultHSBChooserPanel.java, * javax/swing/colorchooser/DefaultRGBChooserPanel.java, * javax/swing/colorchooser/DefaultSwatchChooserPanel.java, * javax/swing/event/AncestorEvent.java, * javax/swing/event/AncestorListener.java, * javax/swing/event/CaretEvent.java, * javax/swing/event/CaretListener.java, * javax/swing/event/CellEditorListener.java, * javax/swing/event/ChangeEvent.java, * javax/swing/event/ChangeListener.java, * javax/swing/event/DocumentEvent.java, * javax/swing/event/DocumentListener.java, * javax/swing/event/EventListenerList.java, * javax/swing/event/HyperlinkEvent.java, * javax/swing/event/HyperlinkListener.java, * javax/swing/event/InternalFrameAdapter.java, * javax/swing/event/InternalFrameEvent.java, * javax/swing/event/InternalFrameListener.java, * javax/swing/event/ListDataEvent.java, * javax/swing/event/ListDataListener.java, * javax/swing/event/ListSelectionEvent.java, * javax/swing/event/ListSelectionListener.java, * javax/swing/event/MenuDragMouseEvent.java, * javax/swing/event/MenuDragMouseListener.java, * javax/swing/event/MenuEvent.java, * javax/swing/event/MenuKeyEvent.java, * javax/swing/event/MenuKeyListener.java, * javax/swing/event/MenuListener.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/event/UndoableEditEvent.java, * javax/swing/filechooser/FileFilter.java, * javax/swing/filechooser/FileSystemView.java, * javax/swing/filechooser/FileView.java, * javax/swing/filechooser/UnixFileSystemView.java, * javax/swing/plaf/BorderUIResource.java, * javax/swing/plaf/ColorChooserUI.java, * javax/swing/plaf/ColorUIResource.java, * javax/swing/plaf/ComboBoxUI.java, * javax/swing/plaf/ComponentInputMapUIResource.java, * javax/swing/plaf/ComponentUI.java, * javax/swing/plaf/FileChooserUI.java, * javax/swing/plaf/IconUIResource.java, * javax/swing/plaf/SplitPaneUI.java, * javax/swing/plaf/TabbedPaneUI.java, * javax/swing/plaf/TextUI.java, * javax/swing/plaf/UIResource.java, * javax/swing/plaf/basic/BasicArrowButton.java, * javax/swing/plaf/basic/BasicBorders.java, * javax/swing/plaf/basic/BasicButtonListener.java, * javax/swing/plaf/basic/BasicButtonUI.java, * javax/swing/plaf/basic/BasicCheckBoxMenuItemUI.java, * javax/swing/plaf/basic/BasicCheckBoxUI.java, * javax/swing/plaf/basic/BasicColorChooserUI.java, * javax/swing/plaf/basic/BasicComboBoxEditor.java, * javax/swing/plaf/basic/BasicComboBoxRenderer.java, * javax/swing/plaf/basic/BasicComboBoxUI.java, * javax/swing/plaf/basic/BasicComboPopup.java, * javax/swing/plaf/basic/BasicDesktopIconUI.java, * javax/swing/plaf/basic/BasicDesktopPaneUI.java, * javax/swing/plaf/basic/BasicDirectoryModel.java, * javax/swing/plaf/basic/BasicEditorPaneUI.java, * javax/swing/plaf/basic/BasicFileChooserUI.java, * javax/swing/plaf/basic/BasicFormattedTextFieldUI.java, * javax/swing/plaf/basic/BasicGraphicsUtils.java, * javax/swing/plaf/basic/BasicHTML.java, * javax/swing/plaf/basic/BasicIconFactory.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/BasicLookAndFeel.java, * javax/swing/plaf/basic/BasicMenuBarUI.java, * javax/swing/plaf/basic/BasicMenuItemUI.java, * javax/swing/plaf/basic/BasicMenuUI.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/BasicProgressBarUI.java, * javax/swing/plaf/basic/BasicRadioButtonUI.java, * javax/swing/plaf/basic/BasicRootPaneUI.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/BasicTableHeaderUI.java, * javax/swing/plaf/basic/BasicTableUI.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/BasicToolBarUI.java, * javax/swing/plaf/basic/BasicToolTipUI.java, * javax/swing/plaf/basic/BasicTreeUI.java, * javax/swing/plaf/basic/BasicViewportUI.java, * javax/swing/plaf/metal/DefaultMetalTheme.java, * javax/swing/plaf/metal/MetalBorders.java, * javax/swing/plaf/metal/MetalButtonListener.java, * javax/swing/plaf/metal/MetalButtonUI.java, * javax/swing/plaf/metal/MetalCheckBoxIcon.java, * javax/swing/plaf/metal/MetalCheckBoxUI.java, * javax/swing/plaf/metal/MetalComboBoxButton.java, * javax/swing/plaf/metal/MetalComboBoxEditor.java, * javax/swing/plaf/metal/MetalComboBoxIcon.java, * javax/swing/plaf/metal/MetalComboBoxUI.java, * javax/swing/plaf/metal/MetalFileChooserUI.java, * javax/swing/plaf/metal/MetalIconFactory.java, * javax/swing/plaf/metal/MetalInternalFrameTitlePane.java, * javax/swing/plaf/metal/MetalInternalFrameUI.java, * javax/swing/plaf/metal/MetalLabelUI.java, * javax/swing/plaf/metal/MetalLookAndFeel.java, * javax/swing/plaf/metal/MetalMenuBarUI.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/MetalScrollButton.java, * javax/swing/plaf/metal/MetalScrollPaneUI.java, * javax/swing/plaf/metal/MetalSeparatorUI.java, * javax/swing/plaf/metal/MetalSliderUI.java, * javax/swing/plaf/metal/MetalSplitPaneDivider.java, * javax/swing/plaf/metal/MetalSplitPaneUI.java, * javax/swing/plaf/metal/MetalTabbedPaneUI.java, * javax/swing/plaf/metal/MetalTextFieldUI.java, * javax/swing/plaf/metal/MetalTheme.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/metal/MetalUtils.java, * javax/swing/plaf/metal/OceanTheme.java, * javax/swing/plaf/multi/MultiButtonUI.java, * javax/swing/plaf/multi/MultiColorChooserUI.java, * javax/swing/plaf/multi/MultiComboBoxUI.java, * javax/swing/plaf/multi/MultiDesktopIconUI.java, * javax/swing/plaf/multi/MultiDesktopPaneUI.java, * javax/swing/plaf/multi/MultiFileChooserUI.java, * javax/swing/plaf/multi/MultiInternalFrameUI.java, * javax/swing/plaf/multi/MultiLabelUI.java, * javax/swing/plaf/multi/MultiListUI.java, * javax/swing/plaf/multi/MultiLookAndFeel.java, * javax/swing/plaf/multi/MultiMenuBarUI.java, * javax/swing/plaf/multi/MultiMenuItemUI.java, * javax/swing/plaf/multi/MultiOptionPaneUI.java, * javax/swing/plaf/multi/MultiPanelUI.java, * javax/swing/plaf/multi/MultiPopupMenuUI.java, * javax/swing/plaf/multi/MultiProgressBarUI.java, * javax/swing/plaf/multi/MultiRootPaneUI.java, * javax/swing/plaf/multi/MultiScrollBarUI.java, * javax/swing/plaf/multi/MultiScrollPaneUI.java, * javax/swing/plaf/multi/MultiSeparatorUI.java, * javax/swing/plaf/multi/MultiSliderUI.java, * javax/swing/plaf/multi/MultiSpinnerUI.java, * javax/swing/plaf/multi/MultiSplitPaneUI.java, * javax/swing/plaf/multi/MultiTabbedPaneUI.java, * javax/swing/plaf/multi/MultiTableHeaderUI.java, * javax/swing/plaf/multi/MultiTableUI.java, * javax/swing/plaf/multi/MultiTextUI.java, * javax/swing/plaf/multi/MultiToolBarUI.java, * javax/swing/plaf/multi/MultiToolTipUI.java, * javax/swing/plaf/multi/MultiTreeUI.java, * javax/swing/plaf/multi/MultiViewportUI.java, * javax/swing/plaf/synth/SynthGraphicsUtils.java, * javax/swing/plaf/synth/SynthLookAndFeel.java, * javax/swing/plaf/synth/SynthPainter.java, * javax/swing/table/AbstractTableModel.java, * javax/swing/table/DefaultTableCellRenderer.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/text/AbstractDocument.java, * javax/swing/text/AbstractWriter.java, * javax/swing/text/AsyncBoxView.java, * javax/swing/text/AttributeSet.java, * javax/swing/text/BoxView.java, * javax/swing/text/Caret.java, * javax/swing/text/ComponentView.java, * javax/swing/text/CompositeView.java, * javax/swing/text/DefaultCaret.java, * javax/swing/text/DefaultEditorKit.java, * javax/swing/text/DefaultFormatter.java, * javax/swing/text/DefaultFormatterFactory.java, * javax/swing/text/DefaultHighlighter.java, * javax/swing/text/DefaultStyledDocument.java, * javax/swing/text/DocumentFilter.java, * javax/swing/text/EditorKit.java, * javax/swing/text/Element.java, * javax/swing/text/ElementIterator.java, * javax/swing/text/EmptyAttributeSet.java, * javax/swing/text/FieldView.java, * javax/swing/text/FlowView.java, * javax/swing/text/GapContent.java, * javax/swing/text/GlyphView.java, * javax/swing/text/Highlighter.java, * javax/swing/text/InternationalFormatter.java, * javax/swing/text/JTextComponent.java, * javax/swing/text/Keymap.java, * javax/swing/text/LayeredHighlighter.java, * javax/swing/text/LayoutQueue.java, * javax/swing/text/MaskFormatter.java, * javax/swing/text/MutableAttributeSet.java, * javax/swing/text/NavigationFilter.java, * javax/swing/text/NumberFormatter.java, * javax/swing/text/ParagraphView.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/TabExpander.java, * javax/swing/text/TabSet.java, * javax/swing/text/TabStop.java, * javax/swing/text/TabableView.java, * javax/swing/text/TableView.java, * javax/swing/text/TextAction.java, * javax/swing/text/Utilities.java, * javax/swing/text/View.java, * javax/swing/text/ViewFactory.java, * javax/swing/text/WrappedPlainView.java, * javax/swing/text/html/BRView.java, * javax/swing/text/html/BlockView.java, * javax/swing/text/html/CSS.java, * javax/swing/text/html/CSSBorder.java, * javax/swing/text/html/CSSParser.java, * javax/swing/text/html/FormView.java, * javax/swing/text/html/HRuleView.java, * javax/swing/text/html/HTMLDocument.java, * javax/swing/text/html/HTMLEditorKit.java, * javax/swing/text/html/HTMLWriter.java, * javax/swing/text/html/ImageView.java, * javax/swing/text/html/InlineView.java, * javax/swing/text/html/ListView.java, * javax/swing/text/html/MinimalHTMLWriter.java, * javax/swing/text/html/MultiAttributeSet.java, * javax/swing/text/html/MultiStyle.java, * javax/swing/text/html/ParagraphView.java, * javax/swing/text/html/StyleSheet.java, * javax/swing/text/html/TableView.java, * javax/swing/text/html/ViewAttributeSet.java, * javax/swing/text/html/parser/Entity.java, * javax/swing/text/html/parser/Parser.java, * javax/swing/text/rtf/RTFParser.java, * javax/swing/text/rtf/RTFScanner.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/TreeNode.java, * javax/swing/tree/TreePath.java, * javax/swing/tree/TreeSelectionModel.java, * javax/swing/tree/VariableHeightLayoutCache.java, * javax/swing/undo/AbstractUndoableEdit.java, * javax/swing/undo/CompoundEdit.java, * javax/swing/undo/StateEdit.java, * javax/swing/undo/UndoManager.java, * javax/swing/undo/UndoableEdit.java, * javax/tools/FileObject.java, * javax/transaction/HeuristicCommitException.java, * javax/transaction/HeuristicMixedException.java, * javax/transaction/HeuristicRollbackException.java, * javax/transaction/InvalidTransactionException.java, * javax/transaction/NotSupportedException.java, * javax/transaction/RollbackException.java, * javax/transaction/Status.java, * javax/transaction/Synchronization.java, * javax/transaction/SystemException.java, * javax/transaction/Transaction.java, * javax/transaction/TransactionManager.java, * javax/transaction/TransactionRequiredException.java, * javax/transaction/TransactionRolledbackException.java, * javax/transaction/UserTransaction.java, * javax/transaction/xa/XAException.java, * javax/transaction/xa/XAResource.java, * javax/transaction/xa/Xid.java, * javax/xml/XMLConstants.java, * javax/xml/datatype/DatatypeConfigurationException.java, * javax/xml/datatype/DatatypeConstants.java, * javax/xml/datatype/DatatypeFactory.java, * javax/xml/datatype/Duration.java, * javax/xml/datatype/XMLGregorianCalendar.java, * javax/xml/namespace/NamespaceContext.java, * javax/xml/namespace/QName.java, * javax/xml/parsers/DocumentBuilder.java, * javax/xml/parsers/DocumentBuilderFactory.java, * javax/xml/parsers/FactoryConfigurationError.java, * javax/xml/parsers/ParserConfigurationException.java, * javax/xml/parsers/SAXParser.java, * javax/xml/parsers/SAXParserFactory.java, * javax/xml/stream/EventFilter.java, * javax/xml/stream/FactoryConfigurationError.java, * javax/xml/stream/Location.java, * javax/xml/stream/StreamFilter.java, * javax/xml/stream/XMLEventFactory.java, * javax/xml/stream/XMLEventReader.java, * javax/xml/stream/XMLEventWriter.java, * javax/xml/stream/XMLInputFactory.java, * javax/xml/stream/XMLOutputFactory.java, * javax/xml/stream/XMLReporter.java, * javax/xml/stream/XMLResolver.java, * javax/xml/stream/XMLStreamConstants.java, * javax/xml/stream/XMLStreamException.java, * javax/xml/stream/XMLStreamReader.java, * javax/xml/stream/XMLStreamWriter.java, * javax/xml/stream/events/Attribute.java, * javax/xml/stream/events/Characters.java, * javax/xml/stream/events/Comment.java, * javax/xml/stream/events/DTD.java, * javax/xml/stream/events/EndDocument.java, * javax/xml/stream/events/EndElement.java, * javax/xml/stream/events/EntityDeclaration.java, * javax/xml/stream/events/EntityReference.java, * javax/xml/stream/events/Namespace.java, * javax/xml/stream/events/NotationDeclaration.java, * javax/xml/stream/events/ProcessingInstruction.java, * javax/xml/stream/events/StartDocument.java, * javax/xml/stream/events/StartElement.java, * javax/xml/stream/events/XMLEvent.java, * javax/xml/stream/util/EventReaderDelegate.java, * javax/xml/stream/util/StreamReaderDelegate.java, * javax/xml/stream/util/XMLEventAllocator.java, * javax/xml/stream/util/XMLEventConsumer.java, * javax/xml/transform/ErrorListener.java, * javax/xml/transform/OutputKeys.java, * javax/xml/transform/Result.java, * javax/xml/transform/Source.java, * javax/xml/transform/SourceLocator.java, * javax/xml/transform/Templates.java, * javax/xml/transform/Transformer.java, * javax/xml/transform/TransformerConfigurationException.java, * javax/xml/transform/TransformerException.java, * javax/xml/transform/TransformerFactory.java, * javax/xml/transform/TransformerFactoryConfigurationError.java, * javax/xml/transform/URIResolver.java, * javax/xml/transform/dom/DOMLocator.java, * javax/xml/transform/dom/DOMResult.java, * javax/xml/transform/dom/DOMSource.java, * javax/xml/transform/sax/SAXResult.java, * javax/xml/transform/sax/SAXSource.java, * javax/xml/transform/sax/SAXTransformerFactory.java, * javax/xml/transform/sax/TemplatesHandler.java, * javax/xml/transform/sax/TransformerHandler.java, * javax/xml/transform/stream/StreamResult.java, * javax/xml/transform/stream/StreamSource.java, * javax/xml/validation/Schema.java, * javax/xml/validation/SchemaFactory.java, * javax/xml/validation/SchemaFactoryLoader.java, * javax/xml/validation/TypeInfoProvider.java, * javax/xml/validation/Validator.java, * javax/xml/validation/ValidatorHandler.java, * javax/xml/xpath/XPath.java, * javax/xml/xpath/XPathConstants.java, * javax/xml/xpath/XPathException.java, * javax/xml/xpath/XPathExpression.java, * javax/xml/xpath/XPathExpressionException.java, * javax/xml/xpath/XPathFactory.java, * javax/xml/xpath/XPathFactoryConfigurationException.java, * javax/xml/xpath/XPathFunction.java, * javax/xml/xpath/XPathFunctionException.java, * javax/xml/xpath/XPathFunctionResolver.java, * javax/xml/xpath/XPathVariableResolver.java, * org/omg/CORBA/ARG_IN.java, * org/omg/CORBA/ARG_INOUT.java, * org/omg/CORBA/ARG_OUT.java, * org/omg/CORBA/AnySeqHolder.java, * org/omg/CORBA/BAD_CONTEXT.java, * org/omg/CORBA/BAD_INV_ORDER.java, * org/omg/CORBA/BAD_OPERATION.java, * org/omg/CORBA/BAD_PARAM.java, * org/omg/CORBA/BAD_POLICY.java, * org/omg/CORBA/BAD_POLICY_TYPE.java, * org/omg/CORBA/BAD_POLICY_VALUE.java, * org/omg/CORBA/BAD_TYPECODE.java, * org/omg/CORBA/COMM_FAILURE.java, * org/omg/CORBA/CTX_RESTRICT_SCOPE.java, * org/omg/CORBA/CompletionStatus.java, * org/omg/CORBA/CompletionStatusHelper.java, * org/omg/CORBA/Context.java, * org/omg/CORBA/Current.java, * org/omg/CORBA/CurrentHelper.java, * org/omg/CORBA/CurrentHolder.java, * org/omg/CORBA/CustomMarshal.java, * org/omg/CORBA/CustomValue.java, * org/omg/CORBA/DATA_CONVERSION.java, * org/omg/CORBA/DataInputStream.java, * org/omg/CORBA/DataOutputStream.java, * org/omg/CORBA/DefinitionKind.java, * org/omg/CORBA/DefinitionKindHelper.java, * org/omg/CORBA/DynamicImplementation.java, * org/omg/CORBA/FREE_MEM.java, * org/omg/CORBA/FieldNameHelper.java, * org/omg/CORBA/IDLTypeHelper.java, * org/omg/CORBA/IMP_LIMIT.java, * org/omg/CORBA/INITIALIZE.java, * org/omg/CORBA/INTERNAL.java, * org/omg/CORBA/INTF_REPOS.java, * org/omg/CORBA/INVALID_TRANSACTION.java, * org/omg/CORBA/INV_FLAG.java, * org/omg/CORBA/INV_IDENT.java, * org/omg/CORBA/INV_OBJREF.java, * org/omg/CORBA/INV_POLICY.java, * org/omg/CORBA/IRObject.java, * org/omg/CORBA/IRObjectOperations.java, * org/omg/CORBA/IdentifierHelper.java, * org/omg/CORBA/LocalObject.java, * org/omg/CORBA/LongSeqHolder.java, * org/omg/CORBA/MARSHAL.java, * org/omg/CORBA/NO_IMPLEMENT.java, * org/omg/CORBA/NO_MEMORY.java, * org/omg/CORBA/NO_PERMISSION.java, * org/omg/CORBA/NO_RESOURCES.java, * org/omg/CORBA/NO_RESPONSE.java, * org/omg/CORBA/NVList.java, * org/omg/CORBA/OBJECT_NOT_EXIST.java, * org/omg/CORBA/OBJ_ADAPTER.java, * org/omg/CORBA/OMGVMCID.java, * org/omg/CORBA/ORB.java, * org/omg/CORBA/ObjectHelper.java, * org/omg/CORBA/ObjectHolder.java, * org/omg/CORBA/PERSIST_STORE.java, * org/omg/CORBA/ParameterMode.java, * org/omg/CORBA/ParameterModeHelper.java, * org/omg/CORBA/PolicyErrorCodeHelper.java, * org/omg/CORBA/PolicyErrorHelper.java, * org/omg/CORBA/PolicyErrorHolder.java, * org/omg/CORBA/PolicyHelper.java, * org/omg/CORBA/PolicyHolder.java, * org/omg/CORBA/PolicyListHelper.java, * org/omg/CORBA/PolicyListHolder.java, * org/omg/CORBA/PolicyOperations.java, * org/omg/CORBA/PolicyTypeHelper.java, * org/omg/CORBA/RepositoryIdHelper.java, * org/omg/CORBA/Request.java, * org/omg/CORBA/ServiceDetailHelper.java, * org/omg/CORBA/ServiceInformationHelper.java, * org/omg/CORBA/SetOverrideTypeHelper.java, * org/omg/CORBA/StringValueHelper.java, * org/omg/CORBA/StructMember.java, * org/omg/CORBA/StructMemberHelper.java, * org/omg/CORBA/SystemException.java, * org/omg/CORBA/TCKind.java, * org/omg/CORBA/TRANSACTION_REQUIRED.java, * org/omg/CORBA/TRANSACTION_ROLLEDBACK.java, * org/omg/CORBA/TRANSIENT.java, * org/omg/CORBA/TypeCode.java, * org/omg/CORBA/TypeCodePackage/BadKind.java, * org/omg/CORBA/TypeCodePackage/Bounds.java, * org/omg/CORBA/UNSUPPORTED_POLICY.java, * org/omg/CORBA/UNSUPPORTED_POLICY_VALUE.java, * org/omg/CORBA/UnionMemberHelper.java, * org/omg/CORBA/UnknownUserException.java, * org/omg/CORBA/UnknownUserExceptionHolder.java, * org/omg/CORBA/ValueBaseHelper.java, * org/omg/CORBA/ValueBaseHolder.java, * org/omg/CORBA/ValueMemberHelper.java, * org/omg/CORBA/VersionSpecHelper.java, * org/omg/CORBA/VisibilityHelper.java, * org/omg/CORBA/WStringValueHelper.java, * org/omg/CORBA/WrongTransactionHelper.java, * org/omg/CORBA/WrongTransactionHolder.java, * org/omg/CORBA/_IDLTypeStub.java, * org/omg/CORBA/_PolicyStub.java, * org/omg/CORBA/portable/CustomValue.java, * org/omg/CORBA/portable/Delegate.java, * org/omg/CORBA/portable/ObjectImpl.java, * org/omg/CORBA/portable/StreamableValue.java, * org/omg/CORBA/portable/ValueBase.java, * org/omg/CORBA_2_3/ORB.java, * org/omg/CORBA_2_3/portable/Delegate.java, * org/omg/CORBA_2_3/portable/InputStream.java, * org/omg/CORBA_2_3/portable/ObjectImpl.java, * org/omg/CORBA_2_3/portable/OutputStream.java, * org/omg/CosNaming/BindingHelper.java, * org/omg/CosNaming/BindingIterator.java, * org/omg/CosNaming/BindingIteratorHelper.java, * org/omg/CosNaming/BindingIteratorOperations.java, * org/omg/CosNaming/BindingIteratorPOA.java, * org/omg/CosNaming/BindingType.java, * org/omg/CosNaming/BindingTypeHelper.java, * org/omg/CosNaming/IstringHelper.java, * org/omg/CosNaming/NameComponentHelper.java, * org/omg/CosNaming/NameHelper.java, * org/omg/CosNaming/NamingContext.java, * org/omg/CosNaming/NamingContextExtHelper.java, * org/omg/CosNaming/NamingContextExtPOA.java, * org/omg/CosNaming/NamingContextExtPackage/InvalidAddress.java, * org/omg/CosNaming/NamingContextHelper.java, * org/omg/CosNaming/NamingContextPOA.java, * org/omg/CosNaming/NamingContextPackage/AlreadyBound.java, * org/omg/CosNaming/NamingContextPackage/CannotProceed.java, * org/omg/CosNaming/NamingContextPackage/CannotProceedHelper.java, * org/omg/CosNaming/NamingContextPackage/InvalidName.java, * org/omg/CosNaming/NamingContextPackage/InvalidNameHelper.java, * org/omg/CosNaming/NamingContextPackage/NotEmptyHelper.java, * org/omg/CosNaming/NamingContextPackage/NotFound.java, * org/omg/CosNaming/NamingContextPackage/NotFoundHelper.java, * org/omg/CosNaming/NamingContextPackage/NotFoundReason.java, * org/omg/CosNaming/NamingContextPackage/NotFoundReasonHelper.java, * org/omg/CosNaming/NamingContextPackage/NotFoundReasonHolder.java, * org/omg/CosNaming/_BindingIteratorImplBase.java, * org/omg/CosNaming/_BindingIteratorStub.java, * org/omg/CosNaming/_NamingContextExtStub.java, * org/omg/CosNaming/_NamingContextStub.java, * org/omg/Dynamic/Parameter.java, * org/omg/DynamicAny/AnySeqHelper.java, * org/omg/DynamicAny/DynAny.java, * org/omg/DynamicAny/DynAnyFactoryHelper.java, * org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCode.java, * org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCodeHelper.java, * org/omg/DynamicAny/DynAnyHelper.java, * org/omg/DynamicAny/DynAnyPackage/InvalidValue.java, * org/omg/DynamicAny/DynAnyPackage/InvalidValueHelper.java, * org/omg/DynamicAny/DynAnyPackage/TypeMismatch.java, * org/omg/DynamicAny/DynAnyPackage/TypeMismatchHelper.java, * org/omg/DynamicAny/DynAnySeqHelper.java, * org/omg/DynamicAny/DynArrayHelper.java, * org/omg/DynamicAny/DynEnumHelper.java, * org/omg/DynamicAny/DynFixedHelper.java, * org/omg/DynamicAny/DynSequenceHelper.java, * org/omg/DynamicAny/DynStructHelper.java, * org/omg/DynamicAny/DynUnionHelper.java, * org/omg/DynamicAny/DynValueBox.java, * org/omg/DynamicAny/DynValueCommonOperations.java, * org/omg/DynamicAny/DynValueHelper.java, * org/omg/DynamicAny/FieldNameHelper.java, * org/omg/DynamicAny/NameDynAnyPairHelper.java, * org/omg/DynamicAny/NameDynAnyPairSeqHelper.java, * org/omg/DynamicAny/NameValuePair.java, * org/omg/DynamicAny/NameValuePairHelper.java, * org/omg/DynamicAny/NameValuePairSeqHelper.java, * org/omg/DynamicAny/_DynAnyFactoryStub.java, * org/omg/DynamicAny/_DynAnyStub.java, * org/omg/DynamicAny/_DynArrayStub.java, * org/omg/DynamicAny/_DynEnumStub.java, * org/omg/DynamicAny/_DynFixedStub.java, * org/omg/DynamicAny/_DynSequenceStub.java, * org/omg/DynamicAny/_DynStructStub.java, * org/omg/DynamicAny/_DynUnionStub.java, * org/omg/DynamicAny/_DynValueStub.java, * org/omg/IOP/Codec.java, * org/omg/IOP/CodecFactory.java, * org/omg/IOP/CodecFactoryHelper.java, * org/omg/IOP/CodecFactoryOperations.java, * org/omg/IOP/CodecFactoryPackage/UnknownEncoding.java, * org/omg/IOP/CodecFactoryPackage/UnknownEncodingHelper.java, * org/omg/IOP/CodecOperations.java, * org/omg/IOP/CodecPackage/FormatMismatch.java, * org/omg/IOP/CodecPackage/FormatMismatchHelper.java, * org/omg/IOP/CodecPackage/InvalidTypeForEncoding.java, * org/omg/IOP/CodecPackage/InvalidTypeForEncodingHelper.java, * org/omg/IOP/CodecPackage/TypeMismatch.java, * org/omg/IOP/CodecPackage/TypeMismatchHelper.java, * org/omg/IOP/ComponentIdHelper.java, * org/omg/IOP/Encoding.java, * org/omg/IOP/IOR.java, * org/omg/IOP/IORHelper.java, * org/omg/IOP/IORHolder.java, * org/omg/IOP/MultipleComponentProfileHelper.java, * org/omg/IOP/MultipleComponentProfileHolder.java, * org/omg/IOP/ProfileIdHelper.java, * org/omg/IOP/ServiceContext.java, * org/omg/IOP/ServiceContextHelper.java, * org/omg/IOP/ServiceContextHolder.java, * org/omg/IOP/ServiceContextListHelper.java, * org/omg/IOP/ServiceContextListHolder.java, * org/omg/IOP/ServiceIdHelper.java, * org/omg/IOP/TaggedComponent.java, * org/omg/IOP/TaggedComponentHelper.java, * org/omg/IOP/TaggedComponentHolder.java, * org/omg/IOP/TaggedProfile.java, * org/omg/IOP/TaggedProfileHelper.java, * org/omg/IOP/TaggedProfileHolder.java, * org/omg/IOP/TransactionService.java, * org/omg/Messaging/SYNC_WITH_TRANSPORT.java, * org/omg/Messaging/SyncScopeHelper.java, * org/omg/PortableInterceptor/AdapterManagerIdHelper.java, * org/omg/PortableInterceptor/AdapterNameHelper.java, * org/omg/PortableInterceptor/AdapterStateHelper.java, * org/omg/PortableInterceptor/ClientRequestInfo.java, * org/omg/PortableInterceptor/ClientRequestInfoOperations.java, * org/omg/PortableInterceptor/ClientRequestInterceptor.java, * org/omg/PortableInterceptor/ClientRequestInterceptorOperations.java, * org/omg/PortableInterceptor/Current.java, * org/omg/PortableInterceptor/CurrentHelper.java, * org/omg/PortableInterceptor/CurrentOperations.java, * org/omg/PortableInterceptor/ForwardRequest.java, * org/omg/PortableInterceptor/ForwardRequestHelper.java, * org/omg/PortableInterceptor/IORInfo.java, * org/omg/PortableInterceptor/IORInfoOperations.java, * org/omg/PortableInterceptor/IORInterceptor.java, * org/omg/PortableInterceptor/IORInterceptorOperations.java, * org/omg/PortableInterceptor/IORInterceptor_3_0.java, * org/omg/PortableInterceptor/IORInterceptor_3_0Helper.java, * org/omg/PortableInterceptor/IORInterceptor_3_0Holder.java, * org/omg/PortableInterceptor/IORInterceptor_3_0Operations.java, * org/omg/PortableInterceptor/Interceptor.java, * org/omg/PortableInterceptor/InterceptorOperations.java, * org/omg/PortableInterceptor/InvalidSlot.java, * org/omg/PortableInterceptor/InvalidSlotHelper.java, * org/omg/PortableInterceptor/LOCATION_FORWARD.java, * org/omg/PortableInterceptor/ORBIdHelper.java, * org/omg/PortableInterceptor/ORBInitInfo.java, * org/omg/PortableInterceptor/ORBInitInfoOperations.java, * org/omg/PortableInterceptor/ORBInitInfoPackage/DuplicateName.java, * org/omg/PortableInterceptor/ORBInitInfoPackage/DuplicateNameHelper.java, * org/omg/PortableInterceptor/ORBInitInfoPackage/InvalidName.java, * org/omg/PortableInterceptor/ORBInitInfoPackage/InvalidNameHelper.java, * org/omg/PortableInterceptor/ORBInitInfoPackage/ObjectIdHelper.java, * org/omg/PortableInterceptor/ORBInitializer.java, * org/omg/PortableInterceptor/ORBInitializerOperations.java, * org/omg/PortableInterceptor/ObjectIdHelper.java, * org/omg/PortableInterceptor/ObjectReferenceFactory.java, * org/omg/PortableInterceptor/ObjectReferenceFactoryHelper.java, * org/omg/PortableInterceptor/ObjectReferenceFactoryHolder.java, * org/omg/PortableInterceptor/ObjectReferenceTemplate.java, * org/omg/PortableInterceptor/ObjectReferenceTemplateHelper.java, * org/omg/PortableInterceptor/ObjectReferenceTemplateHolder.java, * org/omg/PortableInterceptor/ObjectReferenceTemplateSeqHelper.java, * org/omg/PortableInterceptor/ObjectReferenceTemplateSeqHolder.java, * org/omg/PortableInterceptor/PolicyFactory.java, * org/omg/PortableInterceptor/PolicyFactoryOperations.java, * org/omg/PortableInterceptor/RequestInfo.java, * org/omg/PortableInterceptor/RequestInfoOperations.java, * org/omg/PortableInterceptor/SUCCESSFUL.java, * org/omg/PortableInterceptor/SYSTEM_EXCEPTION.java, * org/omg/PortableInterceptor/ServerIdHelper.java, * org/omg/PortableInterceptor/ServerRequestInfo.java, * org/omg/PortableInterceptor/ServerRequestInfoOperations.java, * org/omg/PortableInterceptor/ServerRequestInterceptor.java, * org/omg/PortableInterceptor/ServerRequestInterceptorOperations.java, * org/omg/PortableInterceptor/TRANSPORT_RETRY.java, * org/omg/PortableInterceptor/USER_EXCEPTION.java, * org/omg/PortableInterceptor/_IORInterceptor_3_0Stub.java, * org/omg/PortableServer/AdapterActivator.java, * org/omg/PortableServer/AdapterActivatorOperations.java, * org/omg/PortableServer/Current.java, * org/omg/PortableServer/CurrentHelper.java, * org/omg/PortableServer/CurrentOperations.java, * org/omg/PortableServer/CurrentPackage/NoContext.java, * org/omg/PortableServer/CurrentPackage/NoContextHelper.java, * org/omg/PortableServer/DynamicImplementation.java, * org/omg/PortableServer/ForwardRequest.java, * org/omg/PortableServer/ForwardRequestHelper.java, * org/omg/PortableServer/ID_ASSIGNMENT_POLICY_ID.java, * org/omg/PortableServer/ID_UNIQUENESS_POLICY_ID.java, * org/omg/PortableServer/IMPLICIT_ACTIVATION_POLICY_ID.java, * org/omg/PortableServer/IdAssignmentPolicy.java, * org/omg/PortableServer/IdAssignmentPolicyOperations.java, * org/omg/PortableServer/IdAssignmentPolicyValue.java, * org/omg/PortableServer/IdUniquenessPolicy.java, * org/omg/PortableServer/IdUniquenessPolicyOperations.java, * org/omg/PortableServer/IdUniquenessPolicyValue.java, * org/omg/PortableServer/ImplicitActivationPolicy.java, * org/omg/PortableServer/ImplicitActivationPolicyOperations.java, * org/omg/PortableServer/ImplicitActivationPolicyValue.java, * org/omg/PortableServer/LifespanPolicy.java, * org/omg/PortableServer/LifespanPolicyOperations.java, * org/omg/PortableServer/LifespanPolicyValue.java, * org/omg/PortableServer/POA.java, * org/omg/PortableServer/POAHelper.java, * org/omg/PortableServer/POAManager.java, * org/omg/PortableServer/POAManagerOperations.java, * org/omg/PortableServer/POAManagerPackage/AdapterInactive.java, * org/omg/PortableServer/POAManagerPackage/AdapterInactiveHelper.java, * org/omg/PortableServer/POAManagerPackage/State.java, * org/omg/PortableServer/POAOperations.java, * org/omg/PortableServer/POAPackage/AdapterAlreadyExists.java, * org/omg/PortableServer/POAPackage/AdapterAlreadyExistsHelper.java, * org/omg/PortableServer/POAPackage/AdapterNonExistent.java, * org/omg/PortableServer/POAPackage/AdapterNonExistentHelper.java, * org/omg/PortableServer/POAPackage/InvalidPolicy.java, * org/omg/PortableServer/POAPackage/InvalidPolicyHelper.java, * org/omg/PortableServer/POAPackage/NoServant.java, * org/omg/PortableServer/POAPackage/NoServantHelper.java, * org/omg/PortableServer/POAPackage/ObjectAlreadyActive.java, * org/omg/PortableServer/POAPackage/ObjectAlreadyActiveHelper.java, * org/omg/PortableServer/POAPackage/ObjectNotActive.java, * org/omg/PortableServer/POAPackage/ObjectNotActiveHelper.java, * org/omg/PortableServer/POAPackage/ServantAlreadyActive.java, * org/omg/PortableServer/POAPackage/ServantAlreadyActiveHelper.java, * org/omg/PortableServer/POAPackage/ServantNotActive.java, * org/omg/PortableServer/POAPackage/ServantNotActiveHelper.java, * org/omg/PortableServer/POAPackage/WrongAdapter.java, * org/omg/PortableServer/POAPackage/WrongAdapterHelper.java, * org/omg/PortableServer/POAPackage/WrongPolicy.java, * org/omg/PortableServer/POAPackage/WrongPolicyHelper.java, * org/omg/PortableServer/RequestProcessingPolicy.java, * org/omg/PortableServer/RequestProcessingPolicyOperations.java, * org/omg/PortableServer/RequestProcessingPolicyValue.java, * org/omg/PortableServer/Servant.java, * org/omg/PortableServer/ServantActivator.java, * org/omg/PortableServer/ServantActivatorHelper.java, * org/omg/PortableServer/ServantActivatorOperations.java, * org/omg/PortableServer/ServantActivatorPOA.java, * org/omg/PortableServer/ServantLocator.java, * org/omg/PortableServer/ServantLocatorHelper.java, * org/omg/PortableServer/ServantLocatorOperations.java, * org/omg/PortableServer/ServantLocatorPOA.java, * org/omg/PortableServer/ServantLocatorPackage/CookieHolder.java, * org/omg/PortableServer/ServantManager.java, * org/omg/PortableServer/ServantManagerOperations.java, * org/omg/PortableServer/ServantRetentionPolicy.java, * org/omg/PortableServer/ServantRetentionPolicyOperations.java, * org/omg/PortableServer/ServantRetentionPolicyValue.java, * org/omg/PortableServer/ThreadPolicy.java, * org/omg/PortableServer/ThreadPolicyOperations.java, * org/omg/PortableServer/ThreadPolicyValue.java, * org/omg/PortableServer/_ServantActivatorStub.java, * org/omg/PortableServer/_ServantLocatorStub.java, * org/omg/PortableServer/portable/Delegate.java, * org/omg/SendingContext/RunTime.java, * org/omg/SendingContext/RunTimeOperations.java, * sun/misc/Service.java, * sun/misc/ServiceConfigurationError.java, * sun/reflect/annotation/AnnotationInvocationHandler.java, * sun/reflect/annotation/AnnotationParser.java, * sun/reflect/annotation/AnnotationType.java, * sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.java, * sun/reflect/annotation/ExceptionProxy.java, * tools/com/sun/javadoc/ClassDoc.java, * tools/com/sun/javadoc/ConstructorDoc.java, * tools/com/sun/javadoc/Doc.java, * tools/com/sun/javadoc/DocErrorReporter.java, * tools/com/sun/javadoc/Doclet.java, * tools/com/sun/javadoc/ExecutableMemberDoc.java, * tools/com/sun/javadoc/FieldDoc.java, * tools/com/sun/javadoc/MemberDoc.java, * tools/com/sun/javadoc/MethodDoc.java, * tools/com/sun/javadoc/PackageDoc.java, * tools/com/sun/javadoc/ParamTag.java, * tools/com/sun/javadoc/Parameter.java, * tools/com/sun/javadoc/ProgramElementDoc.java, * tools/com/sun/javadoc/RootDoc.java, * tools/com/sun/javadoc/SeeTag.java, * tools/com/sun/javadoc/SerialFieldTag.java, * tools/com/sun/javadoc/Tag.java, * tools/com/sun/javadoc/ThrowsTag.java, * tools/com/sun/javadoc/Type.java, * tools/com/sun/javadoc/TypeVariable.java, * tools/com/sun/tools/javadoc/Main.java, * tools/com/sun/tools/javah/Main.java, * tools/external/asm/org/objectweb/asm/AnnotationVisitor.java, * tools/external/asm/org/objectweb/asm/AnnotationWriter.java, * tools/external/asm/org/objectweb/asm/Attribute.java, * tools/external/asm/org/objectweb/asm/ByteVector.java, * tools/external/asm/org/objectweb/asm/ClassAdapter.java, * tools/external/asm/org/objectweb/asm/ClassReader.java, * tools/external/asm/org/objectweb/asm/ClassVisitor.java, * tools/external/asm/org/objectweb/asm/ClassWriter.java, * tools/external/asm/org/objectweb/asm/Edge.java, * tools/external/asm/org/objectweb/asm/FieldVisitor.java, * tools/external/asm/org/objectweb/asm/FieldWriter.java, * tools/external/asm/org/objectweb/asm/Handler.java, * tools/external/asm/org/objectweb/asm/Item.java, * tools/external/asm/org/objectweb/asm/Label.java, * tools/external/asm/org/objectweb/asm/MethodAdapter.java, * tools/external/asm/org/objectweb/asm/MethodVisitor.java, * tools/external/asm/org/objectweb/asm/MethodWriter.java, * tools/external/asm/org/objectweb/asm/Opcodes.java, * tools/external/asm/org/objectweb/asm/Type.java, * tools/external/asm/org/objectweb/asm/attrs/StackMapAttribute.java, * tools/external/asm/org/objectweb/asm/attrs/StackMapFrame.java, * tools/external/asm/org/objectweb/asm/attrs/StackMapTableAttribute.java, * tools/external/asm/org/objectweb/asm/attrs/StackMapType.java, * tools/external/asm/org/objectweb/asm/commons/AdviceAdapter.java, * tools/external/asm/org/objectweb/asm/commons/EmptyVisitor.java, * tools/external/asm/org/objectweb/asm/commons/GeneratorAdapter.java, * tools/external/asm/org/objectweb/asm/commons/LocalVariablesSorter.java, * tools/external/asm/org/objectweb/asm/commons/Method.java, * tools/external/asm/org/objectweb/asm/commons/SerialVersionUIDAdder.java, * tools/external/asm/org/objectweb/asm/commons/StaticInitMerger.java, * tools/external/asm/org/objectweb/asm/commons/TableSwitchGenerator.java, * tools/external/asm/org/objectweb/asm/optimizer/AnnotationConstantsCollector.java, * tools/external/asm/org/objectweb/asm/optimizer/ClassConstantsCollector.java, * tools/external/asm/org/objectweb/asm/optimizer/ClassOptimizer.java, * tools/external/asm/org/objectweb/asm/optimizer/Constant.java, * tools/external/asm/org/objectweb/asm/optimizer/ConstantPool.java, * tools/external/asm/org/objectweb/asm/optimizer/FieldConstantsCollector.java, * tools/external/asm/org/objectweb/asm/optimizer/JarOptimizer.java, * tools/external/asm/org/objectweb/asm/optimizer/MethodConstantsCollector.java, * tools/external/asm/org/objectweb/asm/optimizer/MethodOptimizer.java, * tools/external/asm/org/objectweb/asm/optimizer/NameMapping.java, * tools/external/asm/org/objectweb/asm/optimizer/Shrinker.java, * tools/external/asm/org/objectweb/asm/signature/SignatureReader.java, * tools/external/asm/org/objectweb/asm/signature/SignatureVisitor.java, * tools/external/asm/org/objectweb/asm/signature/SignatureWriter.java, * tools/external/asm/org/objectweb/asm/tree/AbstractInsnNode.java, * tools/external/asm/org/objectweb/asm/tree/AnnotationNode.java, * tools/external/asm/org/objectweb/asm/tree/ClassNode.java, * tools/external/asm/org/objectweb/asm/tree/FieldInsnNode.java, * tools/external/asm/org/objectweb/asm/tree/FieldNode.java, * tools/external/asm/org/objectweb/asm/tree/IincInsnNode.java, * tools/external/asm/org/objectweb/asm/tree/InnerClassNode.java, * tools/external/asm/org/objectweb/asm/tree/InsnNode.java, * tools/external/asm/org/objectweb/asm/tree/IntInsnNode.java, * tools/external/asm/org/objectweb/asm/tree/JumpInsnNode.java, * tools/external/asm/org/objectweb/asm/tree/LabelNode.java, * tools/external/asm/org/objectweb/asm/tree/LdcInsnNode.java, * tools/external/asm/org/objectweb/asm/tree/LineNumberNode.java, * tools/external/asm/org/objectweb/asm/tree/LocalVariableNode.java, * tools/external/asm/org/objectweb/asm/tree/LookupSwitchInsnNode.java, * tools/external/asm/org/objectweb/asm/tree/MemberNode.java, * tools/external/asm/org/objectweb/asm/tree/MethodInsnNode.java, * tools/external/asm/org/objectweb/asm/tree/MethodNode.java, * tools/external/asm/org/objectweb/asm/tree/MultiANewArrayInsnNode.java, * tools/external/asm/org/objectweb/asm/tree/TableSwitchInsnNode.java, * tools/external/asm/org/objectweb/asm/tree/TryCatchBlockNode.java, * tools/external/asm/org/objectweb/asm/tree/TypeInsnNode.java, * tools/external/asm/org/objectweb/asm/tree/VarInsnNode.java, * tools/external/asm/org/objectweb/asm/tree/analysis/Analyzer.java, * tools/external/asm/org/objectweb/asm/tree/analysis/AnalyzerException.java, * tools/external/asm/org/objectweb/asm/tree/analysis/BasicInterpreter.java, * tools/external/asm/org/objectweb/asm/tree/analysis/BasicValue.java, * tools/external/asm/org/objectweb/asm/tree/analysis/BasicVerifier.java, * tools/external/asm/org/objectweb/asm/tree/analysis/DataflowInterpreter.java, * tools/external/asm/org/objectweb/asm/tree/analysis/DataflowValue.java, * tools/external/asm/org/objectweb/asm/tree/analysis/Frame.java, * tools/external/asm/org/objectweb/asm/tree/analysis/IntMap.java, * tools/external/asm/org/objectweb/asm/tree/analysis/Interpreter.java, * tools/external/asm/org/objectweb/asm/tree/analysis/SimpleVerifier.java, * tools/external/asm/org/objectweb/asm/tree/analysis/SmallSet.java, * tools/external/asm/org/objectweb/asm/tree/analysis/Subroutine.java, * tools/external/asm/org/objectweb/asm/tree/analysis/Value.java, * tools/external/asm/org/objectweb/asm/util/ASMifierAbstractVisitor.java, * tools/external/asm/org/objectweb/asm/util/ASMifierAnnotationVisitor.java, * tools/external/asm/org/objectweb/asm/util/ASMifierClassVisitor.java, * tools/external/asm/org/objectweb/asm/util/ASMifierFieldVisitor.java, * tools/external/asm/org/objectweb/asm/util/ASMifierMethodVisitor.java, * tools/external/asm/org/objectweb/asm/util/AbstractVisitor.java, * tools/external/asm/org/objectweb/asm/util/CheckAnnotationAdapter.java, * tools/external/asm/org/objectweb/asm/util/CheckClassAdapter.java, * tools/external/asm/org/objectweb/asm/util/CheckMethodAdapter.java, * tools/external/asm/org/objectweb/asm/util/TraceAbstractVisitor.java, * tools/external/asm/org/objectweb/asm/util/TraceAnnotationVisitor.java, * tools/external/asm/org/objectweb/asm/util/TraceClassVisitor.java, * tools/external/asm/org/objectweb/asm/util/TraceFieldVisitor.java, * tools/external/asm/org/objectweb/asm/util/TraceMethodVisitor.java, * tools/external/asm/org/objectweb/asm/util/TraceSignatureVisitor.java, * tools/external/asm/org/objectweb/asm/util/attrs/ASMStackMapAttribute.java, * tools/external/asm/org/objectweb/asm/util/attrs/ASMStackMapTableAttribute.java, * tools/external/asm/org/objectweb/asm/util/attrs/ASMifiable.java, * tools/external/asm/org/objectweb/asm/util/attrs/Traceable.java, * tools/external/asm/org/objectweb/asm/xml/ASMContentHandler.java, * tools/external/asm/org/objectweb/asm/xml/Processor.java, * tools/external/asm/org/objectweb/asm/xml/SAXAdapter.java, * tools/external/asm/org/objectweb/asm/xml/SAXAnnotationAdapter.java, * tools/external/asm/org/objectweb/asm/xml/SAXClassAdapter.java, * tools/external/asm/org/objectweb/asm/xml/SAXCodeAdapter.java, * tools/external/asm/org/objectweb/asm/xml/SAXFieldAdapter.java, * tools/generated/gnu/classpath/tools/gjdoc/expr/JavaLexer.java, * tools/generated/gnu/classpath/tools/gjdoc/expr/JavaRecognizer.java, * tools/generated/gnu/classpath/tools/gjdoc/expr/JavaTokenTypes.java, * tools/gnu/classpath/tools/FileSystemClassLoader.java, * tools/gnu/classpath/tools/IOToolkit.java, * tools/gnu/classpath/tools/MalformedInputEvent.java, * tools/gnu/classpath/tools/MalformedInputListener.java, * tools/gnu/classpath/tools/NotifyingInputStreamReader.java, * tools/gnu/classpath/tools/StringToolkit.java, * tools/gnu/classpath/tools/appletviewer/AppletSecurityManager.java, * tools/gnu/classpath/tools/appletviewer/AppletTag.java, * tools/gnu/classpath/tools/appletviewer/CommonAppletContext.java, * tools/gnu/classpath/tools/appletviewer/CommonAppletStub.java, * tools/gnu/classpath/tools/appletviewer/Main.java, * tools/gnu/classpath/tools/appletviewer/PluginAppletViewer.java, * tools/gnu/classpath/tools/appletviewer/PluginAppletWindow.java, * tools/gnu/classpath/tools/appletviewer/StandaloneAppletViewer.java, * tools/gnu/classpath/tools/appletviewer/StandaloneAppletWindow.java, * tools/gnu/classpath/tools/appletviewer/TagParser.java, * tools/gnu/classpath/tools/common/CallbackUtil.java, * tools/gnu/classpath/tools/common/ClasspathToolParser.java, * tools/gnu/classpath/tools/common/Persistent.java, * tools/gnu/classpath/tools/common/ProviderUtil.java, * tools/gnu/classpath/tools/common/SecurityProviderInfo.java, * tools/gnu/classpath/tools/doclets/AbstractDoclet.java, * tools/gnu/classpath/tools/doclets/DocletConfigurationException.java, * tools/gnu/classpath/tools/doclets/DocletOption.java, * tools/gnu/classpath/tools/doclets/DocletOptionColonSeparated.java, * tools/gnu/classpath/tools/doclets/DocletOptionFile.java, * tools/gnu/classpath/tools/doclets/DocletOptionFlag.java, * tools/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.java, * tools/gnu/classpath/tools/doclets/DocletOptionString.java, * tools/gnu/classpath/tools/doclets/InlineTagRenderer.java, * tools/gnu/classpath/tools/doclets/InvalidPackageWildcardException.java, * tools/gnu/classpath/tools/doclets/PackageGroup.java, * tools/gnu/classpath/tools/doclets/PackageMatcher.java, * tools/gnu/classpath/tools/doclets/StandardTaglet.java, * tools/gnu/classpath/tools/doclets/TagletPrinter.java, * tools/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.java, * tools/gnu/classpath/tools/doclets/htmldoclet/CssClass.java, * tools/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.java, * tools/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.java, * tools/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.java, * tools/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.java, * tools/gnu/classpath/tools/doclets/xmldoclet/Driver.java, * tools/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.java, * tools/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.java, * tools/gnu/classpath/tools/doclets/xmldoclet/TargetContext.java, * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.java, * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.java, * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.java, * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.java, * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.java, * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.java, * tools/gnu/classpath/tools/getopt/FileArgumentCallback.java, * tools/gnu/classpath/tools/getopt/Option.java, * tools/gnu/classpath/tools/getopt/OptionGroup.java, * tools/gnu/classpath/tools/getopt/Parser.java, * tools/gnu/classpath/tools/gjdoc/AbstractTagImpl.java, * tools/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.java, * tools/gnu/classpath/tools/gjdoc/ClassDocImpl.java, * tools/gnu/classpath/tools/gjdoc/ClassDocProxy.java, * tools/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.java, * tools/gnu/classpath/tools/gjdoc/ConstructorDocImpl.java, * tools/gnu/classpath/tools/gjdoc/Debug.java, * tools/gnu/classpath/tools/gjdoc/DirectoryTree.java, * tools/gnu/classpath/tools/gjdoc/DocImpl.java, * tools/gnu/classpath/tools/gjdoc/ErrorReporter.java, * tools/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.java, * tools/gnu/classpath/tools/gjdoc/FieldDocImpl.java, * tools/gnu/classpath/tools/gjdoc/GjdocPackageDoc.java, * tools/gnu/classpath/tools/gjdoc/GjdocRootDoc.java, * tools/gnu/classpath/tools/gjdoc/InheritDocTagImpl.java, * tools/gnu/classpath/tools/gjdoc/JavadocWrapper.java, * tools/gnu/classpath/tools/gjdoc/LinkTagImpl.java, * tools/gnu/classpath/tools/gjdoc/Main.java, * tools/gnu/classpath/tools/gjdoc/MemberDocImpl.java, * tools/gnu/classpath/tools/gjdoc/MethodDocImpl.java, * tools/gnu/classpath/tools/gjdoc/PackageDocImpl.java, * tools/gnu/classpath/tools/gjdoc/ParamTagImpl.java, * tools/gnu/classpath/tools/gjdoc/ParameterImpl.java, * tools/gnu/classpath/tools/gjdoc/ParseException.java, * tools/gnu/classpath/tools/gjdoc/Parser.java, * tools/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.java, * tools/gnu/classpath/tools/gjdoc/RootDocImpl.java, * tools/gnu/classpath/tools/gjdoc/SeeTagImpl.java, * tools/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.java, * tools/gnu/classpath/tools/gjdoc/SourcePositionImpl.java, * tools/gnu/classpath/tools/gjdoc/TagContainer.java, * tools/gnu/classpath/tools/gjdoc/TagImpl.java, * tools/gnu/classpath/tools/gjdoc/TemporaryStore.java, * tools/gnu/classpath/tools/gjdoc/TextTagImpl.java, * tools/gnu/classpath/tools/gjdoc/ThrowsTagImpl.java, * tools/gnu/classpath/tools/gjdoc/Timer.java, * tools/gnu/classpath/tools/gjdoc/TimerDoclet.java, * tools/gnu/classpath/tools/gjdoc/TypeImpl.java, * tools/gnu/classpath/tools/gjdoc/TypeVariableImpl.java, * tools/gnu/classpath/tools/gjdoc/ValueTagImpl.java, * tools/gnu/classpath/tools/gjdoc/WritableType.java, * tools/gnu/classpath/tools/gjdoc/expr/AdditionExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/AndExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.java, * tools/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantByte.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantChar.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantDouble.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantFloat.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantInteger.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantLong.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantNull.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantShort.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantString.java, * tools/gnu/classpath/tools/gjdoc/expr/Context.java, * tools/gnu/classpath/tools/gjdoc/expr/DivisionExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/EqualExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/Evaluator.java, * tools/gnu/classpath/tools/gjdoc/expr/EvaluatorEnvironment.java, * tools/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/Expression.java, * tools/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.java, * tools/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/LessThanExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/ModuloExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/NegateExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/NotExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/Type.java, * tools/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/UnaryExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.java, * tools/gnu/classpath/tools/jar/Creator.java, * tools/gnu/classpath/tools/jar/Indexer.java, * tools/gnu/classpath/tools/jar/Main.java, * tools/gnu/classpath/tools/jar/Updater.java, * tools/gnu/classpath/tools/jarsigner/JarVerifier.java, * tools/gnu/classpath/tools/jarsigner/Main.java, * tools/gnu/classpath/tools/jarsigner/SFHelper.java, * tools/gnu/classpath/tools/java2xhtml/Java2xhtml.java, * tools/gnu/classpath/tools/javah/ClassWrapper.java, * tools/gnu/classpath/tools/javah/CniPrintStream.java, * tools/gnu/classpath/tools/javah/GcjhMain.java, * tools/gnu/classpath/tools/javah/JniHelper.java, * tools/gnu/classpath/tools/javah/JniIncludePrinter.java, * tools/gnu/classpath/tools/javah/JniStubPrinter.java, * tools/gnu/classpath/tools/javah/Keywords.java, * tools/gnu/classpath/tools/javah/Main.java, * tools/gnu/classpath/tools/javah/MethodHelper.java, * tools/gnu/classpath/tools/keytool/CACertCmd.java, * tools/gnu/classpath/tools/keytool/CertReqCmd.java, * tools/gnu/classpath/tools/keytool/Command.java, * tools/gnu/classpath/tools/keytool/DeleteCmd.java, * tools/gnu/classpath/tools/keytool/ExportCmd.java, * tools/gnu/classpath/tools/keytool/GenKeyCmd.java, * tools/gnu/classpath/tools/keytool/IdentityDBCmd.java, * tools/gnu/classpath/tools/keytool/ImportCmd.java, * tools/gnu/classpath/tools/keytool/KeyCloneCmd.java, * tools/gnu/classpath/tools/keytool/KeyPasswdCmd.java, * tools/gnu/classpath/tools/keytool/ListCmd.java, * tools/gnu/classpath/tools/keytool/PrintCertCmd.java, * tools/gnu/classpath/tools/keytool/SelfCertCmd.java, * tools/gnu/classpath/tools/keytool/StorePasswdCmd.java, * tools/gnu/classpath/tools/orbd/Main.java, * tools/gnu/classpath/tools/orbd/PersistentContext.java, * tools/gnu/classpath/tools/orbd/PersistentContextMap.java, * tools/gnu/classpath/tools/orbd/PersistentMap.java, * tools/gnu/classpath/tools/rmic/AbstractMethodGenerator.java, * tools/gnu/classpath/tools/rmic/ClassRmicCompiler.java, * tools/gnu/classpath/tools/rmic/CompilationError.java, * tools/gnu/classpath/tools/rmic/Generator.java, * tools/gnu/classpath/tools/rmic/GiopIo.java, * tools/gnu/classpath/tools/rmic/HashFinder.java, * tools/gnu/classpath/tools/rmic/Main.java, * tools/gnu/classpath/tools/rmic/MethodGenerator.java, * tools/gnu/classpath/tools/rmic/RMICException.java, * tools/gnu/classpath/tools/rmic/RmiMethodGenerator.java, * tools/gnu/classpath/tools/rmic/RmicBackend.java, * tools/gnu/classpath/tools/rmic/SourceGiopRmicCompiler.java, * tools/gnu/classpath/tools/rmic/SourceRmicCompiler.java, * tools/gnu/classpath/tools/rmic/Variables.java, * tools/gnu/classpath/tools/rmic/WrapUnWrapper.java, * tools/gnu/classpath/tools/rmid/ActivationSystemImpl.java, * tools/gnu/classpath/tools/rmid/ActivationSystemImpl_Stub.java, * tools/gnu/classpath/tools/rmid/Main.java, * tools/gnu/classpath/tools/rmid/PersistentBidiHashTable.java, * tools/gnu/classpath/tools/rmiregistry/Main.java, * tools/gnu/classpath/tools/rmiregistry/PersistentHashTable.java, * tools/gnu/classpath/tools/rmiregistry/RegistryImpl.java, * tools/gnu/classpath/tools/rmiregistry/RegistryImpl_Skel.java, * tools/gnu/classpath/tools/rmiregistry/RegistryImpl_Stub.java, * tools/gnu/classpath/tools/serialver/SerialVer.java, * tools/gnu/classpath/tools/taglets/AuthorTaglet.java, * tools/gnu/classpath/tools/taglets/CodeTaglet.java, * tools/gnu/classpath/tools/taglets/CopyrightTaglet.java, * tools/gnu/classpath/tools/taglets/DeprecatedTaglet.java, * tools/gnu/classpath/tools/taglets/GenericTaglet.java, * tools/gnu/classpath/tools/taglets/GnuExtendedTaglet.java, * tools/gnu/classpath/tools/taglets/SinceTaglet.java, * tools/gnu/classpath/tools/taglets/TagletContext.java, * tools/gnu/classpath/tools/taglets/ValueTaglet.java, * tools/gnu/classpath/tools/taglets/VersionTaglet.java, * tools/gnu/classpath/tools/tnameserv/Main.java, * vm/reference/gnu/classpath/jdwp/VMFrame.java, * vm/reference/gnu/classpath/jdwp/VMIdManager.java, * vm/reference/gnu/classpath/jdwp/VMMethod.java, * vm/reference/gnu/classpath/jdwp/VMVirtualMachine.java, * vm/reference/gnu/java/lang/VMCPStringBuilder.java, * vm/reference/gnu/java/lang/VMInstrumentationImpl.java, * vm/reference/gnu/java/lang/management/VMClassLoadingMXBeanImpl.java, * vm/reference/gnu/java/lang/management/VMCompilationMXBeanImpl.java, * vm/reference/gnu/java/lang/management/VMGarbageCollectorMXBeanImpl.java, * vm/reference/gnu/java/lang/management/VMMemoryMXBeanImpl.java, * vm/reference/gnu/java/lang/management/VMMemoryManagerMXBeanImpl.java, * vm/reference/gnu/java/lang/management/VMMemoryPoolMXBeanImpl.java, * vm/reference/gnu/java/lang/management/VMThreadMXBeanImpl.java, * vm/reference/gnu/java/net/VMPlainDatagramSocketImpl.java, * vm/reference/gnu/java/net/VMPlainSocketImpl.java, * vm/reference/gnu/java/nio/VMChannel.java, * vm/reference/gnu/java/nio/VMPipe.java, * vm/reference/gnu/java/nio/VMSelector.java, * vm/reference/gnu/java/security/jce/prng/VMSecureRandom.java, * vm/reference/java/io/VMFile.java, * vm/reference/java/io/VMObjectInputStream.java, * vm/reference/java/io/VMObjectStreamClass.java, * vm/reference/java/lang/VMClass.java, * vm/reference/java/lang/VMClassLoader.java, * vm/reference/java/lang/VMDouble.java, * vm/reference/java/lang/VMFloat.java, * vm/reference/java/lang/VMMath.java, * vm/reference/java/lang/VMObject.java, * vm/reference/java/lang/VMProcess.java, * vm/reference/java/lang/VMRuntime.java, * vm/reference/java/lang/VMString.java, * vm/reference/java/lang/VMSystem.java, * vm/reference/java/lang/VMThread.java, * vm/reference/java/lang/reflect/VMConstructor.java, * vm/reference/java/lang/reflect/VMField.java, * vm/reference/java/lang/reflect/VMMethod.java, * vm/reference/java/net/VMNetworkInterface.java, * vm/reference/java/nio/channels/VMChannels.java, * vm/reference/java/security/VMAccessController.java, * vm/reference/java/security/VMSecureRandom.java, * vm/reference/java/util/VMTimeZone.java, * vm/reference/sun/misc/Unsafe.java, * vm/reference/sun/reflect/Reflection.java, * vm/reference/sun/reflect/misc/ReflectUtil.java: Normalise whitespace. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168680 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/classpath/gnu/xml/pipeline')
-rw-r--r--libjava/classpath/gnu/xml/pipeline/CallFilter.java160
-rw-r--r--libjava/classpath/gnu/xml/pipeline/DomConsumer.java1374
-rw-r--r--libjava/classpath/gnu/xml/pipeline/EventConsumer.java4
-rw-r--r--libjava/classpath/gnu/xml/pipeline/EventFilter.java636
-rw-r--r--libjava/classpath/gnu/xml/pipeline/LinkFilter.java192
-rw-r--r--libjava/classpath/gnu/xml/pipeline/NSFilter.java400
-rw-r--r--libjava/classpath/gnu/xml/pipeline/PipelineFactory.java1036
-rw-r--r--libjava/classpath/gnu/xml/pipeline/TeeConsumer.java310
-rw-r--r--libjava/classpath/gnu/xml/pipeline/TextConsumer.java26
-rw-r--r--libjava/classpath/gnu/xml/pipeline/ValidationConsumer.java2822
-rw-r--r--libjava/classpath/gnu/xml/pipeline/WellFormednessFilter.java330
-rw-r--r--libjava/classpath/gnu/xml/pipeline/XIncludeFilter.java620
-rw-r--r--libjava/classpath/gnu/xml/pipeline/XsltFilter.java100
13 files changed, 4005 insertions, 4005 deletions
diff --git a/libjava/classpath/gnu/xml/pipeline/CallFilter.java b/libjava/classpath/gnu/xml/pipeline/CallFilter.java
index 3b337517377..2398b868537 100644
--- a/libjava/classpath/gnu/xml/pipeline/CallFilter.java
+++ b/libjava/classpath/gnu/xml/pipeline/CallFilter.java
@@ -1,4 +1,4 @@
-/* CallFilter.java --
+/* CallFilter.java --
Copyright (C) 1999,2000,2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -99,11 +99,11 @@ import gnu.xml.util.XMLWriter;
*/
final public class CallFilter implements EventConsumer
{
- private Requestor req;
- private EventConsumer next;
- private URL target;
- private URLConnection conn;
- private ErrorHandler errHandler;
+ private Requestor req;
+ private EventConsumer next;
+ private URL target;
+ private URLConnection conn;
+ private ErrorHandler errHandler;
/**
@@ -113,13 +113,13 @@ final public class CallFilter implements EventConsumer
*
* @exception IOException if the URI isn't accepted as a URL
*/
- // constructor used by PipelineFactory
+ // constructor used by PipelineFactory
public CallFilter (String uri, EventConsumer next)
throws IOException
{
- this.next = next;
- req = new Requestor ();
- setCallTarget (uri);
+ this.next = next;
+ req = new Requestor ();
+ setCallTarget (uri);
}
/**
@@ -129,7 +129,7 @@ final public class CallFilter implements EventConsumer
final public void setCallTarget (String uri)
throws IOException
{
- target = new URL (uri);
+ target = new URL (uri);
}
/**
@@ -138,7 +138,7 @@ final public class CallFilter implements EventConsumer
*/
public void setErrorHandler (ErrorHandler handler)
{
- req.setErrorHandler (handler);
+ req.setErrorHandler (handler);
}
@@ -147,19 +147,19 @@ final public class CallFilter implements EventConsumer
*/
final public String getCallTarget ()
{
- return target.toString ();
+ return target.toString ();
}
/** Returns the content handler currently in use. */
final public org.xml.sax.ContentHandler getContentHandler ()
{
- return req;
+ return req;
}
/** Returns the DTD handler currently in use. */
final public DTDHandler getDTDHandler ()
{
- return req;
+ return req;
}
@@ -170,11 +170,11 @@ final public class CallFilter implements EventConsumer
final public Object getProperty (String id)
throws SAXNotRecognizedException
{
- if (EventFilter.DECL_HANDLER.equals (id))
- return req;
- if (EventFilter.LEXICAL_HANDLER.equals (id))
- return req;
- throw new SAXNotRecognizedException (id);
+ if (EventFilter.DECL_HANDLER.equals (id))
+ return req;
+ if (EventFilter.LEXICAL_HANDLER.equals (id))
+ return req;
+ throw new SAXNotRecognizedException (id);
}
@@ -187,71 +187,71 @@ final public class CallFilter implements EventConsumer
//
final class Requestor extends XMLWriter
{
- Requestor ()
- {
- super ((Writer)null);
- }
-
- public synchronized void startDocument () throws SAXException
- {
- // Connect to remote object and set up to send it XML text
- try {
- if (conn != null)
- throw new IllegalStateException ("call is being made");
-
- conn = target.openConnection ();
- conn.setDoOutput (true);
- conn.setRequestProperty ("Content-Type",
- "application/xml;charset=UTF-8");
-
- setWriter (new OutputStreamWriter (
- conn.getOutputStream (),
- "UTF8"), "UTF-8");
-
- } catch (IOException e) {
- fatal ("can't write (POST) to URI: " + target, e);
- }
-
- // NOW base class can safely write that text!
- super.startDocument ();
- }
-
- public void endDocument () throws SAXException
- {
- //
- // Finish writing the request (for HTTP, a POST);
- // this closes the output stream.
- //
- super.endDocument ();
-
- //
- // Receive the response.
- // Produce events for the next stage.
- //
- InputSource source;
- XMLReader producer;
- String encoding;
-
- try {
-
- source = new InputSource (conn.getInputStream ());
+ Requestor ()
+ {
+ super ((Writer)null);
+ }
+
+ public synchronized void startDocument () throws SAXException
+ {
+ // Connect to remote object and set up to send it XML text
+ try {
+ if (conn != null)
+ throw new IllegalStateException ("call is being made");
+
+ conn = target.openConnection ();
+ conn.setDoOutput (true);
+ conn.setRequestProperty ("Content-Type",
+ "application/xml;charset=UTF-8");
+
+ setWriter (new OutputStreamWriter (
+ conn.getOutputStream (),
+ "UTF8"), "UTF-8");
+
+ } catch (IOException e) {
+ fatal ("can't write (POST) to URI: " + target, e);
+ }
+
+ // NOW base class can safely write that text!
+ super.startDocument ();
+ }
+
+ public void endDocument () throws SAXException
+ {
+ //
+ // Finish writing the request (for HTTP, a POST);
+ // this closes the output stream.
+ //
+ super.endDocument ();
+
+ //
+ // Receive the response.
+ // Produce events for the next stage.
+ //
+ InputSource source;
+ XMLReader producer;
+ String encoding;
+
+ try {
+
+ source = new InputSource (conn.getInputStream ());
// FIXME if status is anything but success, report it!! It'd be good to
// save the request data just in case we need to deal with a forward.
- encoding = Resolver.getEncoding (conn.getContentType ());
- if (encoding != null)
- source.setEncoding (encoding);
+ encoding = Resolver.getEncoding (conn.getContentType ());
+ if (encoding != null)
+ source.setEncoding (encoding);
- producer = XMLReaderFactory.createXMLReader ();
- producer.setErrorHandler (getErrorHandler ());
- EventFilter.bind (producer, next);
- producer.parse (source);
- conn = null;
+ producer = XMLReaderFactory.createXMLReader ();
+ producer.setErrorHandler (getErrorHandler ());
+ EventFilter.bind (producer, next);
+ producer.parse (source);
+ conn = null;
- } catch (IOException e) {
- fatal ("I/O Exception reading response, " + e.getMessage (), e);
- }
- }
+ } catch (IOException e) {
+ fatal ("I/O Exception reading response, " + e.getMessage (), e);
+ }
+ }
}
}
diff --git a/libjava/classpath/gnu/xml/pipeline/DomConsumer.java b/libjava/classpath/gnu/xml/pipeline/DomConsumer.java
index 53f7f24a29f..141f36eca28 100644
--- a/libjava/classpath/gnu/xml/pipeline/DomConsumer.java
+++ b/libjava/classpath/gnu/xml/pipeline/DomConsumer.java
@@ -1,4 +1,4 @@
-/* DomConsumer.java --
+/* DomConsumer.java --
Copyright (C) 1999,2000,2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -105,17 +105,17 @@ import org.w3c.dom.Text;
*/
public class DomConsumer implements EventConsumer
{
- private Class domImpl;
+ private Class domImpl;
- private boolean hidingCDATA = true;
- private boolean hidingComments = true;
- private boolean hidingWhitespace = true;
- private boolean hidingReferences = true;
+ private boolean hidingCDATA = true;
+ private boolean hidingComments = true;
+ private boolean hidingWhitespace = true;
+ private boolean hidingReferences = true;
- private Handler handler;
- private ErrorHandler errHandler;
+ private Handler handler;
+ private ErrorHandler errHandler;
- private EventConsumer next;
+ private EventConsumer next;
// FIXME: this can't be a generic pipeline stage just now,
// since its input became a Class not a String (to be turned
@@ -127,16 +127,16 @@ public class DomConsumer implements EventConsumer
* of DOM when constructing its result value.
*
* @param impl class implementing {@link org.w3c.dom.Document Document}
- * which publicly exposes a default constructor
+ * which publicly exposes a default constructor
*
* @exception SAXException when there is a problem creating an
- * empty DOM document using the specified implementation
+ * empty DOM document using the specified implementation
*/
public DomConsumer (Class impl)
throws SAXException
{
- domImpl = impl;
- handler = new Handler (this);
+ domImpl = impl;
+ handler = new Handler (this);
}
/**
@@ -148,22 +148,22 @@ public class DomConsumer implements EventConsumer
*/
protected void setHandler (Handler h)
{
- handler = h;
+ handler = h;
}
private Document emptyDocument ()
throws SAXException
{
- try {
- return (Document) domImpl.newInstance ();
- } catch (IllegalAccessException e) {
- throw new SAXException ("can't access constructor: "
- + e.getMessage ());
- } catch (InstantiationException e) {
- throw new SAXException ("can't instantiate Document: "
- + e.getMessage ());
- }
+ try {
+ return (Document) domImpl.newInstance ();
+ } catch (IllegalAccessException e) {
+ throw new SAXException ("can't access constructor: "
+ + e.getMessage ());
+ } catch (InstantiationException e) {
+ throw new SAXException ("can't instantiate Document: "
+ + e.getMessage ());
+ }
}
@@ -178,18 +178,18 @@ public class DomConsumer implements EventConsumer
* copy of the input event stream, use a {@link TeeConsumer}.
*
* @param impl class implementing {@link org.w3c.dom.Document Document}
- * which publicly exposes a default constructor
+ * which publicly exposes a default constructor
* @param next receives a "replayed" sequence of parse events when
- * the <em>endDocument</em> method is invoked.
+ * the <em>endDocument</em> method is invoked.
*
* @exception SAXException when there is a problem creating an
- * empty DOM document using the specified DOM implementation
+ * empty DOM document using the specified DOM implementation
*/
public DomConsumer (Class impl, EventConsumer n)
throws SAXException
{
- this (impl);
- next = n;
+ this (impl);
+ next = n;
}
@@ -197,16 +197,16 @@ public class DomConsumer implements EventConsumer
* Returns the document constructed from the preceding
* sequence of events. This method should not be
* used again until another sequence of events has been
- * given to this EventConsumer.
+ * given to this EventConsumer.
*/
final public Document getDocument ()
{
- return handler.clearDocument ();
+ return handler.clearDocument ();
}
public void setErrorHandler (ErrorHandler handler)
{
- errHandler = handler;
+ errHandler = handler;
}
@@ -219,8 +219,8 @@ public class DomConsumer implements EventConsumer
*
* @see #setHidingReferences
*/
- final public boolean isHidingReferences ()
- { return hidingReferences; }
+ final public boolean isHidingReferences ()
+ { return hidingReferences; }
/**
* Controls whether the consumer will hide entity expansions,
@@ -229,9 +229,9 @@ public class DomConsumer implements EventConsumer
* @see #isHidingReferences
* @param flag False if entity reference nodes will appear
*/
- final public void setHidingReferences (boolean flag)
- { hidingReferences = flag; }
-
+ final public void setHidingReferences (boolean flag)
+ { hidingReferences = flag; }
+
/**
* Returns true if the consumer is hiding comments (the default),
@@ -240,7 +240,7 @@ public class DomConsumer implements EventConsumer
* @see #setHidingComments
*/
public final boolean isHidingComments ()
- { return hidingComments; }
+ { return hidingComments; }
/**
* Controls whether the consumer is hiding comments.
@@ -248,7 +248,7 @@ public class DomConsumer implements EventConsumer
* @see #isHidingComments
*/
public final void setHidingComments (boolean flag)
- { hidingComments = flag; }
+ { hidingComments = flag; }
/**
@@ -259,7 +259,7 @@ public class DomConsumer implements EventConsumer
* @see #setHidingWhitespace
*/
public final boolean isHidingWhitespace ()
- { return hidingWhitespace; }
+ { return hidingWhitespace; }
/**
* Controls whether the consumer hides ignorable whitespace
@@ -267,7 +267,7 @@ public class DomConsumer implements EventConsumer
* @see #isHidingComments
*/
public final void setHidingWhitespace (boolean flag)
- { hidingWhitespace = flag; }
+ { hidingWhitespace = flag; }
/**
@@ -276,28 +276,28 @@ public class DomConsumer implements EventConsumer
*
* @see #setHidingCDATA
*/
- final public boolean isHidingCDATA ()
- { return hidingCDATA; }
+ final public boolean isHidingCDATA ()
+ { return hidingCDATA; }
/**
* Controls whether the consumer will save CDATA boundaries.
*
* @see #isHidingCDATA
* @param flag True to treat CDATA text differently from other
- * text nodes
+ * text nodes
*/
- final public void setHidingCDATA (boolean flag)
- { hidingCDATA = flag; }
-
+ final public void setHidingCDATA (boolean flag)
+ { hidingCDATA = flag; }
+
/** Returns the document handler being used. */
final public ContentHandler getContentHandler ()
- { return handler; }
+ { return handler; }
/** Returns the DTD handler being used. */
final public DTDHandler getDTDHandler ()
- { return handler; }
+ { return handler; }
/**
* Returns the lexical handler being used.
@@ -306,11 +306,11 @@ public class DomConsumer implements EventConsumer
final public Object getProperty (String id)
throws SAXNotRecognizedException
{
- if ("http://xml.org/sax/properties/lexical-handler".equals (id))
- return handler;
- if ("http://xml.org/sax/properties/declaration-handler".equals (id))
- return handler;
- throw new SAXNotRecognizedException (id);
+ if ("http://xml.org/sax/properties/lexical-handler".equals (id))
+ return handler;
+ if ("http://xml.org/sax/properties/declaration-handler".equals (id))
+ return handler;
+ throw new SAXNotRecognizedException (id);
}
EventConsumer getNext () { return next; }
@@ -320,7 +320,7 @@ public class DomConsumer implements EventConsumer
/**
* Class used to intercept various parsing events and use them to
* populate a DOM document. Subclasses would typically know and use
- * backdoors into specific DOM implementations, used to implement
+ * backdoors into specific DOM implementations, used to implement
* DTD-related functionality.
*
* <p> Note that if this ever throws a DOMException (runtime exception)
@@ -329,639 +329,639 @@ public class DomConsumer implements EventConsumer
* accepted illegal input data). </p>
*/
public static class Handler
- implements ContentHandler, LexicalHandler,
- DTDHandler, DeclHandler
+ implements ContentHandler, LexicalHandler,
+ DTDHandler, DeclHandler
{
- protected DomConsumer consumer;
-
- private DOMImplementation impl;
- private Document document;
- private boolean isL2;
-
- private Locator locator;
- private Node top;
- private boolean inCDATA;
- private boolean mergeCDATA;
- private boolean inDTD;
- private String currentEntity;
-
- private boolean recreatedAttrs;
- private AttributesImpl attributes = new AttributesImpl ();
-
- /**
- * Subclasses may use SAX2 events to provide additional
- * behaviors in the resulting DOM.
- */
- protected Handler (DomConsumer consumer)
- throws SAXException
- {
- this.consumer = consumer;
- document = consumer.emptyDocument ();
- impl = document.getImplementation ();
- isL2 = impl.hasFeature ("XML", "2.0");
- }
-
- private void fatal (String message, Exception x)
- throws SAXException
- {
- SAXParseException e;
- ErrorHandler errHandler = consumer.getErrorHandler ();
-
- if (locator == null)
- e = new SAXParseException (message, null, null, -1, -1, x);
- else
- e = new SAXParseException (message, locator, x);
- if (errHandler != null)
- errHandler.fatalError (e);
- throw e;
- }
-
- /**
- * Returns and forgets the document produced. If the handler is
- * reused, a new document may be created.
- */
- Document clearDocument ()
- {
- Document retval = document;
- document = null;
- locator = null;
- return retval;
- }
-
- /**
- * Returns the document under construction.
- */
- protected Document getDocument ()
- { return document; }
-
- /**
- * Returns the current node being populated. This is usually
- * an Element or Document, but it might be an EntityReference
- * node if some implementation-specific code knows how to put
- * those into the result tree and later mark them as readonly.
- */
- protected Node getTop ()
- { return top; }
-
-
- // SAX1
- public void setDocumentLocator (Locator locator)
- {
- this.locator = locator;
- }
-
- // SAX1
- public void startDocument ()
- throws SAXException
- {
- if (document == null)
- try {
- if (isL2) {
- // couple to original implementation
- document = impl.createDocument (null, "foo", null);
- document.removeChild (document.getFirstChild ());
- } else {
- document = consumer.emptyDocument ();
- }
- } catch (Exception e) {
- fatal ("DOM create document", e);
- }
- top = document;
- }
-
- // SAX1
- public void endDocument ()
- throws SAXException
- {
- try {
- if (consumer.getNext () != null && document != null) {
- DomParser parser = new DomParser (document);
-
- EventFilter.bind (parser, consumer.getNext ());
- parser.parse ("ignored");
- }
- } finally {
- top = null;
- }
- }
-
- // SAX1
- public void processingInstruction (String target, String data)
- throws SAXException
- {
- // we can't create populated entity ref nodes using
- // only public DOM APIs (they've got to be readonly)
- if (currentEntity != null)
- return;
-
- ProcessingInstruction pi;
-
- if (isL2
- // && consumer.isUsingNamespaces ()
- && target.indexOf (':') != -1)
- namespaceError (
- "PI target name is namespace nonconformant: "
- + target);
- if (inDTD)
- return;
- pi = document.createProcessingInstruction (target, data);
- top.appendChild (pi);
- }
-
- /**
- * Subclasses may overrride this method to provide a more efficient
- * way to construct text nodes.
- * Typically, copying the text into a single character array will
- * be more efficient than doing that as well as allocating other
- * needed for a String, including an internal StringBuffer.
- * Those additional memory and CPU costs can be incurred later,
- * if ever needed.
- * Unfortunately the standard DOM factory APIs encourage those costs
- * to be incurred early.
- */
- protected Text createText (
- boolean isCDATA,
- char ch [],
- int start,
- int length
- ) {
- String value = new String (ch, start, length);
-
- if (isCDATA)
- return document.createCDATASection (value);
- else
- return document.createTextNode (value);
- }
-
- // SAX1
- public void characters (char ch [], int start, int length)
- throws SAXException
- {
- // we can't create populated entity ref nodes using
- // only public DOM APIs (they've got to be readonly
- // at creation time)
- if (currentEntity != null)
- return;
-
- Node lastChild = top.getLastChild ();
-
- // merge consecutive text or CDATA nodes if appropriate.
- if (lastChild instanceof Text) {
- if (consumer.isHidingCDATA ()
- // consecutive Text content ... always merge
- || (!inCDATA
- && !(lastChild instanceof CDATASection))
- // consecutive CDATASection content ... don't
- // merge between sections, only within them
- || (inCDATA && mergeCDATA
- && lastChild instanceof CDATASection)
- ) {
- CharacterData last = (CharacterData) lastChild;
- String value = new String (ch, start, length);
-
- last.appendData (value);
- return;
- }
- }
- if (inCDATA && !consumer.isHidingCDATA ()) {
- top.appendChild (createText (true, ch, start, length));
- mergeCDATA = true;
- } else
- top.appendChild (createText (false, ch, start, length));
- }
-
- // SAX2
- public void skippedEntity (String name)
- throws SAXException
- {
- // this callback is useless except to report errors, since
- // we can't know if the ref was in content, within an
- // attribute, within a declaration ... only one of those
- // cases supports more intelligent action than a panic.
- fatal ("skipped entity: " + name, null);
- }
-
- // SAX2
- public void startPrefixMapping (String prefix, String uri)
- throws SAXException
- {
- // reconstruct "xmlns" attributes deleted by all
- // SAX2 parsers without "namespace-prefixes" = true
- if ("".equals (prefix))
- attributes.addAttribute ("", "", "xmlns",
- "CDATA", uri);
- else
- attributes.addAttribute ("", "", "xmlns:" + prefix,
- "CDATA", uri);
- recreatedAttrs = true;
- }
-
- // SAX2
- public void endPrefixMapping (String prefix)
- throws SAXException
- { }
-
- // SAX2
- public void startElement (
- String uri,
- String localName,
- String qName,
- Attributes atts
- ) throws SAXException
- {
- // we can't create populated entity ref nodes using
- // only public DOM APIs (they've got to be readonly)
- if (currentEntity != null)
- return;
-
- // parser discarded basic information; DOM tree isn't writable
- // without massaging to assign prefixes to all nodes.
- // the "NSFilter" class does that massaging.
- if (qName.length () == 0)
- qName = localName;
-
-
- Element element;
- int length = atts.getLength ();
-
- if (!isL2) {
- element = document.createElement (qName);
-
- // first the explicit attributes ...
- length = atts.getLength ();
- for (int i = 0; i < length; i++)
- element.setAttribute (atts.getQName (i),
- atts.getValue (i));
- // ... then any recreated ones (DOM deletes duplicates)
- if (recreatedAttrs) {
- recreatedAttrs = false;
- length = attributes.getLength ();
- for (int i = 0; i < length; i++)
- element.setAttribute (attributes.getQName (i),
- attributes.getValue (i));
- attributes.clear ();
- }
-
- top.appendChild (element);
- top = element;
- return;
- }
-
- // For an L2 DOM when namespace use is enabled, use
- // createElementNS/createAttributeNS except when
- // (a) it's an element in the default namespace, or
- // (b) it's an attribute with no prefix
- String namespace;
-
- if (localName.length () != 0)
- namespace = (uri.length () == 0) ? null : uri;
- else
- namespace = getNamespace (getPrefix (qName), atts);
-
- if (namespace == null)
- element = document.createElement (qName);
- else
- element = document.createElementNS (namespace, qName);
-
- populateAttributes (element, atts);
- if (recreatedAttrs) {
- recreatedAttrs = false;
- // ... DOM deletes any duplicates
- populateAttributes (element, attributes);
- attributes.clear ();
- }
-
- top.appendChild (element);
- top = element;
- }
-
- final static String xmlnsURI = "http://www.w3.org/2000/xmlns/";
-
- private void populateAttributes (Element element, Attributes attrs)
- throws SAXParseException
- {
- int length = attrs.getLength ();
-
- for (int i = 0; i < length; i++) {
- String type = attrs.getType (i);
- String value = attrs.getValue (i);
- String name = attrs.getQName (i);
- String local = attrs.getLocalName (i);
- String uri = attrs.getURI (i);
-
- // parser discarded basic information, DOM tree isn't writable
- if (name.length () == 0)
- name = local;
-
- // all attribute types other than these three may not
- // contain scoped names... enumerated attributes get
- // reported as NMTOKEN, except for NOTATION values
- if (!("CDATA".equals (type)
- || "NMTOKEN".equals (type)
- || "NMTOKENS".equals (type))) {
- if (value.indexOf (':') != -1) {
- namespaceError (
- "namespace nonconformant attribute value: "
- + "<" + element.getNodeName ()
- + " " + name + "='" + value + "' ...>");
- }
- }
-
- // xmlns="" is legal (undoes default NS)
- // xmlns:foo="" is illegal
- String prefix = getPrefix (name);
- String namespace;
-
- if ("xmlns".equals (prefix)) {
- if ("".equals (value))
- namespaceError ("illegal null namespace decl, " + name);
- namespace = xmlnsURI;
- } else if ("xmlns".equals (name))
- namespace = xmlnsURI;
-
- else if (prefix == null)
- namespace = null;
- else if (!"".equals(uri) && uri.length () != 0)
- namespace = uri;
- else
- namespace = getNamespace (prefix, attrs);
-
- if (namespace == null)
- element.setAttribute (name, value);
- else
- element.setAttributeNS (namespace, name, value);
- }
- }
-
- private String getPrefix (String name)
- {
- int temp;
-
- if ((temp = name.indexOf (':')) > 0)
- return name.substring (0, temp);
- return null;
- }
-
- // used with SAX1-level parser output
- private String getNamespace (String prefix, Attributes attrs)
- throws SAXParseException
- {
- String namespace;
- String decl;
-
- // defaulting
- if (prefix == null) {
- decl = "xmlns";
- namespace = attrs.getValue (decl);
- if ("".equals (namespace))
- return null;
- else if (namespace != null)
- return namespace;
-
- // "xmlns" is like a keyword
- // ... according to the Namespace REC, but DOM L2 CR2+
- // and Infoset violate that by assigning a namespace.
- // that conflict is resolved elsewhere.
- } else if ("xmlns".equals (prefix))
- return null;
-
- // "xml" prefix is fixed
- else if ("xml".equals (prefix))
- return "http://www.w3.org/XML/1998/namespace";
-
- // otherwise, expect a declaration
- else {
- decl = "xmlns:" + prefix;
- namespace = attrs.getValue (decl);
- }
-
- // if we found a local declaration, great
- if (namespace != null)
- return namespace;
-
-
- // ELSE ... search up the tree we've been building
- for (Node n = top;
- n != null && n.getNodeType () != Node.DOCUMENT_NODE;
- n = n.getParentNode ()) {
- if (n.getNodeType () == Node.ENTITY_REFERENCE_NODE)
- continue;
- Element e = (Element) n;
- Attr attr = e.getAttributeNode (decl);
- if (attr != null)
- return attr.getNodeValue ();
- }
- // see above re "xmlns" as keyword
- if ("xmlns".equals (decl))
- return null;
-
- namespaceError ("Undeclared namespace prefix: " + prefix);
- return null;
- }
-
- // SAX2
- public void endElement (String uri, String localName, String qName)
- throws SAXException
- {
- // we can't create populated entity ref nodes using
- // only public DOM APIs (they've got to be readonly)
- if (currentEntity != null)
- return;
-
- top = top.getParentNode ();
- }
-
- // SAX1 (mandatory reporting if validating)
- public void ignorableWhitespace (char ch [], int start, int length)
- throws SAXException
- {
- if (consumer.isHidingWhitespace ())
- return;
- characters (ch, start, length);
- }
-
- // SAX2 lexical event
- public void startCDATA ()
- throws SAXException
- {
- inCDATA = true;
- // true except for the first fragment of a cdata section
- mergeCDATA = false;
- }
-
- // SAX2 lexical event
- public void endCDATA ()
- throws SAXException
- {
- inCDATA = false;
- }
-
- // SAX2 lexical event
- //
- // this SAX2 callback merges two unrelated things:
- // - Declaration of the root element type ... belongs with
- // the other DTD declaration methods, NOT HERE.
- // - IDs for the optional external subset ... belongs here
- // with other lexical information.
- //
- // ...and it doesn't include the internal DTD subset, desired
- // both to support DOM L2 and to enable "pass through" processing
- //
- public void startDTD (String name, String publicId, String SystemId)
- throws SAXException
- {
- // need to filter out comments and PIs within the DTD
- inDTD = true;
- }
-
- // SAX2 lexical event
- public void endDTD ()
- throws SAXException
- {
- inDTD = false;
- }
-
- // SAX2 lexical event
- public void comment (char ch [], int start, int length)
- throws SAXException
- {
- Node comment;
-
- // we can't create populated entity ref nodes using
- // only public DOM APIs (they've got to be readonly)
- if (consumer.isHidingComments ()
- || inDTD
- || currentEntity != null)
- return;
- comment = document.createComment (new String (ch, start, length));
- top.appendChild (comment);
- }
-
- /**
- * May be overridden by subclasses to return true, indicating
- * that entity reference nodes can be populated and then made
- * read-only.
- */
- public boolean canPopulateEntityRefs ()
- { return false; }
-
- // SAX2 lexical event
- public void startEntity (String name)
- throws SAXException
- {
- // are we ignoring what would be contents of an
- // entity ref, since we can't populate it?
- if (currentEntity != null)
- return;
-
- // Are we hiding all entity boundaries?
- if (consumer.isHidingReferences ())
- return;
-
- // SAX2 shows parameter entities; DOM hides them
- if (name.charAt (0) == '%' || "[dtd]".equals (name))
- return;
-
- // Since we can't create a populated entity ref node in any
- // standard way, we create an unpopulated one.
- EntityReference ref = document.createEntityReference (name);
- top.appendChild (ref);
- top = ref;
-
- // ... allowing subclasses to populate them
- if (!canPopulateEntityRefs ())
- currentEntity = name;
- }
-
- // SAX2 lexical event
- public void endEntity (String name)
- throws SAXException
- {
- if (name.charAt (0) == '%' || "[dtd]".equals (name))
- return;
- if (name.equals (currentEntity))
- currentEntity = null;
- if (!consumer.isHidingReferences ())
- top = top.getParentNode ();
- }
-
-
- // SAX1 DTD event
- public void notationDecl (
- String name,
- String publicId, String SystemId
- ) throws SAXException
- {
- /* IGNORE -- no public DOM API lets us store these
- * into the doctype node
- */
- }
-
- // SAX1 DTD event
- public void unparsedEntityDecl (
- String name,
- String publicId, String SystemId,
- String notationName
- ) throws SAXException
- {
- /* IGNORE -- no public DOM API lets us store these
- * into the doctype node
- */
- }
-
- // SAX2 declaration event
- public void elementDecl (String name, String model)
- throws SAXException
- {
- /* IGNORE -- no content model support in DOM L2 */
- }
-
- // SAX2 declaration event
- public void attributeDecl (
- String eName,
- String aName,
- String type,
- String mode,
- String value
- ) throws SAXException
- {
- /* IGNORE -- no attribute model support in DOM L2 */
- }
-
- // SAX2 declaration event
- public void internalEntityDecl (String name, String value)
- throws SAXException
- {
- /* IGNORE -- no public DOM API lets us store these
- * into the doctype node
- */
- }
-
- // SAX2 declaration event
- public void externalEntityDecl (
- String name,
- String publicId,
- String SystemId
- ) throws SAXException
- {
- /* IGNORE -- no public DOM API lets us store these
- * into the doctype node
- */
- }
-
- //
- // These really should offer the option of nonfatal handling,
- // like other validity errors, though that would cause major
- // chaos in the DOM data structures. DOM is already spec'd
- // to treat many of these as fatal, so this is consistent.
- //
- private void namespaceError (String description)
- throws SAXParseException
- {
- SAXParseException err;
-
- err = new SAXParseException (description, locator);
- throw err;
- }
+ protected DomConsumer consumer;
+
+ private DOMImplementation impl;
+ private Document document;
+ private boolean isL2;
+
+ private Locator locator;
+ private Node top;
+ private boolean inCDATA;
+ private boolean mergeCDATA;
+ private boolean inDTD;
+ private String currentEntity;
+
+ private boolean recreatedAttrs;
+ private AttributesImpl attributes = new AttributesImpl ();
+
+ /**
+ * Subclasses may use SAX2 events to provide additional
+ * behaviors in the resulting DOM.
+ */
+ protected Handler (DomConsumer consumer)
+ throws SAXException
+ {
+ this.consumer = consumer;
+ document = consumer.emptyDocument ();
+ impl = document.getImplementation ();
+ isL2 = impl.hasFeature ("XML", "2.0");
+ }
+
+ private void fatal (String message, Exception x)
+ throws SAXException
+ {
+ SAXParseException e;
+ ErrorHandler errHandler = consumer.getErrorHandler ();
+
+ if (locator == null)
+ e = new SAXParseException (message, null, null, -1, -1, x);
+ else
+ e = new SAXParseException (message, locator, x);
+ if (errHandler != null)
+ errHandler.fatalError (e);
+ throw e;
+ }
+
+ /**
+ * Returns and forgets the document produced. If the handler is
+ * reused, a new document may be created.
+ */
+ Document clearDocument ()
+ {
+ Document retval = document;
+ document = null;
+ locator = null;
+ return retval;
+ }
+
+ /**
+ * Returns the document under construction.
+ */
+ protected Document getDocument ()
+ { return document; }
+
+ /**
+ * Returns the current node being populated. This is usually
+ * an Element or Document, but it might be an EntityReference
+ * node if some implementation-specific code knows how to put
+ * those into the result tree and later mark them as readonly.
+ */
+ protected Node getTop ()
+ { return top; }
+
+
+ // SAX1
+ public void setDocumentLocator (Locator locator)
+ {
+ this.locator = locator;
+ }
+
+ // SAX1
+ public void startDocument ()
+ throws SAXException
+ {
+ if (document == null)
+ try {
+ if (isL2) {
+ // couple to original implementation
+ document = impl.createDocument (null, "foo", null);
+ document.removeChild (document.getFirstChild ());
+ } else {
+ document = consumer.emptyDocument ();
+ }
+ } catch (Exception e) {
+ fatal ("DOM create document", e);
+ }
+ top = document;
+ }
+
+ // SAX1
+ public void endDocument ()
+ throws SAXException
+ {
+ try {
+ if (consumer.getNext () != null && document != null) {
+ DomParser parser = new DomParser (document);
+
+ EventFilter.bind (parser, consumer.getNext ());
+ parser.parse ("ignored");
+ }
+ } finally {
+ top = null;
+ }
+ }
+
+ // SAX1
+ public void processingInstruction (String target, String data)
+ throws SAXException
+ {
+ // we can't create populated entity ref nodes using
+ // only public DOM APIs (they've got to be readonly)
+ if (currentEntity != null)
+ return;
+
+ ProcessingInstruction pi;
+
+ if (isL2
+ // && consumer.isUsingNamespaces ()
+ && target.indexOf (':') != -1)
+ namespaceError (
+ "PI target name is namespace nonconformant: "
+ + target);
+ if (inDTD)
+ return;
+ pi = document.createProcessingInstruction (target, data);
+ top.appendChild (pi);
+ }
+
+ /**
+ * Subclasses may overrride this method to provide a more efficient
+ * way to construct text nodes.
+ * Typically, copying the text into a single character array will
+ * be more efficient than doing that as well as allocating other
+ * needed for a String, including an internal StringBuffer.
+ * Those additional memory and CPU costs can be incurred later,
+ * if ever needed.
+ * Unfortunately the standard DOM factory APIs encourage those costs
+ * to be incurred early.
+ */
+ protected Text createText (
+ boolean isCDATA,
+ char ch [],
+ int start,
+ int length
+ ) {
+ String value = new String (ch, start, length);
+
+ if (isCDATA)
+ return document.createCDATASection (value);
+ else
+ return document.createTextNode (value);
+ }
+
+ // SAX1
+ public void characters (char ch [], int start, int length)
+ throws SAXException
+ {
+ // we can't create populated entity ref nodes using
+ // only public DOM APIs (they've got to be readonly
+ // at creation time)
+ if (currentEntity != null)
+ return;
+
+ Node lastChild = top.getLastChild ();
+
+ // merge consecutive text or CDATA nodes if appropriate.
+ if (lastChild instanceof Text) {
+ if (consumer.isHidingCDATA ()
+ // consecutive Text content ... always merge
+ || (!inCDATA
+ && !(lastChild instanceof CDATASection))
+ // consecutive CDATASection content ... don't
+ // merge between sections, only within them
+ || (inCDATA && mergeCDATA
+ && lastChild instanceof CDATASection)
+ ) {
+ CharacterData last = (CharacterData) lastChild;
+ String value = new String (ch, start, length);
+
+ last.appendData (value);
+ return;
+ }
+ }
+ if (inCDATA && !consumer.isHidingCDATA ()) {
+ top.appendChild (createText (true, ch, start, length));
+ mergeCDATA = true;
+ } else
+ top.appendChild (createText (false, ch, start, length));
+ }
+
+ // SAX2
+ public void skippedEntity (String name)
+ throws SAXException
+ {
+ // this callback is useless except to report errors, since
+ // we can't know if the ref was in content, within an
+ // attribute, within a declaration ... only one of those
+ // cases supports more intelligent action than a panic.
+ fatal ("skipped entity: " + name, null);
+ }
+
+ // SAX2
+ public void startPrefixMapping (String prefix, String uri)
+ throws SAXException
+ {
+ // reconstruct "xmlns" attributes deleted by all
+ // SAX2 parsers without "namespace-prefixes" = true
+ if ("".equals (prefix))
+ attributes.addAttribute ("", "", "xmlns",
+ "CDATA", uri);
+ else
+ attributes.addAttribute ("", "", "xmlns:" + prefix,
+ "CDATA", uri);
+ recreatedAttrs = true;
+ }
+
+ // SAX2
+ public void endPrefixMapping (String prefix)
+ throws SAXException
+ { }
+
+ // SAX2
+ public void startElement (
+ String uri,
+ String localName,
+ String qName,
+ Attributes atts
+ ) throws SAXException
+ {
+ // we can't create populated entity ref nodes using
+ // only public DOM APIs (they've got to be readonly)
+ if (currentEntity != null)
+ return;
+
+ // parser discarded basic information; DOM tree isn't writable
+ // without massaging to assign prefixes to all nodes.
+ // the "NSFilter" class does that massaging.
+ if (qName.length () == 0)
+ qName = localName;
+
+
+ Element element;
+ int length = atts.getLength ();
+
+ if (!isL2) {
+ element = document.createElement (qName);
+
+ // first the explicit attributes ...
+ length = atts.getLength ();
+ for (int i = 0; i < length; i++)
+ element.setAttribute (atts.getQName (i),
+ atts.getValue (i));
+ // ... then any recreated ones (DOM deletes duplicates)
+ if (recreatedAttrs) {
+ recreatedAttrs = false;
+ length = attributes.getLength ();
+ for (int i = 0; i < length; i++)
+ element.setAttribute (attributes.getQName (i),
+ attributes.getValue (i));
+ attributes.clear ();
+ }
+
+ top.appendChild (element);
+ top = element;
+ return;
+ }
+
+ // For an L2 DOM when namespace use is enabled, use
+ // createElementNS/createAttributeNS except when
+ // (a) it's an element in the default namespace, or
+ // (b) it's an attribute with no prefix
+ String namespace;
+
+ if (localName.length () != 0)
+ namespace = (uri.length () == 0) ? null : uri;
+ else
+ namespace = getNamespace (getPrefix (qName), atts);
+
+ if (namespace == null)
+ element = document.createElement (qName);
+ else
+ element = document.createElementNS (namespace, qName);
+
+ populateAttributes (element, atts);
+ if (recreatedAttrs) {
+ recreatedAttrs = false;
+ // ... DOM deletes any duplicates
+ populateAttributes (element, attributes);
+ attributes.clear ();
+ }
+
+ top.appendChild (element);
+ top = element;
+ }
+
+ final static String xmlnsURI = "http://www.w3.org/2000/xmlns/";
+
+ private void populateAttributes (Element element, Attributes attrs)
+ throws SAXParseException
+ {
+ int length = attrs.getLength ();
+
+ for (int i = 0; i < length; i++) {
+ String type = attrs.getType (i);
+ String value = attrs.getValue (i);
+ String name = attrs.getQName (i);
+ String local = attrs.getLocalName (i);
+ String uri = attrs.getURI (i);
+
+ // parser discarded basic information, DOM tree isn't writable
+ if (name.length () == 0)
+ name = local;
+
+ // all attribute types other than these three may not
+ // contain scoped names... enumerated attributes get
+ // reported as NMTOKEN, except for NOTATION values
+ if (!("CDATA".equals (type)
+ || "NMTOKEN".equals (type)
+ || "NMTOKENS".equals (type))) {
+ if (value.indexOf (':') != -1) {
+ namespaceError (
+ "namespace nonconformant attribute value: "
+ + "<" + element.getNodeName ()
+ + " " + name + "='" + value + "' ...>");
+ }
+ }
+
+ // xmlns="" is legal (undoes default NS)
+ // xmlns:foo="" is illegal
+ String prefix = getPrefix (name);
+ String namespace;
+
+ if ("xmlns".equals (prefix)) {
+ if ("".equals (value))
+ namespaceError ("illegal null namespace decl, " + name);
+ namespace = xmlnsURI;
+ } else if ("xmlns".equals (name))
+ namespace = xmlnsURI;
+
+ else if (prefix == null)
+ namespace = null;
+ else if (!"".equals(uri) && uri.length () != 0)
+ namespace = uri;
+ else
+ namespace = getNamespace (prefix, attrs);
+
+ if (namespace == null)
+ element.setAttribute (name, value);
+ else
+ element.setAttributeNS (namespace, name, value);
+ }
+ }
+
+ private String getPrefix (String name)
+ {
+ int temp;
+
+ if ((temp = name.indexOf (':')) > 0)
+ return name.substring (0, temp);
+ return null;
+ }
+
+ // used with SAX1-level parser output
+ private String getNamespace (String prefix, Attributes attrs)
+ throws SAXParseException
+ {
+ String namespace;
+ String decl;
+
+ // defaulting
+ if (prefix == null) {
+ decl = "xmlns";
+ namespace = attrs.getValue (decl);
+ if ("".equals (namespace))
+ return null;
+ else if (namespace != null)
+ return namespace;
+
+ // "xmlns" is like a keyword
+ // ... according to the Namespace REC, but DOM L2 CR2+
+ // and Infoset violate that by assigning a namespace.
+ // that conflict is resolved elsewhere.
+ } else if ("xmlns".equals (prefix))
+ return null;
+
+ // "xml" prefix is fixed
+ else if ("xml".equals (prefix))
+ return "http://www.w3.org/XML/1998/namespace";
+
+ // otherwise, expect a declaration
+ else {
+ decl = "xmlns:" + prefix;
+ namespace = attrs.getValue (decl);
+ }
+
+ // if we found a local declaration, great
+ if (namespace != null)
+ return namespace;
+
+
+ // ELSE ... search up the tree we've been building
+ for (Node n = top;
+ n != null && n.getNodeType () != Node.DOCUMENT_NODE;
+ n = n.getParentNode ()) {
+ if (n.getNodeType () == Node.ENTITY_REFERENCE_NODE)
+ continue;
+ Element e = (Element) n;
+ Attr attr = e.getAttributeNode (decl);
+ if (attr != null)
+ return attr.getNodeValue ();
+ }
+ // see above re "xmlns" as keyword
+ if ("xmlns".equals (decl))
+ return null;
+
+ namespaceError ("Undeclared namespace prefix: " + prefix);
+ return null;
+ }
+
+ // SAX2
+ public void endElement (String uri, String localName, String qName)
+ throws SAXException
+ {
+ // we can't create populated entity ref nodes using
+ // only public DOM APIs (they've got to be readonly)
+ if (currentEntity != null)
+ return;
+
+ top = top.getParentNode ();
+ }
+
+ // SAX1 (mandatory reporting if validating)
+ public void ignorableWhitespace (char ch [], int start, int length)
+ throws SAXException
+ {
+ if (consumer.isHidingWhitespace ())
+ return;
+ characters (ch, start, length);
+ }
+
+ // SAX2 lexical event
+ public void startCDATA ()
+ throws SAXException
+ {
+ inCDATA = true;
+ // true except for the first fragment of a cdata section
+ mergeCDATA = false;
+ }
+
+ // SAX2 lexical event
+ public void endCDATA ()
+ throws SAXException
+ {
+ inCDATA = false;
+ }
+
+ // SAX2 lexical event
+ //
+ // this SAX2 callback merges two unrelated things:
+ // - Declaration of the root element type ... belongs with
+ // the other DTD declaration methods, NOT HERE.
+ // - IDs for the optional external subset ... belongs here
+ // with other lexical information.
+ //
+ // ...and it doesn't include the internal DTD subset, desired
+ // both to support DOM L2 and to enable "pass through" processing
+ //
+ public void startDTD (String name, String publicId, String SystemId)
+ throws SAXException
+ {
+ // need to filter out comments and PIs within the DTD
+ inDTD = true;
+ }
+
+ // SAX2 lexical event
+ public void endDTD ()
+ throws SAXException
+ {
+ inDTD = false;
+ }
+
+ // SAX2 lexical event
+ public void comment (char ch [], int start, int length)
+ throws SAXException
+ {
+ Node comment;
+
+ // we can't create populated entity ref nodes using
+ // only public DOM APIs (they've got to be readonly)
+ if (consumer.isHidingComments ()
+ || inDTD
+ || currentEntity != null)
+ return;
+ comment = document.createComment (new String (ch, start, length));
+ top.appendChild (comment);
+ }
+
+ /**
+ * May be overridden by subclasses to return true, indicating
+ * that entity reference nodes can be populated and then made
+ * read-only.
+ */
+ public boolean canPopulateEntityRefs ()
+ { return false; }
+
+ // SAX2 lexical event
+ public void startEntity (String name)
+ throws SAXException
+ {
+ // are we ignoring what would be contents of an
+ // entity ref, since we can't populate it?
+ if (currentEntity != null)
+ return;
+
+ // Are we hiding all entity boundaries?
+ if (consumer.isHidingReferences ())
+ return;
+
+ // SAX2 shows parameter entities; DOM hides them
+ if (name.charAt (0) == '%' || "[dtd]".equals (name))
+ return;
+
+ // Since we can't create a populated entity ref node in any
+ // standard way, we create an unpopulated one.
+ EntityReference ref = document.createEntityReference (name);
+ top.appendChild (ref);
+ top = ref;
+
+ // ... allowing subclasses to populate them
+ if (!canPopulateEntityRefs ())
+ currentEntity = name;
+ }
+
+ // SAX2 lexical event
+ public void endEntity (String name)
+ throws SAXException
+ {
+ if (name.charAt (0) == '%' || "[dtd]".equals (name))
+ return;
+ if (name.equals (currentEntity))
+ currentEntity = null;
+ if (!consumer.isHidingReferences ())
+ top = top.getParentNode ();
+ }
+
+
+ // SAX1 DTD event
+ public void notationDecl (
+ String name,
+ String publicId, String SystemId
+ ) throws SAXException
+ {
+ /* IGNORE -- no public DOM API lets us store these
+ * into the doctype node
+ */
+ }
+
+ // SAX1 DTD event
+ public void unparsedEntityDecl (
+ String name,
+ String publicId, String SystemId,
+ String notationName
+ ) throws SAXException
+ {
+ /* IGNORE -- no public DOM API lets us store these
+ * into the doctype node
+ */
+ }
+
+ // SAX2 declaration event
+ public void elementDecl (String name, String model)
+ throws SAXException
+ {
+ /* IGNORE -- no content model support in DOM L2 */
+ }
+
+ // SAX2 declaration event
+ public void attributeDecl (
+ String eName,
+ String aName,
+ String type,
+ String mode,
+ String value
+ ) throws SAXException
+ {
+ /* IGNORE -- no attribute model support in DOM L2 */
+ }
+
+ // SAX2 declaration event
+ public void internalEntityDecl (String name, String value)
+ throws SAXException
+ {
+ /* IGNORE -- no public DOM API lets us store these
+ * into the doctype node
+ */
+ }
+
+ // SAX2 declaration event
+ public void externalEntityDecl (
+ String name,
+ String publicId,
+ String SystemId
+ ) throws SAXException
+ {
+ /* IGNORE -- no public DOM API lets us store these
+ * into the doctype node
+ */
+ }
+
+ //
+ // These really should offer the option of nonfatal handling,
+ // like other validity errors, though that would cause major
+ // chaos in the DOM data structures. DOM is already spec'd
+ // to treat many of these as fatal, so this is consistent.
+ //
+ private void namespaceError (String description)
+ throws SAXParseException
+ {
+ SAXParseException err;
+
+ err = new SAXParseException (description, locator);
+ throw err;
+ }
}
}
diff --git a/libjava/classpath/gnu/xml/pipeline/EventConsumer.java b/libjava/classpath/gnu/xml/pipeline/EventConsumer.java
index 017bc7f74f1..a0a8824f791 100644
--- a/libjava/classpath/gnu/xml/pipeline/EventConsumer.java
+++ b/libjava/classpath/gnu/xml/pipeline/EventConsumer.java
@@ -1,4 +1,4 @@
-/* EventConsumer.java --
+/* EventConsumer.java --
Copyright (C) 1999,2000,2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -75,7 +75,7 @@ public interface EventConsumer
* @return The value of that property, if it is defined.
*
* @exception SAXNotRecognizedException Thrown if the particular
- * pipeline stage does not understand the specified identifier.
+ * pipeline stage does not understand the specified identifier.
*/
public Object getProperty (String id)
throws SAXNotRecognizedException;
diff --git a/libjava/classpath/gnu/xml/pipeline/EventFilter.java b/libjava/classpath/gnu/xml/pipeline/EventFilter.java
index af2113f97ce..b3cc2d65417 100644
--- a/libjava/classpath/gnu/xml/pipeline/EventFilter.java
+++ b/libjava/classpath/gnu/xml/pipeline/EventFilter.java
@@ -1,4 +1,4 @@
-/* EventFilter.java --
+/* EventFilter.java --
Copyright (C) 1999,2000,2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -89,35 +89,35 @@ import org.xml.sax.helpers.XMLFilterImpl;
* {@link org.xml.sax.helpers.XMLFilterImpl XMLFilterImpl} class.
* Key differences include: <ul>
*
- * <li> This fully separates consumer and producer roles: it
- * does not implement the producer side <em>XMLReader</em> or
- * <em>EntityResolver</em> interfaces, so it can only be used
- * in "push" mode (it has no <em>parse()</em> methods).
+ * <li> This fully separates consumer and producer roles: it
+ * does not implement the producer side <em>XMLReader</em> or
+ * <em>EntityResolver</em> interfaces, so it can only be used
+ * in "push" mode (it has no <em>parse()</em> methods).
*
- * <li> "Extension" handlers are fully supported, enabling a
- * richer set of application requirements.
- * And it implements {@link EventConsumer}, which groups related
- * consumer methods together, rather than leaving them separated.
+ * <li> "Extension" handlers are fully supported, enabling a
+ * richer set of application requirements.
+ * And it implements {@link EventConsumer}, which groups related
+ * consumer methods together, rather than leaving them separated.
*
- * <li> The chaining which is visible is "downstream" to the next
- * consumer, not "upstream" to the preceding producer.
- * It supports "fan-in", where
- * a consumer can be fed by several producers. (For "fan-out",
- * see the {@link TeeConsumer} class.)
+ * <li> The chaining which is visible is "downstream" to the next
+ * consumer, not "upstream" to the preceding producer.
+ * It supports "fan-in", where
+ * a consumer can be fed by several producers. (For "fan-out",
+ * see the {@link TeeConsumer} class.)
*
- * <li> Event chaining is set up differently. It is intended to
- * work "upstream" from terminus towards producer, during filter
- * construction, as described above.
- * This is part of an early binding model:
- * events don't need to pass through stages which ignore them.
+ * <li> Event chaining is set up differently. It is intended to
+ * work "upstream" from terminus towards producer, during filter
+ * construction, as described above.
+ * This is part of an early binding model:
+ * events don't need to pass through stages which ignore them.
*
- * <li> ErrorHandler support is separated, on the grounds that
- * pipeline stages need to share the same error handling policy.
- * For the same reason, error handler setup goes "downstream":
- * when error handlers get set, they are passed to subsequent
- * consumers.
+ * <li> ErrorHandler support is separated, on the grounds that
+ * pipeline stages need to share the same error handling policy.
+ * For the same reason, error handler setup goes "downstream":
+ * when error handlers get set, they are passed to subsequent
+ * consumers.
*
- * </ul>
+ * </ul>
*
* <p> The {@link #chainTo chainTo()} convenience routine supports chaining to
* an XMLFilterImpl, in its role as a limited functionality event
@@ -137,34 +137,34 @@ import org.xml.sax.helpers.XMLFilterImpl;
*/
public class EventFilter
implements EventConsumer, ContentHandler, DTDHandler,
- LexicalHandler, DeclHandler
+ LexicalHandler, DeclHandler
{
// SAX handlers
- private ContentHandler docHandler, docNext;
- private DTDHandler dtdHandler, dtdNext;
- private LexicalHandler lexHandler, lexNext;
- private DeclHandler declHandler, declNext;
+ private ContentHandler docHandler, docNext;
+ private DTDHandler dtdHandler, dtdNext;
+ private LexicalHandler lexHandler, lexNext;
+ private DeclHandler declHandler, declNext;
// and ideally, one more for the stuff SAX2 doesn't show
- private Locator locator;
- private EventConsumer next;
- private ErrorHandler errHandler;
+ private Locator locator;
+ private EventConsumer next;
+ private ErrorHandler errHandler;
+
-
/** SAX2 URI prefix for standard feature flags. */
- public static final String FEATURE_URI
- = "http://xml.org/sax/features/";
+ public static final String FEATURE_URI
+ = "http://xml.org/sax/features/";
/** SAX2 URI prefix for standard properties (mostly for handlers). */
- public static final String PROPERTY_URI
- = "http://xml.org/sax/properties/";
+ public static final String PROPERTY_URI
+ = "http://xml.org/sax/properties/";
/** SAX2 property identifier for {@link DeclHandler} events */
- public static final String DECL_HANDLER
- = PROPERTY_URI + "declaration-handler";
+ public static final String DECL_HANDLER
+ = PROPERTY_URI + "declaration-handler";
/** SAX2 property identifier for {@link LexicalHandler} events */
- public static final String LEXICAL_HANDLER
- = PROPERTY_URI + "lexical-handler";
-
+ public static final String LEXICAL_HANDLER
+ = PROPERTY_URI + "lexical-handler";
+
//
// These class objects will be null if the relevant class isn't linked.
// Small configurations (pJava and some kinds of embedded systems) need
@@ -176,11 +176,11 @@ public class EventFilter
// that's associated with "this" class loader. But that wouldn't be true
// for classes in another package.
//
- private static boolean loaded;
- private static Class nsClass;
- private static Class validClass;
- private static Class wfClass;
- private static Class xincClass;
+ private static boolean loaded;
+ private static Class nsClass;
+ private static Class validClass;
+ private static Class wfClass;
+ private static Class xincClass;
static ClassLoader getClassLoader ()
{
@@ -206,25 +206,25 @@ public class EventFilter
static Class loadClass (ClassLoader classLoader, String className)
{
- try {
- if (classLoader == null)
- return Class.forName(className);
- else
- return classLoader.loadClass(className);
- } catch (Exception e) {
- return null;
- }
+ try {
+ if (classLoader == null)
+ return Class.forName(className);
+ else
+ return classLoader.loadClass(className);
+ } catch (Exception e) {
+ return null;
+ }
}
static private void loadClasses ()
{
- ClassLoader loader = getClassLoader ();
+ ClassLoader loader = getClassLoader ();
- nsClass = loadClass (loader, "gnu.xml.pipeline.NSFilter");
- validClass = loadClass (loader, "gnu.xml.pipeline.ValidationConsumer");
- wfClass = loadClass (loader, "gnu.xml.pipeline.WellFormednessFilter");
- xincClass = loadClass (loader, "gnu.xml.pipeline.XIncludeFilter");
- loaded = true;
+ nsClass = loadClass (loader, "gnu.xml.pipeline.NSFilter");
+ validClass = loadClass (loader, "gnu.xml.pipeline.ValidationConsumer");
+ wfClass = loadClass (loader, "gnu.xml.pipeline.WellFormednessFilter");
+ xincClass = loadClass (loader, "gnu.xml.pipeline.XIncludeFilter");
+ loaded = true;
}
@@ -246,146 +246,146 @@ public class EventFilter
* of the XMLReader implementation in use; for example, it permits
* validating output of a {@link gnu.xml.util.DomParser}. <ul>
*
- * <li> {@link NSFilter} will be removed if the producer can be
- * told not to discard namespace data, using the "namespace-prefixes"
- * feature flag.
+ * <li> {@link NSFilter} will be removed if the producer can be
+ * told not to discard namespace data, using the "namespace-prefixes"
+ * feature flag.
*
- * <li> {@link ValidationConsumer} will be removed if the producer
- * can be told to validate, using the "validation" feature flag.
+ * <li> {@link ValidationConsumer} will be removed if the producer
+ * can be told to validate, using the "validation" feature flag.
*
- * <li> {@link WellFormednessFilter} is always removed, on the
- * grounds that no XMLReader is permitted to producee malformed
- * event streams and this would just be processing overhead.
+ * <li> {@link WellFormednessFilter} is always removed, on the
+ * grounds that no XMLReader is permitted to producee malformed
+ * event streams and this would just be processing overhead.
*
- * <li> {@link XIncludeFilter} stops the special handling, except
- * that it's told about the "namespace-prefixes" feature of the
- * event producer so that the event stream is internally consistent.
+ * <li> {@link XIncludeFilter} stops the special handling, except
+ * that it's told about the "namespace-prefixes" feature of the
+ * event producer so that the event stream is internally consistent.
*
- * <li> The first consumer which is not one of those classes stops
- * such special handling. This means that if you want to force
- * one of those filters to be used, you could just precede it with
- * an instance of {@link EventFilter} configured as a pass-through.
- * You might need to do that if you are using an {@link NSFilter}
- * subclass to fix names found in attributes or character data.
+ * <li> The first consumer which is not one of those classes stops
+ * such special handling. This means that if you want to force
+ * one of those filters to be used, you could just precede it with
+ * an instance of {@link EventFilter} configured as a pass-through.
+ * You might need to do that if you are using an {@link NSFilter}
+ * subclass to fix names found in attributes or character data.
*
- * </ul>
+ * </ul>
*
* <p> Other than that, this method works with any kind of event consumer,
* not just event filters. Note that in all cases, the standard handlers
* are assigned; any previous handler assignments for the handler will
* be overridden.
*
- * @param producer will deliver events to the specified consumer
+ * @param producer will deliver events to the specified consumer
* @param consumer pipeline supplying event handlers to be associated
- * with the producer (may not be null)
+ * with the producer (may not be null)
*/
public static void bind (XMLReader producer, EventConsumer consumer)
{
- Class klass = null;
- boolean prefixes;
-
- if (!loaded)
- loadClasses ();
-
- // DOM building, printing, layered validation, and other
- // things don't work well when prefix info is discarded.
- // Include it by default, whenever possible.
- try {
- producer.setFeature (FEATURE_URI + "namespace-prefixes",
- true);
- prefixes = true;
- } catch (SAXException e) {
- prefixes = false;
- }
-
- // NOTE: This loop doesn't use "instanceof", since that
- // would prevent compiling/linking without those classes
- // being present.
- while (consumer != null) {
- klass = consumer.getClass ();
-
- // we might have already changed this problematic SAX2 default.
- if (nsClass != null && nsClass.isAssignableFrom (klass)) {
- if (!prefixes)
- break;
- consumer = ((EventFilter)consumer).getNext ();
-
- // the parser _might_ do DTD validation by default ...
- // if not, maybe we can change this setting.
- } else if (validClass != null
- && validClass.isAssignableFrom (klass)) {
- try {
- producer.setFeature (FEATURE_URI + "validation",
- true);
- consumer = ((ValidationConsumer)consumer).getNext ();
- } catch (SAXException e) {
- break;
- }
-
- // parsers are required not to have such bugs
- } else if (wfClass != null && wfClass.isAssignableFrom (klass)) {
- consumer = ((WellFormednessFilter)consumer).getNext ();
-
- // stop on the first pipeline stage we can't remove
- } else
- break;
-
- if (consumer == null)
- klass = null;
- }
-
- // the actual setting here doesn't matter as much
- // as that producer and consumer agree
- if (xincClass != null && klass != null
- && xincClass.isAssignableFrom (klass))
- ((XIncludeFilter)consumer).setSavingPrefixes (prefixes);
-
- // Some SAX parsers can't handle null handlers -- bleech
- DefaultHandler2 h = new DefaultHandler2 ();
-
- if (consumer != null && consumer.getContentHandler () != null)
- producer.setContentHandler (consumer.getContentHandler ());
- else
- producer.setContentHandler (h);
- if (consumer != null && consumer.getDTDHandler () != null)
- producer.setDTDHandler (consumer.getDTDHandler ());
- else
- producer.setDTDHandler (h);
-
- try {
- Object dh;
-
- if (consumer != null)
- dh = consumer.getProperty (DECL_HANDLER);
- else
- dh = null;
- if (dh == null)
- dh = h;
- producer.setProperty (DECL_HANDLER, dh);
- } catch (Exception e) { /* ignore */ }
- try {
- Object lh;
-
- if (consumer != null)
- lh = consumer.getProperty (LEXICAL_HANDLER);
- else
- lh = null;
- if (lh == null)
- lh = h;
- producer.setProperty (LEXICAL_HANDLER, lh);
- } catch (Exception e) { /* ignore */ }
-
- // this binding goes the other way around
- if (producer.getErrorHandler () == null)
- producer.setErrorHandler (h);
- if (consumer != null)
- consumer.setErrorHandler (producer.getErrorHandler ());
- }
-
+ Class klass = null;
+ boolean prefixes;
+
+ if (!loaded)
+ loadClasses ();
+
+ // DOM building, printing, layered validation, and other
+ // things don't work well when prefix info is discarded.
+ // Include it by default, whenever possible.
+ try {
+ producer.setFeature (FEATURE_URI + "namespace-prefixes",
+ true);
+ prefixes = true;
+ } catch (SAXException e) {
+ prefixes = false;
+ }
+
+ // NOTE: This loop doesn't use "instanceof", since that
+ // would prevent compiling/linking without those classes
+ // being present.
+ while (consumer != null) {
+ klass = consumer.getClass ();
+
+ // we might have already changed this problematic SAX2 default.
+ if (nsClass != null && nsClass.isAssignableFrom (klass)) {
+ if (!prefixes)
+ break;
+ consumer = ((EventFilter)consumer).getNext ();
+
+ // the parser _might_ do DTD validation by default ...
+ // if not, maybe we can change this setting.
+ } else if (validClass != null
+ && validClass.isAssignableFrom (klass)) {
+ try {
+ producer.setFeature (FEATURE_URI + "validation",
+ true);
+ consumer = ((ValidationConsumer)consumer).getNext ();
+ } catch (SAXException e) {
+ break;
+ }
+
+ // parsers are required not to have such bugs
+ } else if (wfClass != null && wfClass.isAssignableFrom (klass)) {
+ consumer = ((WellFormednessFilter)consumer).getNext ();
+
+ // stop on the first pipeline stage we can't remove
+ } else
+ break;
+
+ if (consumer == null)
+ klass = null;
+ }
+
+ // the actual setting here doesn't matter as much
+ // as that producer and consumer agree
+ if (xincClass != null && klass != null
+ && xincClass.isAssignableFrom (klass))
+ ((XIncludeFilter)consumer).setSavingPrefixes (prefixes);
+
+ // Some SAX parsers can't handle null handlers -- bleech
+ DefaultHandler2 h = new DefaultHandler2 ();
+
+ if (consumer != null && consumer.getContentHandler () != null)
+ producer.setContentHandler (consumer.getContentHandler ());
+ else
+ producer.setContentHandler (h);
+ if (consumer != null && consumer.getDTDHandler () != null)
+ producer.setDTDHandler (consumer.getDTDHandler ());
+ else
+ producer.setDTDHandler (h);
+
+ try {
+ Object dh;
+
+ if (consumer != null)
+ dh = consumer.getProperty (DECL_HANDLER);
+ else
+ dh = null;
+ if (dh == null)
+ dh = h;
+ producer.setProperty (DECL_HANDLER, dh);
+ } catch (Exception e) { /* ignore */ }
+ try {
+ Object lh;
+
+ if (consumer != null)
+ lh = consumer.getProperty (LEXICAL_HANDLER);
+ else
+ lh = null;
+ if (lh == null)
+ lh = h;
+ producer.setProperty (LEXICAL_HANDLER, lh);
+ } catch (Exception e) { /* ignore */ }
+
+ // this binding goes the other way around
+ if (producer.getErrorHandler () == null)
+ producer.setErrorHandler (h);
+ if (consumer != null)
+ consumer.setErrorHandler (producer.getErrorHandler ());
+ }
+
/**
* Initializes all handlers to null.
*/
- // constructor used by PipelineFactory
+ // constructor used by PipelineFactory
public EventFilter () { }
@@ -394,30 +394,30 @@ public class EventFilter
* the specified consumer, making it easy to pass events through.
* If the consumer is null, all handlers are initialzed to null.
*/
- // constructor used by PipelineFactory
+ // constructor used by PipelineFactory
public EventFilter (EventConsumer consumer)
{
- if (consumer == null)
- return;
+ if (consumer == null)
+ return;
- next = consumer;
+ next = consumer;
- // We delegate through the "xxNext" handlers, and
- // report the "xxHandler" ones on our input side.
+ // We delegate through the "xxNext" handlers, and
+ // report the "xxHandler" ones on our input side.
- // Normally a subclass would both override handler
- // methods and register itself as the "xxHandler".
+ // Normally a subclass would both override handler
+ // methods and register itself as the "xxHandler".
- docHandler = docNext = consumer.getContentHandler ();
- dtdHandler = dtdNext = consumer.getDTDHandler ();
- try {
- declHandler = declNext = (DeclHandler)
- consumer.getProperty (DECL_HANDLER);
- } catch (SAXException e) { /* leave value null */ }
- try {
- lexHandler = lexNext = (LexicalHandler)
- consumer.getProperty (LEXICAL_HANDLER);
- } catch (SAXException e) { /* leave value null */ }
+ docHandler = docNext = consumer.getContentHandler ();
+ dtdHandler = dtdNext = consumer.getDTDHandler ();
+ try {
+ declHandler = declNext = (DeclHandler)
+ consumer.getProperty (DECL_HANDLER);
+ } catch (SAXException e) { /* leave value null */ }
+ try {
+ lexHandler = lexNext = (LexicalHandler)
+ consumer.getProperty (LEXICAL_HANDLER);
+ } catch (SAXException e) { /* leave value null */ }
}
/**
@@ -442,33 +442,33 @@ public class EventFilter
*
* @param next the next downstream component of the pipeline.
* @exception IllegalStateException if the "next" consumer has
- * already been set through the constructor.
+ * already been set through the constructor.
*/
public void chainTo (XMLFilterImpl next)
{
- if (this.next != null)
- throw new IllegalStateException ();
+ if (this.next != null)
+ throw new IllegalStateException ();
- docNext = next.getContentHandler ();
- if (docHandler == null)
- docHandler = docNext;
- dtdNext = next.getDTDHandler ();
- if (dtdHandler == null)
- dtdHandler = dtdNext;
+ docNext = next.getContentHandler ();
+ if (docHandler == null)
+ docHandler = docNext;
+ dtdNext = next.getDTDHandler ();
+ if (dtdHandler == null)
+ dtdHandler = dtdNext;
- try {
- declNext = (DeclHandler) next.getProperty (DECL_HANDLER);
- if (declHandler == null)
- declHandler = declNext;
- } catch (SAXException e) { /* leave value null */ }
- try {
- lexNext = (LexicalHandler) next.getProperty (LEXICAL_HANDLER);
- if (lexHandler == null)
- lexHandler = lexNext;
- } catch (SAXException e) { /* leave value null */ }
+ try {
+ declNext = (DeclHandler) next.getProperty (DECL_HANDLER);
+ if (declHandler == null)
+ declHandler = declNext;
+ } catch (SAXException e) { /* leave value null */ }
+ try {
+ lexNext = (LexicalHandler) next.getProperty (LEXICAL_HANDLER);
+ if (lexHandler == null)
+ lexHandler = lexNext;
+ } catch (SAXException e) { /* leave value null */ }
- if (errHandler != null)
- next.setErrorHandler (errHandler);
+ if (errHandler != null)
+ next.setErrorHandler (errHandler);
}
/**
@@ -477,9 +477,9 @@ public class EventFilter
*/
final public void setErrorHandler (ErrorHandler handler)
{
- errHandler = handler;
- if (next != null)
- next.setErrorHandler (handler);
+ errHandler = handler;
+ if (next != null)
+ next.setErrorHandler (handler);
}
/**
@@ -488,7 +488,7 @@ public class EventFilter
*/
final public ErrorHandler getErrorHandler ()
{
- return errHandler;
+ return errHandler;
}
@@ -497,7 +497,7 @@ public class EventFilter
* is no such handler.
*/
final public EventConsumer getNext ()
- { return next; }
+ { return next; }
/**
@@ -508,13 +508,13 @@ public class EventFilter
*/
final public void setContentHandler (ContentHandler h)
{
- docHandler = h;
+ docHandler = h;
}
/** Returns the content handler being used. */
final public ContentHandler getContentHandler ()
{
- return docHandler;
+ return docHandler;
}
/**
@@ -524,12 +524,12 @@ public class EventFilter
* probably pointed to the next consumer by the base class constructor.
*/
final public void setDTDHandler (DTDHandler h)
- { dtdHandler = h; }
+ { dtdHandler = h; }
/** Returns the dtd handler being used. */
final public DTDHandler getDTDHandler ()
{
- return dtdHandler;
+ return dtdHandler;
}
/**
@@ -541,36 +541,36 @@ public class EventFilter
final public void setProperty (String id, Object o)
throws SAXNotRecognizedException, SAXNotSupportedException
{
- try {
- Object value = getProperty (id);
-
- if (value == o)
- return;
- if (DECL_HANDLER.equals (id)) {
- declHandler = (DeclHandler) o;
- return;
- }
- if (LEXICAL_HANDLER.equals (id)) {
- lexHandler = (LexicalHandler) o;
- return;
- }
- throw new SAXNotSupportedException (id);
-
- } catch (ClassCastException e) {
- throw new SAXNotSupportedException (id);
- }
+ try {
+ Object value = getProperty (id);
+
+ if (value == o)
+ return;
+ if (DECL_HANDLER.equals (id)) {
+ declHandler = (DeclHandler) o;
+ return;
+ }
+ if (LEXICAL_HANDLER.equals (id)) {
+ lexHandler = (LexicalHandler) o;
+ return;
+ }
+ throw new SAXNotSupportedException (id);
+
+ } catch (ClassCastException e) {
+ throw new SAXNotSupportedException (id);
+ }
}
/** Retrieves a property of unknown intent (usually a handler) */
final public Object getProperty (String id)
throws SAXNotRecognizedException
{
- if (DECL_HANDLER.equals (id))
- return declHandler;
- if (LEXICAL_HANDLER.equals (id))
- return lexHandler;
+ if (DECL_HANDLER.equals (id))
+ return declHandler;
+ if (LEXICAL_HANDLER.equals (id))
+ return lexHandler;
- throw new SAXNotRecognizedException (id);
+ throw new SAXNotRecognizedException (id);
}
/**
@@ -578,7 +578,7 @@ public class EventFilter
* (or a subclass) is handling {@link ContentHandler } events.
*/
public Locator getDocumentLocator ()
- { return locator; }
+ { return locator; }
// CONTENT HANDLER DELEGATIONS
@@ -586,113 +586,113 @@ public class EventFilter
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void setDocumentLocator (Locator locator)
{
- this.locator = locator;
- if (docNext != null)
- docNext.setDocumentLocator (locator);
+ this.locator = locator;
+ if (docNext != null)
+ docNext.setDocumentLocator (locator);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void startDocument () throws SAXException
{
- if (docNext != null)
- docNext.startDocument ();
+ if (docNext != null)
+ docNext.startDocument ();
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void skippedEntity (String name) throws SAXException
{
- if (docNext != null)
- docNext.skippedEntity (name);
+ if (docNext != null)
+ docNext.skippedEntity (name);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void processingInstruction (String target, String data)
throws SAXException
{
- if (docNext != null)
- docNext.processingInstruction (target, data);
+ if (docNext != null)
+ docNext.processingInstruction (target, data);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void characters (char ch [], int start, int length)
throws SAXException
{
- if (docNext != null)
- docNext.characters (ch, start, length);
+ if (docNext != null)
+ docNext.characters (ch, start, length);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void ignorableWhitespace (char ch [], int start, int length)
throws SAXException
{
- if (docNext != null)
- docNext.ignorableWhitespace (ch, start, length);
+ if (docNext != null)
+ docNext.ignorableWhitespace (ch, start, length);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void startPrefixMapping (String prefix, String uri)
throws SAXException
{
- if (docNext != null)
- docNext.startPrefixMapping (prefix, uri);
+ if (docNext != null)
+ docNext.startPrefixMapping (prefix, uri);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void startElement (
- String uri, String localName,
- String qName, Attributes atts
+ String uri, String localName,
+ String qName, Attributes atts
) throws SAXException
{
- if (docNext != null)
- docNext.startElement (uri, localName, qName, atts);
+ if (docNext != null)
+ docNext.startElement (uri, localName, qName, atts);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void endElement (String uri, String localName, String qName)
throws SAXException
{
- if (docNext != null)
- docNext.endElement (uri, localName, qName);
+ if (docNext != null)
+ docNext.endElement (uri, localName, qName);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void endPrefixMapping (String prefix) throws SAXException
{
- if (docNext != null)
- docNext.endPrefixMapping (prefix);
+ if (docNext != null)
+ docNext.endPrefixMapping (prefix);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void endDocument () throws SAXException
{
- if (docNext != null)
- docNext.endDocument ();
- locator = null;
+ if (docNext != null)
+ docNext.endDocument ();
+ locator = null;
}
// DTD HANDLER DELEGATIONS
-
+
/** <b>SAX1:</b> passes this callback to the next consumer, if any */
public void unparsedEntityDecl (
- String name,
- String publicId,
- String systemId,
- String notationName
+ String name,
+ String publicId,
+ String systemId,
+ String notationName
) throws SAXException
{
- if (dtdNext != null)
- dtdNext.unparsedEntityDecl (name, publicId, systemId, notationName);
+ if (dtdNext != null)
+ dtdNext.unparsedEntityDecl (name, publicId, systemId, notationName);
}
-
+
/** <b>SAX1:</b> passes this callback to the next consumer, if any */
public void notationDecl (String name, String publicId, String systemId)
throws SAXException
{
- if (dtdNext != null)
- dtdNext.notationDecl (name, publicId, systemId);
+ if (dtdNext != null)
+ dtdNext.notationDecl (name, publicId, systemId);
}
-
+
// LEXICAL HANDLER DELEGATIONS
@@ -700,40 +700,40 @@ public class EventFilter
public void startDTD (String name, String publicId, String systemId)
throws SAXException
{
- if (lexNext != null)
- lexNext.startDTD (name, publicId, systemId);
+ if (lexNext != null)
+ lexNext.startDTD (name, publicId, systemId);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void endDTD ()
throws SAXException
{
- if (lexNext != null)
- lexNext.endDTD ();
+ if (lexNext != null)
+ lexNext.endDTD ();
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void comment (char ch [], int start, int length)
throws SAXException
{
- if (lexNext != null)
- lexNext.comment (ch, start, length);
+ if (lexNext != null)
+ lexNext.comment (ch, start, length);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void startCDATA ()
throws SAXException
{
- if (lexNext != null)
- lexNext.startCDATA ();
+ if (lexNext != null)
+ lexNext.startCDATA ();
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void endCDATA ()
throws SAXException
{
- if (lexNext != null)
- lexNext.endCDATA ();
+ if (lexNext != null)
+ lexNext.endCDATA ();
}
/**
@@ -742,8 +742,8 @@ public class EventFilter
public void startEntity (String name)
throws SAXException
{
- if (lexNext != null)
- lexNext.startEntity (name);
+ if (lexNext != null)
+ lexNext.startEntity (name);
}
/**
@@ -752,10 +752,10 @@ public class EventFilter
public void endEntity (String name)
throws SAXException
{
- if (lexNext != null)
- lexNext.endEntity (name);
+ if (lexNext != null)
+ lexNext.endEntity (name);
}
-
+
// DECLARATION HANDLER DELEGATIONS
@@ -764,33 +764,33 @@ public class EventFilter
public void elementDecl (String name, String model)
throws SAXException
{
- if (declNext != null)
- declNext.elementDecl (name, model);
+ if (declNext != null)
+ declNext.elementDecl (name, model);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void attributeDecl (String eName, String aName,
- String type, String mode, String value)
+ String type, String mode, String value)
throws SAXException
{
- if (declNext != null)
- declNext.attributeDecl (eName, aName, type, mode, value);
+ if (declNext != null)
+ declNext.attributeDecl (eName, aName, type, mode, value);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void externalEntityDecl (String name,
- String publicId, String systemId)
+ String publicId, String systemId)
throws SAXException
{
- if (declNext != null)
- declNext.externalEntityDecl (name, publicId, systemId);
+ if (declNext != null)
+ declNext.externalEntityDecl (name, publicId, systemId);
}
/** <b>SAX2:</b> passes this callback to the next consumer, if any */
public void internalEntityDecl (String name, String value)
throws SAXException
{
- if (declNext != null)
- declNext.internalEntityDecl (name, value);
+ if (declNext != null)
+ declNext.internalEntityDecl (name, value);
}
}
diff --git a/libjava/classpath/gnu/xml/pipeline/LinkFilter.java b/libjava/classpath/gnu/xml/pipeline/LinkFilter.java
index ddb9fda2e75..e11a5eca637 100644
--- a/libjava/classpath/gnu/xml/pipeline/LinkFilter.java
+++ b/libjava/classpath/gnu/xml/pipeline/LinkFilter.java
@@ -1,4 +1,4 @@
-/* LinkFilter.java --
+/* LinkFilter.java --
Copyright (C) 1999,2000,2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -38,7 +38,7 @@ exception statement from your version. */
package gnu.xml.pipeline;
import java.io.IOException;
-import java.net.URL;
+import java.net.URL;
import java.util.Enumeration;
import java.util.Vector;
@@ -65,21 +65,21 @@ import org.xml.sax.SAXException;
public class LinkFilter extends EventFilter
{
// for storing URIs
- private Vector vector = new Vector ();
+ private Vector vector = new Vector ();
- // struct for "full" link record (tbd)
- // these for troubleshooting original source:
- // original uri
- // uri as resolved (base, relative, etc)
- // URI of originating doc
- // line #
- // original element + attrs (img src, desc, etc)
+ // struct for "full" link record (tbd)
+ // these for troubleshooting original source:
+ // original uri
+ // uri as resolved (base, relative, etc)
+ // URI of originating doc
+ // line #
+ // original element + attrs (img src, desc, etc)
- // XLink model of the link ... for inter-site pairups ?
+ // XLink model of the link ... for inter-site pairups ?
- private String baseURI;
+ private String baseURI;
- private boolean siteRestricted = false;
+ private boolean siteRestricted = false;
//
// XXX leverage blacklist info (like robots.txt)
@@ -93,10 +93,10 @@ public class LinkFilter extends EventFilter
* Constructs a new event filter, which collects links in private data
* structure for later enumeration.
*/
- // constructor used by PipelineFactory
+ // constructor used by PipelineFactory
public LinkFilter ()
{
- super.setContentHandler (this);
+ super.setContentHandler (this);
}
@@ -105,11 +105,11 @@ public class LinkFilter extends EventFilter
* structure for later enumeration and passes all events, unmodified,
* to the next consumer.
*/
- // constructor used by PipelineFactory
+ // constructor used by PipelineFactory
public LinkFilter (EventConsumer next)
{
- super (next);
- super.setContentHandler (this);
+ super (next);
+ super.setContentHandler (this);
}
@@ -121,7 +121,7 @@ public class LinkFilter extends EventFilter
*/
public Enumeration getLinks ()
{
- return vector.elements ();
+ return vector.elements ();
}
/**
@@ -130,7 +130,7 @@ public class LinkFilter extends EventFilter
*/
public void removeAllLinks ()
{
- vector = new Vector ();
+ vector = new Vector ();
}
@@ -138,84 +138,84 @@ public class LinkFilter extends EventFilter
* Collects URIs for (X)HTML content from elements which hold them.
*/
public void startElement (
- String uri,
- String localName,
- String qName,
- Attributes atts
+ String uri,
+ String localName,
+ String qName,
+ Attributes atts
) throws SAXException
{
- String link;
-
- // Recognize XHTML links.
- if ("http://www.w3.org/1999/xhtml".equals (uri)) {
-
- if ("a".equals (localName) || "base".equals (localName)
- || "area".equals (localName))
- link = atts.getValue ("href");
- else if ("iframe".equals (localName) || "frame".equals (localName))
- link = atts.getValue ("src");
- else if ("blockquote".equals (localName) || "q".equals (localName)
- || "ins".equals (localName) || "del".equals (localName))
- link = atts.getValue ("cite");
- else
- link = null;
- link = maybeAddLink (link);
-
- // "base" modifies designated baseURI
- if ("base".equals (localName) && link != null)
- baseURI = link;
-
- if ("iframe".equals (localName) || "img".equals (localName))
- maybeAddLink (atts.getValue ("longdesc"));
- }
-
- super.startElement (uri, localName, qName, atts);
+ String link;
+
+ // Recognize XHTML links.
+ if ("http://www.w3.org/1999/xhtml".equals (uri)) {
+
+ if ("a".equals (localName) || "base".equals (localName)
+ || "area".equals (localName))
+ link = atts.getValue ("href");
+ else if ("iframe".equals (localName) || "frame".equals (localName))
+ link = atts.getValue ("src");
+ else if ("blockquote".equals (localName) || "q".equals (localName)
+ || "ins".equals (localName) || "del".equals (localName))
+ link = atts.getValue ("cite");
+ else
+ link = null;
+ link = maybeAddLink (link);
+
+ // "base" modifies designated baseURI
+ if ("base".equals (localName) && link != null)
+ baseURI = link;
+
+ if ("iframe".equals (localName) || "img".equals (localName))
+ maybeAddLink (atts.getValue ("longdesc"));
+ }
+
+ super.startElement (uri, localName, qName, atts);
}
private String maybeAddLink (String link)
{
- int index;
-
- // ignore empty links and fragments inside docs
- if (link == null)
- return null;
- if ((index = link.indexOf ("#")) >= 0)
- link = link.substring (0, index);
- if (link.equals (""))
- return null;
-
- try {
- // get the real URI
- URL base = new URL ((baseURI != null)
- ? baseURI
- : getDocumentLocator ().getSystemId ());
- URL url = new URL (base, link);
-
- link = url.toString ();
-
- // ignore duplicates
- if (vector.contains (link))
- return link;
-
- // other than what "base" does, stick to original site:
- if (siteRestricted) {
- // don't switch protocols
- if (!base.getProtocol ().equals (url.getProtocol ()))
- return link;
- // don't switch servers
- if (base.getHost () != null
- && !base.getHost ().equals (url.getHost ()))
- return link;
- }
-
- vector.addElement (link);
-
- return link;
-
- } catch (IOException e) {
- // bad URLs we don't want
- }
- return null;
+ int index;
+
+ // ignore empty links and fragments inside docs
+ if (link == null)
+ return null;
+ if ((index = link.indexOf ("#")) >= 0)
+ link = link.substring (0, index);
+ if (link.equals (""))
+ return null;
+
+ try {
+ // get the real URI
+ URL base = new URL ((baseURI != null)
+ ? baseURI
+ : getDocumentLocator ().getSystemId ());
+ URL url = new URL (base, link);
+
+ link = url.toString ();
+
+ // ignore duplicates
+ if (vector.contains (link))
+ return link;
+
+ // other than what "base" does, stick to original site:
+ if (siteRestricted) {
+ // don't switch protocols
+ if (!base.getProtocol ().equals (url.getProtocol ()))
+ return link;
+ // don't switch servers
+ if (base.getHost () != null
+ && !base.getHost ().equals (url.getHost ()))
+ return link;
+ }
+
+ vector.addElement (link);
+
+ return link;
+
+ } catch (IOException e) {
+ // bad URLs we don't want
+ }
+ return null;
}
/**
@@ -224,8 +224,8 @@ public class LinkFilter extends EventFilter
public void startDocument ()
throws SAXException
{
- if (getDocumentLocator () == null)
- throw new SAXException ("no Locator!");
+ if (getDocumentLocator () == null)
+ throw new SAXException ("no Locator!");
}
/**
@@ -236,7 +236,7 @@ public class LinkFilter extends EventFilter
public void endDocument ()
throws SAXException
{
- baseURI = null;
- super.endDocument ();
+ baseURI = null;
+ super.endDocument ();
}
}
diff --git a/libjava/classpath/gnu/xml/pipeline/NSFilter.java b/libjava/classpath/gnu/xml/pipeline/NSFilter.java
index db875e1debf..0fa4621d339 100644
--- a/libjava/classpath/gnu/xml/pipeline/NSFilter.java
+++ b/libjava/classpath/gnu/xml/pipeline/NSFilter.java
@@ -1,4 +1,4 @@
-/* NSFilter.java --
+/* NSFilter.java --
Copyright (C) 1999,2000,2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -56,23 +56,23 @@ import org.xml.sax.helpers.NamespaceSupport;
* information using XML. There are various common ways that such data
* gets discarded: <ul>
*
- * <li> By default, SAX2 parsers must discard the "xmlns*"
- * attributes, and may also choose not to report properly prefixed
- * names for elements or attributes. (Some parsers may support
- * changing the <em>namespace-prefixes</em> value from the default
- * to <em>true</em>, effectively eliminating the need to use this
- * filter on their output.)
+ * <li> By default, SAX2 parsers must discard the "xmlns*"
+ * attributes, and may also choose not to report properly prefixed
+ * names for elements or attributes. (Some parsers may support
+ * changing the <em>namespace-prefixes</em> value from the default
+ * to <em>true</em>, effectively eliminating the need to use this
+ * filter on their output.)
*
- * <li> When event streams are generated from a DOM tree, they may
- * have never have had prefixes or declarations for namespaces; or
- * the existing prefixes or declarations may have been invalidated
- * by structural modifications to that DOM tree.
+ * <li> When event streams are generated from a DOM tree, they may
+ * have never have had prefixes or declarations for namespaces; or
+ * the existing prefixes or declarations may have been invalidated
+ * by structural modifications to that DOM tree.
*
- * <li> Other software writing SAX event streams won't necessarily
- * be worrying about prefix management, and so they will need to
- * have a transparent solution for managing them.
+ * <li> Other software writing SAX event streams won't necessarily
+ * be worrying about prefix management, and so they will need to
+ * have a transparent solution for managing them.
*
- * </ul>
+ * </ul>
*
* <p> This filter uses a heuristic to choose the prefix to assign to any
* particular name which wasn't already corectly prefixed. The associated
@@ -91,55 +91,55 @@ import org.xml.sax.helpers.NamespaceSupport;
*/
public class NSFilter extends EventFilter
{
- private NamespaceSupport nsStack = new NamespaceSupport ();
- private Stack elementStack = new Stack ();
+ private NamespaceSupport nsStack = new NamespaceSupport ();
+ private Stack elementStack = new Stack ();
- private boolean pushedContext;
- private String nsTemp [] = new String [3];
- private AttributesImpl attributes = new AttributesImpl ();
- private boolean usedDefault;
+ private boolean pushedContext;
+ private String nsTemp [] = new String [3];
+ private AttributesImpl attributes = new AttributesImpl ();
+ private boolean usedDefault;
// gensymmed prefixes use this root name
- private static final String prefixRoot = "prefix-";
+ private static final String prefixRoot = "prefix-";
+
-
/**
* Passes events through to the specified consumer, after first
* processing them.
*
* @param next the next event consumer to receive events.
*/
- // constructor used by PipelineFactory
+ // constructor used by PipelineFactory
public NSFilter (EventConsumer next)
{
- super (next);
+ super (next);
- setContentHandler (this);
+ setContentHandler (this);
}
private void fatalError (String message)
throws SAXException
{
- SAXParseException e;
- ErrorHandler handler = getErrorHandler ();
- Locator locator = getDocumentLocator ();
-
- if (locator == null)
- e = new SAXParseException (message, null, null, -1, -1);
- else
- e = new SAXParseException (message, locator);
- if (handler != null)
- handler.fatalError (e);
- throw e;
+ SAXParseException e;
+ ErrorHandler handler = getErrorHandler ();
+ Locator locator = getDocumentLocator ();
+
+ if (locator == null)
+ e = new SAXParseException (message, null, null, -1, -1);
+ else
+ e = new SAXParseException (message, locator);
+ if (handler != null)
+ handler.fatalError (e);
+ throw e;
}
public void startDocument () throws SAXException
{
- elementStack.removeAllElements ();
- nsStack.reset ();
- pushedContext = false;
- super.startDocument ();
+ elementStack.removeAllElements ();
+ nsStack.reset ();
+ pushedContext = false;
+ super.startDocument ();
}
/**
@@ -151,176 +151,176 @@ public class NSFilter extends EventFilter
public void startPrefixMapping (String prefix, String uri)
throws SAXException
{
- if (pushedContext == false) {
- nsStack.pushContext ();
- pushedContext = true;
- }
-
- // this check is awkward, but the paranoia prevents big trouble
- for (Enumeration e = nsStack.getDeclaredPrefixes ();
- e.hasMoreElements ();
- /* NOP */ ) {
- String declared = (String) e.nextElement ();
-
- if (!declared.equals (prefix))
- continue;
- if (uri.equals (nsStack.getURI (prefix)))
- return;
- fatalError ("inconsistent binding for prefix '" + prefix
- + "' ... " + uri + " (was " + nsStack.getURI (prefix) + ")");
- }
-
- if (!nsStack.declarePrefix (prefix, uri))
- fatalError ("illegal prefix declared: " + prefix);
+ if (pushedContext == false) {
+ nsStack.pushContext ();
+ pushedContext = true;
+ }
+
+ // this check is awkward, but the paranoia prevents big trouble
+ for (Enumeration e = nsStack.getDeclaredPrefixes ();
+ e.hasMoreElements ();
+ /* NOP */ ) {
+ String declared = (String) e.nextElement ();
+
+ if (!declared.equals (prefix))
+ continue;
+ if (uri.equals (nsStack.getURI (prefix)))
+ return;
+ fatalError ("inconsistent binding for prefix '" + prefix
+ + "' ... " + uri + " (was " + nsStack.getURI (prefix) + ")");
+ }
+
+ if (!nsStack.declarePrefix (prefix, uri))
+ fatalError ("illegal prefix declared: " + prefix);
}
private String fixName (String ns, String l, String name, boolean isAttr)
throws SAXException
{
- if ("".equals (name) || name == null) {
- name = l;
- if ("".equals (name) || name == null)
- fatalError ("empty/null name");
- }
-
- // can we correctly process the name as-is?
- // handles "element scope" attribute names here.
- if (nsStack.processName (name, nsTemp, isAttr) != null
- && nsTemp [0].equals (ns)
- ) {
- return nsTemp [2];
- }
-
- // nope, gotta modify the name or declare a default mapping
- int temp;
-
- // get rid of any current prefix
- if ((temp = name.indexOf (':')) >= 0) {
- name = name.substring (temp + 1);
-
- // ... maybe that's enough (use/prefer default namespace) ...
- if (!isAttr && nsStack.processName (name, nsTemp, false) != null
- && nsTemp [0].equals (ns)
- ) {
- return nsTemp [2];
- }
- }
-
- // must we define and use the default/undefined prefix?
- if ("".equals (ns)) {
- if (isAttr)
- fatalError ("processName bug");
- if (attributes.getIndex ("xmlns") != -1)
- fatalError ("need to undefine default NS, but it's bound: "
- + attributes.getValue ("xmlns"));
-
- nsStack.declarePrefix ("", "");
- attributes.addAttribute ("", "", "xmlns", "CDATA", "");
- return name;
- }
-
- // is there at least one non-null prefix we can use?
- for (Enumeration e = nsStack.getDeclaredPrefixes ();
- e.hasMoreElements ();
- /* NOP */) {
- String prefix = (String) e.nextElement ();
- String uri = nsStack.getURI (prefix);
-
- if (uri == null || !uri.equals (ns))
- continue;
- return prefix + ":" + name;
- }
-
- // no such luck. create a prefix name, declare it, use it.
- for (temp = 0; temp >= 0; temp++) {
- String prefix = prefixRoot + temp;
-
- if (nsStack.getURI (prefix) == null) {
- nsStack.declarePrefix (prefix, ns);
- attributes.addAttribute ("", "", "xmlns:" + prefix,
- "CDATA", ns);
- return prefix + ":" + name;
- }
- }
- fatalError ("too many prefixes genned");
- // NOTREACHED
- return null;
+ if ("".equals (name) || name == null) {
+ name = l;
+ if ("".equals (name) || name == null)
+ fatalError ("empty/null name");
+ }
+
+ // can we correctly process the name as-is?
+ // handles "element scope" attribute names here.
+ if (nsStack.processName (name, nsTemp, isAttr) != null
+ && nsTemp [0].equals (ns)
+ ) {
+ return nsTemp [2];
+ }
+
+ // nope, gotta modify the name or declare a default mapping
+ int temp;
+
+ // get rid of any current prefix
+ if ((temp = name.indexOf (':')) >= 0) {
+ name = name.substring (temp + 1);
+
+ // ... maybe that's enough (use/prefer default namespace) ...
+ if (!isAttr && nsStack.processName (name, nsTemp, false) != null
+ && nsTemp [0].equals (ns)
+ ) {
+ return nsTemp [2];
+ }
+ }
+
+ // must we define and use the default/undefined prefix?
+ if ("".equals (ns)) {
+ if (isAttr)
+ fatalError ("processName bug");
+ if (attributes.getIndex ("xmlns") != -1)
+ fatalError ("need to undefine default NS, but it's bound: "
+ + attributes.getValue ("xmlns"));
+
+ nsStack.declarePrefix ("", "");
+ attributes.addAttribute ("", "", "xmlns", "CDATA", "");
+ return name;
+ }
+
+ // is there at least one non-null prefix we can use?
+ for (Enumeration e = nsStack.getDeclaredPrefixes ();
+ e.hasMoreElements ();
+ /* NOP */) {
+ String prefix = (String) e.nextElement ();
+ String uri = nsStack.getURI (prefix);
+
+ if (uri == null || !uri.equals (ns))
+ continue;
+ return prefix + ":" + name;
+ }
+
+ // no such luck. create a prefix name, declare it, use it.
+ for (temp = 0; temp >= 0; temp++) {
+ String prefix = prefixRoot + temp;
+
+ if (nsStack.getURI (prefix) == null) {
+ nsStack.declarePrefix (prefix, ns);
+ attributes.addAttribute ("", "", "xmlns:" + prefix,
+ "CDATA", ns);
+ return prefix + ":" + name;
+ }
+ }
+ fatalError ("too many prefixes genned");
+ // NOTREACHED
+ return null;
}
public void startElement (
- String uri, String localName,
- String qName, Attributes atts
+ String uri, String localName,
+ String qName, Attributes atts
) throws SAXException
{
- if (!pushedContext)
- nsStack.pushContext ();
- pushedContext = false;
-
- // make sure we have all NS declarations handy before we start
- int length = atts.getLength ();
-
- for (int i = 0; i < length; i++) {
- String aName = atts.getQName (i);
-
- if (!aName.startsWith ("xmlns"))
- continue;
-
- String prefix;
-
- if ("xmlns".equals (aName))
- prefix = "";
- else if (aName.indexOf (':') == 5)
- prefix = aName.substring (6);
- else // "xmlnsfoo" etc.
- continue;
- startPrefixMapping (prefix, atts.getValue (i));
- }
-
- // put namespace decls at the start of our regenned attlist
- attributes.clear ();
- for (Enumeration e = nsStack.getDeclaredPrefixes ();
- e.hasMoreElements ();
- /* NOP */) {
- String prefix = (String) e.nextElement ();
-
- attributes.addAttribute ("", "",
- ("".equals (prefix)
- ? "xmlns"
- : "xmlns:" + prefix),
- "CDATA",
- nsStack.getURI (prefix));
- }
-
- // name fixups: element, then attributes.
- // fixName may declare a new prefix or, for the element,
- // redeclare the default (if element name needs it).
- qName = fixName (uri, localName, qName, false);
-
- for (int i = 0; i < length; i++) {
- String aName = atts.getQName (i);
- String aNS = atts.getURI (i);
- String aLocal = atts.getLocalName (i);
- String aType = atts.getType (i);
- String aValue = atts.getValue (i);
-
- if (aName.startsWith ("xmlns"))
- continue;
- aName = fixName (aNS, aLocal, aName, true);
- attributes.addAttribute (aNS, aLocal, aName, aType, aValue);
- }
-
- elementStack.push (qName);
-
- // pass event along, with cleaned-up names and decls.
- super.startElement (uri, localName, qName, attributes);
+ if (!pushedContext)
+ nsStack.pushContext ();
+ pushedContext = false;
+
+ // make sure we have all NS declarations handy before we start
+ int length = atts.getLength ();
+
+ for (int i = 0; i < length; i++) {
+ String aName = atts.getQName (i);
+
+ if (!aName.startsWith ("xmlns"))
+ continue;
+
+ String prefix;
+
+ if ("xmlns".equals (aName))
+ prefix = "";
+ else if (aName.indexOf (':') == 5)
+ prefix = aName.substring (6);
+ else // "xmlnsfoo" etc.
+ continue;
+ startPrefixMapping (prefix, atts.getValue (i));
+ }
+
+ // put namespace decls at the start of our regenned attlist
+ attributes.clear ();
+ for (Enumeration e = nsStack.getDeclaredPrefixes ();
+ e.hasMoreElements ();
+ /* NOP */) {
+ String prefix = (String) e.nextElement ();
+
+ attributes.addAttribute ("", "",
+ ("".equals (prefix)
+ ? "xmlns"
+ : "xmlns:" + prefix),
+ "CDATA",
+ nsStack.getURI (prefix));
+ }
+
+ // name fixups: element, then attributes.
+ // fixName may declare a new prefix or, for the element,
+ // redeclare the default (if element name needs it).
+ qName = fixName (uri, localName, qName, false);
+
+ for (int i = 0; i < length; i++) {
+ String aName = atts.getQName (i);
+ String aNS = atts.getURI (i);
+ String aLocal = atts.getLocalName (i);
+ String aType = atts.getType (i);
+ String aValue = atts.getValue (i);
+
+ if (aName.startsWith ("xmlns"))
+ continue;
+ aName = fixName (aNS, aLocal, aName, true);
+ attributes.addAttribute (aNS, aLocal, aName, aType, aValue);
+ }
+
+ elementStack.push (qName);
+
+ // pass event along, with cleaned-up names and decls.
+ super.startElement (uri, localName, qName, attributes);
}
public void endElement (String uri, String localName, String qName)
throws SAXException
{
- nsStack.popContext ();
- qName = (String) elementStack.pop ();
- super.endElement (uri, localName, qName);
+ nsStack.popContext ();
+ qName = (String) elementStack.pop ();
+ super.endElement (uri, localName, qName);
}
/**
@@ -330,12 +330,12 @@ public class NSFilter extends EventFilter
*/
public void endPrefixMapping (String prefix)
throws SAXException
- { }
+ { }
public void endDocument () throws SAXException
{
- elementStack.removeAllElements ();
- nsStack.reset ();
- super.endDocument ();
+ elementStack.removeAllElements ();
+ nsStack.reset ();
+ super.endDocument ();
}
}
diff --git a/libjava/classpath/gnu/xml/pipeline/PipelineFactory.java b/libjava/classpath/gnu/xml/pipeline/PipelineFactory.java
index f88ab164311..c2adab0210e 100644
--- a/libjava/classpath/gnu/xml/pipeline/PipelineFactory.java
+++ b/libjava/classpath/gnu/xml/pipeline/PipelineFactory.java
@@ -1,4 +1,4 @@
-/* PipelineFactory.java --
+/* PipelineFactory.java --
Copyright (C) 1999,2000,2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -69,120 +69,120 @@ import org.xml.sax.ext.*;
* The stage identifiers are either class names, or are one of the following
* short identifiers built into this class. (Most of these identifiers are
* no more than aliases for classes.) The built-in identifiers include:</p>
-
+
<table border="1" cellpadding="3" cellspacing="0">
<tr bgcolor="#ccccff" class="TableHeadingColor">
- <th align="center" width="5%">Stage</th>
- <th align="center" width="9%">Parameter</th>
- <th align="center" width="1%">Terminus</th>
- <th align="center">Description</th>
+ <th align="center" width="5%">Stage</th>
+ <th align="center" width="9%">Parameter</th>
+ <th align="center" width="1%">Terminus</th>
+ <th align="center">Description</th>
</tr>
<tr valign="top" align="center">
- <td><a href="../dom/Consumer.html">dom</a></td>
- <td><em>none</em></td>
- <td> yes </td>
- <td align="left"> Applications code can access a DOM Document built
- from the input event stream. When used as a filter, this buffers
- data up to an <em>endDocument</em> call, and then uses a DOM parser
- to report everything that has been recorded (which can easily be
- less than what was reported to it). </td>
+ <td><a href="../dom/Consumer.html">dom</a></td>
+ <td><em>none</em></td>
+ <td> yes </td>
+ <td align="left"> Applications code can access a DOM Document built
+ from the input event stream. When used as a filter, this buffers
+ data up to an <em>endDocument</em> call, and then uses a DOM parser
+ to report everything that has been recorded (which can easily be
+ less than what was reported to it). </td>
</tr>
<tr valign="top" align="center">
- <td><a href="NSFilter.html">nsfix</a></td>
- <td><em>none</em></td>
- <td>no</td>
- <td align="left">This stage ensures that the XML element and attribute
- names in its output use namespace prefixes and declarations correctly.
- That is, so that they match the "Namespace plus LocalName" naming data
- with which each XML element and attribute is already associated. </td>
+ <td><a href="NSFilter.html">nsfix</a></td>
+ <td><em>none</em></td>
+ <td>no</td>
+ <td align="left">This stage ensures that the XML element and attribute
+ names in its output use namespace prefixes and declarations correctly.
+ That is, so that they match the "Namespace plus LocalName" naming data
+ with which each XML element and attribute is already associated. </td>
</tr>
<tr valign="top" align="center">
- <td><a href="EventFilter.html">null</a></td>
- <td><em>none</em></td>
- <td>yes</td>
- <td align="left">This stage ignores all input event data.</td>
+ <td><a href="EventFilter.html">null</a></td>
+ <td><em>none</em></td>
+ <td>yes</td>
+ <td align="left">This stage ignores all input event data.</td>
</tr>
<tr valign="top" align="center">
- <td><a href="CallFilter.html">server</a></td>
- <td><em>required</em><br> server URL </td>
- <td>no</td>
- <td align="left">Sends its input as XML request to a remote server,
- normally a web application server using the HTTP or HTTPS protocols.
- The output of this stage is the parsed response from that server.</td>
+ <td><a href="CallFilter.html">server</a></td>
+ <td><em>required</em><br> server URL </td>
+ <td>no</td>
+ <td align="left">Sends its input as XML request to a remote server,
+ normally a web application server using the HTTP or HTTPS protocols.
+ The output of this stage is the parsed response from that server.</td>
</tr>
<tr valign="top" align="center">
- <td><a href="TeeConsumer.html">tee</a></td>
- <td><em>required</em><br> first pipeline</td>
- <td>no</td>
- <td align="left">This sends its events down two paths; its parameter
- is a pipeline descriptor for the first path, and the second path
- is the output of this stage.</td>
+ <td><a href="TeeConsumer.html">tee</a></td>
+ <td><em>required</em><br> first pipeline</td>
+ <td>no</td>
+ <td align="left">This sends its events down two paths; its parameter
+ is a pipeline descriptor for the first path, and the second path
+ is the output of this stage.</td>
</tr>
<tr valign="top" align="center">
- <td><a href="ValidationConsumer.html">validate</a></td>
- <td><em>none</em></td>
- <td>yes</td>
- <td align="left">This checks for validity errors, and reports them
- through its error handler. The input must include declaration events
- and some lexical events. </td>
+ <td><a href="ValidationConsumer.html">validate</a></td>
+ <td><em>none</em></td>
+ <td>yes</td>
+ <td align="left">This checks for validity errors, and reports them
+ through its error handler. The input must include declaration events
+ and some lexical events. </td>
</tr>
<tr valign="top" align="center">
- <td><a href="WellFormednessFilter.html">wf</a></td>
- <td><em>none</em></td>
- <td>yes</td>
- <td align="left"> This class provides some basic "well formedness"
- tests on the input event stream, and reports a fatal error if any
- of them fail. One example: start/end calls for elements must match.
- No SAX parser is permitted to produce malformed output, but other
- components can easily do so.</td>
+ <td><a href="WellFormednessFilter.html">wf</a></td>
+ <td><em>none</em></td>
+ <td>yes</td>
+ <td align="left"> This class provides some basic "well formedness"
+ tests on the input event stream, and reports a fatal error if any
+ of them fail. One example: start/end calls for elements must match.
+ No SAX parser is permitted to produce malformed output, but other
+ components can easily do so.</td>
</tr>
<tr valign="top" align="center">
- <td>write</td>
- <td><em>required</em><br> "stdout", "stderr", or filename</td>
- <td>yes</td>
- <td align="left"> Writes its input to the specified output, as pretty
- printed XML text encoded using UTF-8. Input events must be well
- formed and "namespace fixed", else the output won't be XML (or possibly
- namespace) conformant. The symbolic names represent
- <em>System.out</em> and <em>System.err</em> respectively; names must
- correspond to files which don't yet exist.</td>
+ <td>write</td>
+ <td><em>required</em><br> "stdout", "stderr", or filename</td>
+ <td>yes</td>
+ <td align="left"> Writes its input to the specified output, as pretty
+ printed XML text encoded using UTF-8. Input events must be well
+ formed and "namespace fixed", else the output won't be XML (or possibly
+ namespace) conformant. The symbolic names represent
+ <em>System.out</em> and <em>System.err</em> respectively; names must
+ correspond to files which don't yet exist.</td>
</tr>
<tr valign="top" align="center">
- <td>xhtml</td>
- <td><em>required</em><br> "stdout", "stderr", or filename</td>
- <td>yes</td>
- <td align="left"> Like <em>write</em> (above), except that XHTML rules
- are followed. The XHTML 1.0 Transitional document type is declared,
- and only ASCII characters are written (for interoperability). Other
- characters are written as entity or character references; the text is
- pretty printed.</td>
+ <td>xhtml</td>
+ <td><em>required</em><br> "stdout", "stderr", or filename</td>
+ <td>yes</td>
+ <td align="left"> Like <em>write</em> (above), except that XHTML rules
+ are followed. The XHTML 1.0 Transitional document type is declared,
+ and only ASCII characters are written (for interoperability). Other
+ characters are written as entity or character references; the text is
+ pretty printed.</td>
</tr>
<tr valign="top" align="center">
- <td><a href="XIncludeFilter.html">xinclude</a></td>
- <td><em>none</em></td>
- <td>no</td>
- <td align="left">This stage handles XInclude processing.
- This is like entity inclusion, except that the included content
- is declared in-line rather than in the DTD at the beginning of
- a document.
- </td>
+ <td><a href="XIncludeFilter.html">xinclude</a></td>
+ <td><em>none</em></td>
+ <td>no</td>
+ <td align="left">This stage handles XInclude processing.
+ This is like entity inclusion, except that the included content
+ is declared in-line rather than in the DTD at the beginning of
+ a document.
+ </td>
</tr>
<tr valign="top" align="center">
- <td><a href="XsltFilter.html">xslt</a></td>
- <td><em>required</em><br> XSLT stylesheet URI</td>
- <td>no</td>
- <td align="left">This stage handles XSLT transformation
- according to a stylesheet.
- The implementation of the transformation may not actually
- stream data, although if such an XSLT engine is in use
- then that can happen.
- </td>
+ <td><a href="XsltFilter.html">xslt</a></td>
+ <td><em>required</em><br> XSLT stylesheet URI</td>
+ <td>no</td>
+ <td align="left">This stage handles XSLT transformation
+ according to a stylesheet.
+ The implementation of the transformation may not actually
+ stream data, although if such an XSLT engine is in use
+ then that can happen.
+ </td>
</tr>
</table>
-
+
* <p> Note that {@link EventFilter#bind} can automatically eliminate
* some filters by setting SAX2 parser features appropriately. This means
* that you can routinely put filters like "nsfix", "validate", or "wf" at the
@@ -200,7 +200,7 @@ public class PipelineFactory
public static EventConsumer createPipeline (String description)
throws IOException
{
- return createPipeline (description, null);
+ return createPipeline (description, null);
}
/**
@@ -211,25 +211,25 @@ public class PipelineFactory
* segments with easily configured ones.
*/
public static EventConsumer createPipeline (
- String description,
- EventConsumer next
+ String description,
+ EventConsumer next
) throws IOException
{
- // tokens are (for now) what's separated by whitespace;
- // very easy to parse, but IDs never have spaces.
+ // tokens are (for now) what's separated by whitespace;
+ // very easy to parse, but IDs never have spaces.
- StringTokenizer tokenizer;
- String tokens [];
+ StringTokenizer tokenizer;
+ String tokens [];
- tokenizer = new StringTokenizer (description);
- tokens = new String [tokenizer.countTokens ()];
- for (int i = 0; i < tokens.length; i++)
- tokens [i] = tokenizer.nextToken ();
+ tokenizer = new StringTokenizer (description);
+ tokens = new String [tokenizer.countTokens ()];
+ for (int i = 0; i < tokens.length; i++)
+ tokens [i] = tokenizer.nextToken ();
- PipelineFactory factory = new PipelineFactory ();
- Pipeline pipeline = factory.parsePipeline (tokens, next);
+ PipelineFactory factory = new PipelineFactory ();
+ Pipeline pipeline = factory.parsePipeline (tokens, next);
- return pipeline.createPipeline ();
+ return pipeline.createPipeline ();
}
@@ -242,70 +242,70 @@ public class PipelineFactory
* predefined aliases) left and right parenthesis, and the vertical bar.
*/
public static EventConsumer createPipeline (
- String tokens [],
- EventConsumer next
+ String tokens [],
+ EventConsumer next
) throws IOException
{
- PipelineFactory factory = new PipelineFactory ();
- Pipeline pipeline = factory.parsePipeline (tokens, next);
+ PipelineFactory factory = new PipelineFactory ();
+ Pipeline pipeline = factory.parsePipeline (tokens, next);
- return pipeline.createPipeline ();
+ return pipeline.createPipeline ();
}
- private String tokens [];
- private int index;
+ private String tokens [];
+ private int index;
private Pipeline parsePipeline (String toks [], EventConsumer next)
{
- tokens = toks;
- index = 0;
-
- Pipeline retval = parsePipeline (next);
-
- if (index != toks.length)
- throw new ArrayIndexOutOfBoundsException (
- "extra token: " + tokens [index]);
- return retval;
+ tokens = toks;
+ index = 0;
+
+ Pipeline retval = parsePipeline (next);
+
+ if (index != toks.length)
+ throw new ArrayIndexOutOfBoundsException (
+ "extra token: " + tokens [index]);
+ return retval;
}
// pipeline ::= stage | stage '|' pipeline
private Pipeline parsePipeline (EventConsumer next)
{
- Pipeline retval = new Pipeline (parseStage ());
-
- // minimal pipelines: "stage" and "... | id"
- if (index > (tokens.length - 2)
- || !"|".equals (tokens [index])
- ) {
- retval.next = next;
- return retval;
- }
- index++;
- retval.rest = parsePipeline (next);
- return retval;
+ Pipeline retval = new Pipeline (parseStage ());
+
+ // minimal pipelines: "stage" and "... | id"
+ if (index > (tokens.length - 2)
+ || !"|".equals (tokens [index])
+ ) {
+ retval.next = next;
+ return retval;
+ }
+ index++;
+ retval.rest = parsePipeline (next);
+ return retval;
}
// stage ::= id | id '(' pipeline ')'
private Stage parseStage ()
{
- Stage retval = new Stage (tokens [index++]);
-
- // minimal stages: "id" and "id ( id )"
- if (index > (tokens.length - 2)
- || !"(".equals (tokens [index]) /*)*/
- )
- return retval;
-
- index++;
- retval.param = parsePipeline (null);
- if (index >= tokens.length)
- throw new ArrayIndexOutOfBoundsException (
- "missing right paren");
- if (/*(*/ !")".equals (tokens [index++]))
- throw new ArrayIndexOutOfBoundsException (
- "required right paren, not: " + tokens [index - 1]);
- return retval;
+ Stage retval = new Stage (tokens [index++]);
+
+ // minimal stages: "id" and "id ( id )"
+ if (index > (tokens.length - 2)
+ || !"(".equals (tokens [index]) /*)*/
+ )
+ return retval;
+
+ index++;
+ retval.param = parsePipeline (null);
+ if (index >= tokens.length)
+ throw new ArrayIndexOutOfBoundsException (
+ "missing right paren");
+ if (/*(*/ !")".equals (tokens [index++]))
+ throw new ArrayIndexOutOfBoundsException (
+ "required right paren, not: " + tokens [index - 1]);
+ return retval;
}
@@ -313,12 +313,12 @@ public class PipelineFactory
// these classes obey the conventions for constructors, so they're
// only built in to this table of shortnames
//
- // - filter (one or two types of arglist)
- // * last constructor is 'next' element
- // * optional (first) string parameter
+ // - filter (one or two types of arglist)
+ // * last constructor is 'next' element
+ // * optional (first) string parameter
//
- // - terminus (one or types of arglist)
- // * optional (only) string parameter
+ // - terminus (one or types of arglist)
+ // * optional (only) string parameter
//
// terminus stages are transformed into filters if needed, by
// creating a "tee". filter stages aren't turned to terminus
@@ -326,397 +326,397 @@ public class PipelineFactory
// terminus explicitly.
//
private static final String builtinStages [][] = {
- { "dom", "gnu.xml.dom.Consumer" },
- { "nsfix", "gnu.xml.pipeline.NSFilter" },
- { "null", "gnu.xml.pipeline.EventFilter" },
- { "server", "gnu.xml.pipeline.CallFilter" },
- { "tee", "gnu.xml.pipeline.TeeConsumer" },
- { "validate", "gnu.xml.pipeline.ValidationConsumer" },
- { "wf", "gnu.xml.pipeline.WellFormednessFilter" },
- { "xinclude", "gnu.xml.pipeline.XIncludeFilter" },
- { "xslt", "gnu.xml.pipeline.XsltFilter" },
+ { "dom", "gnu.xml.dom.Consumer" },
+ { "nsfix", "gnu.xml.pipeline.NSFilter" },
+ { "null", "gnu.xml.pipeline.EventFilter" },
+ { "server", "gnu.xml.pipeline.CallFilter" },
+ { "tee", "gnu.xml.pipeline.TeeConsumer" },
+ { "validate", "gnu.xml.pipeline.ValidationConsumer" },
+ { "wf", "gnu.xml.pipeline.WellFormednessFilter" },
+ { "xinclude", "gnu.xml.pipeline.XIncludeFilter" },
+ { "xslt", "gnu.xml.pipeline.XsltFilter" },
// XXX want: option for validate, to preload external part of a DTD
- // xhtml, write ... nyet generic-ready
+ // xhtml, write ... nyet generic-ready
};
private static class Stage
{
- String id;
- Pipeline param;
-
- Stage (String name)
- { id = name; }
-
- public String toString ()
- {
- if (param == null)
- return id;
- return id + " ( " + param + " )";
- }
-
- private void fail (String message)
- throws IOException
- {
- throw new IOException ("in '" + id
- + "' stage of pipeline, " + message);
- }
-
- EventConsumer createStage (EventConsumer next)
- throws IOException
- {
- String name = id;
-
- // most builtins are just class aliases
- for (int i = 0; i < builtinStages.length; i++) {
- if (id.equals (builtinStages [i][0])) {
- name = builtinStages [i][1];
- break;
- }
- }
-
- // Save output as XML or XHTML text
- if ("write".equals (name) || "xhtml".equals (name)) {
- String filename;
- boolean isXhtml = "xhtml".equals (name);
- OutputStream out = null;
- TextConsumer consumer;
-
- if (param == null)
- fail ("parameter is required");
-
- filename = param.toString ();
- if ("stdout".equals (filename))
- out = System.out;
- else if ("stderr".equals (filename))
- out = System.err;
- else {
- File f = new File (filename);
+ String id;
+ Pipeline param;
+
+ Stage (String name)
+ { id = name; }
+
+ public String toString ()
+ {
+ if (param == null)
+ return id;
+ return id + " ( " + param + " )";
+ }
+
+ private void fail (String message)
+ throws IOException
+ {
+ throw new IOException ("in '" + id
+ + "' stage of pipeline, " + message);
+ }
+
+ EventConsumer createStage (EventConsumer next)
+ throws IOException
+ {
+ String name = id;
+
+ // most builtins are just class aliases
+ for (int i = 0; i < builtinStages.length; i++) {
+ if (id.equals (builtinStages [i][0])) {
+ name = builtinStages [i][1];
+ break;
+ }
+ }
+
+ // Save output as XML or XHTML text
+ if ("write".equals (name) || "xhtml".equals (name)) {
+ String filename;
+ boolean isXhtml = "xhtml".equals (name);
+ OutputStream out = null;
+ TextConsumer consumer;
+
+ if (param == null)
+ fail ("parameter is required");
+
+ filename = param.toString ();
+ if ("stdout".equals (filename))
+ out = System.out;
+ else if ("stderr".equals (filename))
+ out = System.err;
+ else {
+ File f = new File (filename);
/*
- if (!f.isAbsolute ())
- fail ("require absolute file paths");
+ if (!f.isAbsolute ())
+ fail ("require absolute file paths");
*/
- if (f.exists ())
- fail ("file already exists: " + f.getName ());
+ if (f.exists ())
+ fail ("file already exists: " + f.getName ());
// XXX this races against the existence test
- out = new FileOutputStream (f);
- }
-
- if (!isXhtml)
- consumer = new TextConsumer (out);
- else
- consumer = new TextConsumer (
- new OutputStreamWriter (out, "8859_1"),
- true);
-
- consumer.setPrettyPrinting (true);
- if (next == null)
- return consumer;
- return new TeeConsumer (consumer, next);
-
- } else {
- //
- // Here go all the builtins that are just aliases for
- // classes, and all stage IDs that started out as such
- // class names. The following logic relies on several
- // documented conventions for constructor invocation.
- //
- String msg = null;
-
- try {
- Class klass = Class.forName (name);
- Class argTypes [] = null;
- Constructor constructor = null;
- boolean filter = false;
- Object params [] = null;
- Object obj = null;
-
- // do we need a filter stage?
- if (next != null) {
- // "next" consumer is always passed, with
- // or without the optional string param
- if (param == null) {
- argTypes = new Class [1];
- argTypes [0] = EventConsumer.class;
-
- params = new Object [1];
- params [0] = next;
-
- msg = "no-param filter";
- } else {
- argTypes = new Class [2];
- argTypes [0] = String.class;
- argTypes [1] = EventConsumer.class;
-
- params = new Object [2];
- params [0] = param.toString ();
- params [1] = next;
-
- msg = "one-param filter";
- }
-
-
- try {
- constructor = klass.getConstructor (argTypes);
- } catch (NoSuchMethodException e) {
- // try creating a filter from a
- // terminus and a tee
- filter = true;
- msg += " built from ";
- }
- }
-
- // build from a terminus stage, with or
- // without the optional string param
- if (constructor == null) {
- String tmp;
-
- if (param == null) {
- argTypes = new Class [0];
- params = new Object [0];
-
- tmp = "no-param terminus";
- } else {
- argTypes = new Class [1];
- argTypes [0] = String.class;
-
- params = new Object [1];
- params [0] = param.toString ();
-
- tmp = "one-param terminus";
- }
- if (msg == null)
- msg = tmp;
- else
- msg += tmp;
- constructor = klass.getConstructor (argTypes);
- // NOT creating terminus by dead-ending
- // filters ... users should think about
- // that one, something's likely wrong
- }
-
- obj = constructor.newInstance (params);
-
- // return EventConsumers directly, perhaps after
- // turning them into a filter
- if (obj instanceof EventConsumer) {
- if (filter)
- return new TeeConsumer ((EventConsumer) obj, next);
- return (EventConsumer) obj;
- }
-
- // if it's not a handler, it's an error
- // we can wrap handlers in a filter
- EventFilter retval = new EventFilter ();
- boolean updated = false;
-
- if (obj instanceof ContentHandler) {
- retval.setContentHandler ((ContentHandler) obj);
- updated = true;
- }
- if (obj instanceof DTDHandler) {
- retval.setDTDHandler ((DTDHandler) obj);
- updated = true;
- }
- if (obj instanceof LexicalHandler) {
- retval.setProperty (
- EventFilter.PROPERTY_URI + "lexical-handler",
- obj);
- updated = true;
- }
- if (obj instanceof DeclHandler) {
- retval.setProperty (
- EventFilter.PROPERTY_URI + "declaration-handler",
- obj);
- updated = true;
- }
-
- if (!updated)
- fail ("class is neither Consumer nor Handler");
-
- if (filter)
- return new TeeConsumer (retval, next);
- return retval;
-
- } catch (IOException e) {
- throw e;
-
- } catch (NoSuchMethodException e) {
- fail (name + " constructor missing -- " + msg);
-
- } catch (ClassNotFoundException e) {
- fail (name + " class not found");
-
- } catch (Exception e) {
- // e.printStackTrace ();
- fail ("stage not available: " + e.getMessage ());
- }
- }
- // NOTREACHED
- return null;
- }
+ out = new FileOutputStream (f);
+ }
+
+ if (!isXhtml)
+ consumer = new TextConsumer (out);
+ else
+ consumer = new TextConsumer (
+ new OutputStreamWriter (out, "8859_1"),
+ true);
+
+ consumer.setPrettyPrinting (true);
+ if (next == null)
+ return consumer;
+ return new TeeConsumer (consumer, next);
+
+ } else {
+ //
+ // Here go all the builtins that are just aliases for
+ // classes, and all stage IDs that started out as such
+ // class names. The following logic relies on several
+ // documented conventions for constructor invocation.
+ //
+ String msg = null;
+
+ try {
+ Class klass = Class.forName (name);
+ Class argTypes [] = null;
+ Constructor constructor = null;
+ boolean filter = false;
+ Object params [] = null;
+ Object obj = null;
+
+ // do we need a filter stage?
+ if (next != null) {
+ // "next" consumer is always passed, with
+ // or without the optional string param
+ if (param == null) {
+ argTypes = new Class [1];
+ argTypes [0] = EventConsumer.class;
+
+ params = new Object [1];
+ params [0] = next;
+
+ msg = "no-param filter";
+ } else {
+ argTypes = new Class [2];
+ argTypes [0] = String.class;
+ argTypes [1] = EventConsumer.class;
+
+ params = new Object [2];
+ params [0] = param.toString ();
+ params [1] = next;
+
+ msg = "one-param filter";
+ }
+
+
+ try {
+ constructor = klass.getConstructor (argTypes);
+ } catch (NoSuchMethodException e) {
+ // try creating a filter from a
+ // terminus and a tee
+ filter = true;
+ msg += " built from ";
+ }
+ }
+
+ // build from a terminus stage, with or
+ // without the optional string param
+ if (constructor == null) {
+ String tmp;
+
+ if (param == null) {
+ argTypes = new Class [0];
+ params = new Object [0];
+
+ tmp = "no-param terminus";
+ } else {
+ argTypes = new Class [1];
+ argTypes [0] = String.class;
+
+ params = new Object [1];
+ params [0] = param.toString ();
+
+ tmp = "one-param terminus";
+ }
+ if (msg == null)
+ msg = tmp;
+ else
+ msg += tmp;
+ constructor = klass.getConstructor (argTypes);
+ // NOT creating terminus by dead-ending
+ // filters ... users should think about
+ // that one, something's likely wrong
+ }
+
+ obj = constructor.newInstance (params);
+
+ // return EventConsumers directly, perhaps after
+ // turning them into a filter
+ if (obj instanceof EventConsumer) {
+ if (filter)
+ return new TeeConsumer ((EventConsumer) obj, next);
+ return (EventConsumer) obj;
+ }
+
+ // if it's not a handler, it's an error
+ // we can wrap handlers in a filter
+ EventFilter retval = new EventFilter ();
+ boolean updated = false;
+
+ if (obj instanceof ContentHandler) {
+ retval.setContentHandler ((ContentHandler) obj);
+ updated = true;
+ }
+ if (obj instanceof DTDHandler) {
+ retval.setDTDHandler ((DTDHandler) obj);
+ updated = true;
+ }
+ if (obj instanceof LexicalHandler) {
+ retval.setProperty (
+ EventFilter.PROPERTY_URI + "lexical-handler",
+ obj);
+ updated = true;
+ }
+ if (obj instanceof DeclHandler) {
+ retval.setProperty (
+ EventFilter.PROPERTY_URI + "declaration-handler",
+ obj);
+ updated = true;
+ }
+
+ if (!updated)
+ fail ("class is neither Consumer nor Handler");
+
+ if (filter)
+ return new TeeConsumer (retval, next);
+ return retval;
+
+ } catch (IOException e) {
+ throw e;
+
+ } catch (NoSuchMethodException e) {
+ fail (name + " constructor missing -- " + msg);
+
+ } catch (ClassNotFoundException e) {
+ fail (name + " class not found");
+
+ } catch (Exception e) {
+ // e.printStackTrace ();
+ fail ("stage not available: " + e.getMessage ());
+ }
+ }
+ // NOTREACHED
+ return null;
+ }
}
private static class Pipeline
{
- Stage stage;
-
- // rest may be null
- Pipeline rest;
- EventConsumer next;
-
- Pipeline (Stage s)
- { stage = s; }
-
- public String toString ()
- {
- if (rest == null && next == null)
- return stage.toString ();
- if (rest != null)
- return stage + " | " + rest;
- throw new IllegalArgumentException ("next");
- }
-
- EventConsumer createPipeline ()
- throws IOException
- {
- if (next == null) {
- if (rest == null)
- next = stage.createStage (null);
- else
- next = stage.createStage (rest.createPipeline ());
- }
- return next;
- }
+ Stage stage;
+
+ // rest may be null
+ Pipeline rest;
+ EventConsumer next;
+
+ Pipeline (Stage s)
+ { stage = s; }
+
+ public String toString ()
+ {
+ if (rest == null && next == null)
+ return stage.toString ();
+ if (rest != null)
+ return stage + " | " + rest;
+ throw new IllegalArgumentException ("next");
+ }
+
+ EventConsumer createPipeline ()
+ throws IOException
+ {
+ if (next == null) {
+ if (rest == null)
+ next = stage.createStage (null);
+ else
+ next = stage.createStage (rest.createPipeline ());
+ }
+ return next;
+ }
}
/*
public static void main (String argv [])
{
- try {
- // three basic terminus cases
- createPipeline ("null");
- createPipeline ("validate");
- createPipeline ("write ( stdout )");
-
- // four basic filters
- createPipeline ("nsfix | write ( stderr )");
- createPipeline ("wf | null");
- createPipeline ("null | null");
- createPipeline (
+ try {
+ // three basic terminus cases
+ createPipeline ("null");
+ createPipeline ("validate");
+ createPipeline ("write ( stdout )");
+
+ // four basic filters
+ createPipeline ("nsfix | write ( stderr )");
+ createPipeline ("wf | null");
+ createPipeline ("null | null");
+ createPipeline (
"call ( http://www.example.com/services/xml-1a ) | xhtml ( stdout )");
- // tee junctions
- createPipeline ("tee ( validate ) | write ( stdout )");
- createPipeline ("tee ( nsfix | write ( stdout ) ) | validate");
-
- // longer pipeline
- createPipeline ("nsfix | tee ( validate ) | write ( stdout )");
- createPipeline (
- "null | wf | nsfix | tee ( validate ) | write ( stdout )");
-
- // try some parsing error cases
- try {
- createPipeline ("null ("); // extra token '('
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
-
- try {
- createPipeline ("nsfix |"); // extra token '|'
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
-
- try {
- createPipeline ("xhtml ( foo"); // missing right paren
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
-
- try {
- createPipeline ("xhtml ( foo bar"); // required right paren
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
-
- try {
- createPipeline ("tee ( nsfix | validate");// missing right paren
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
-
- // try some construction error cases
-
- try {
- createPipeline ("call"); // missing param
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
- try {
- createPipeline ("call ( foobar )"); // broken param
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
- try {
- createPipeline ("nsfix ( foobar )"); // illegal param
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
- try {
- createPipeline ("null ( foobar )"); // illegal param
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
- try {
- createPipeline ("wf ( foobar )"); // illegal param
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
- try {
- createPipeline ("xhtml ( foobar.html )");
- new File ("foobar.html").delete ();
- // now supported
- } catch (Exception e) {
- System.err.println ("** err: " + e.getMessage ()); }
- try {
- createPipeline ("xhtml"); // missing param
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
- try {
- createPipeline ("write ( stdout ) | null"); // nonterminal
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
- try {
- createPipeline ("validate | null");
- // now supported
- } catch (Exception e) {
- System.err.println ("** err: " + e.getMessage ()); }
- try {
- createPipeline ("validate ( foo )"); // illegal param
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
- try {
- createPipeline ("tee"); // missing param
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
- try {
- // only builtins so far
- createPipeline ("com.example.xml.FilterClass");
- System.err.println ("** didn't report error");
- } catch (Exception e) {
- System.err.println ("== err: " + e.getMessage ()); }
-
- } catch (Exception e) {
- e.printStackTrace ();
- }
+ // tee junctions
+ createPipeline ("tee ( validate ) | write ( stdout )");
+ createPipeline ("tee ( nsfix | write ( stdout ) ) | validate");
+
+ // longer pipeline
+ createPipeline ("nsfix | tee ( validate ) | write ( stdout )");
+ createPipeline (
+ "null | wf | nsfix | tee ( validate ) | write ( stdout )");
+
+ // try some parsing error cases
+ try {
+ createPipeline ("null ("); // extra token '('
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+
+ try {
+ createPipeline ("nsfix |"); // extra token '|'
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+
+ try {
+ createPipeline ("xhtml ( foo"); // missing right paren
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+
+ try {
+ createPipeline ("xhtml ( foo bar"); // required right paren
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+
+ try {
+ createPipeline ("tee ( nsfix | validate");// missing right paren
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+
+ // try some construction error cases
+
+ try {
+ createPipeline ("call"); // missing param
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+ try {
+ createPipeline ("call ( foobar )"); // broken param
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+ try {
+ createPipeline ("nsfix ( foobar )"); // illegal param
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+ try {
+ createPipeline ("null ( foobar )"); // illegal param
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+ try {
+ createPipeline ("wf ( foobar )"); // illegal param
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+ try {
+ createPipeline ("xhtml ( foobar.html )");
+ new File ("foobar.html").delete ();
+ // now supported
+ } catch (Exception e) {
+ System.err.println ("** err: " + e.getMessage ()); }
+ try {
+ createPipeline ("xhtml"); // missing param
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+ try {
+ createPipeline ("write ( stdout ) | null"); // nonterminal
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+ try {
+ createPipeline ("validate | null");
+ // now supported
+ } catch (Exception e) {
+ System.err.println ("** err: " + e.getMessage ()); }
+ try {
+ createPipeline ("validate ( foo )"); // illegal param
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+ try {
+ createPipeline ("tee"); // missing param
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+ try {
+ // only builtins so far
+ createPipeline ("com.example.xml.FilterClass");
+ System.err.println ("** didn't report error");
+ } catch (Exception e) {
+ System.err.println ("== err: " + e.getMessage ()); }
+
+ } catch (Exception e) {
+ e.printStackTrace ();
+ }
}
/**/
diff --git a/libjava/classpath/gnu/xml/pipeline/TeeConsumer.java b/libjava/classpath/gnu/xml/pipeline/TeeConsumer.java
index 8186de4df66..3ac86057539 100644
--- a/libjava/classpath/gnu/xml/pipeline/TeeConsumer.java
+++ b/libjava/classpath/gnu/xml/pipeline/TeeConsumer.java
@@ -1,4 +1,4 @@
-/* TeeConsumer.java --
+/* TeeConsumer.java --
Copyright (C) 1999,2000,2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -68,16 +68,16 @@ import org.xml.sax.ext.LexicalHandler;
* @author David Brownell
*/
final public class TeeConsumer
- implements EventConsumer,
- ContentHandler, DTDHandler,
- LexicalHandler,DeclHandler
+ implements EventConsumer,
+ ContentHandler, DTDHandler,
+ LexicalHandler,DeclHandler
{
- private EventConsumer first, rest;
+ private EventConsumer first, rest;
// cached to minimize time overhead
- private ContentHandler docFirst, docRest;
- private DeclHandler declFirst, declRest;
- private LexicalHandler lexFirst, lexRest;
+ private ContentHandler docFirst, docRest;
+ private DeclHandler declFirst, declRest;
+ private LexicalHandler lexFirst, lexRest;
/**
@@ -91,39 +91,39 @@ final public class TeeConsumer
*/
public TeeConsumer (EventConsumer car, EventConsumer cdr)
{
- if (car == null || cdr == null)
- throw new NullPointerException ();
- first = car;
- rest = cdr;
-
- //
- // Cache the handlers.
- //
- docFirst = first.getContentHandler ();
- docRest = rest.getContentHandler ();
- // DTD handler isn't cached (rarely needed)
-
- try {
- declFirst = null;
- declFirst = (DeclHandler) first.getProperty (
- EventFilter.DECL_HANDLER);
- } catch (SAXException e) {}
- try {
- declRest = null;
- declRest = (DeclHandler) rest.getProperty (
- EventFilter.DECL_HANDLER);
- } catch (SAXException e) {}
-
- try {
- lexFirst = null;
- lexFirst = (LexicalHandler) first.getProperty (
- EventFilter.LEXICAL_HANDLER);
- } catch (SAXException e) {}
- try {
- lexRest = null;
- lexRest = (LexicalHandler) rest.getProperty (
- EventFilter.LEXICAL_HANDLER);
- } catch (SAXException e) {}
+ if (car == null || cdr == null)
+ throw new NullPointerException ();
+ first = car;
+ rest = cdr;
+
+ //
+ // Cache the handlers.
+ //
+ docFirst = first.getContentHandler ();
+ docRest = rest.getContentHandler ();
+ // DTD handler isn't cached (rarely needed)
+
+ try {
+ declFirst = null;
+ declFirst = (DeclHandler) first.getProperty (
+ EventFilter.DECL_HANDLER);
+ } catch (SAXException e) {}
+ try {
+ declRest = null;
+ declRest = (DeclHandler) rest.getProperty (
+ EventFilter.DECL_HANDLER);
+ } catch (SAXException e) {}
+
+ try {
+ lexFirst = null;
+ lexFirst = (LexicalHandler) first.getProperty (
+ EventFilter.LEXICAL_HANDLER);
+ } catch (SAXException e) {}
+ try {
+ lexRest = null;
+ lexRest = (LexicalHandler) rest.getProperty (
+ EventFilter.LEXICAL_HANDLER);
+ } catch (SAXException e) {}
}
/* FIXME
@@ -132,78 +132,78 @@ final public class TeeConsumer
* two-consumer constructor for this class.
*
* @param first Description of the first pipeline to get events,
- * which will be passed to {@link PipelineFactory#createPipeline}
+ * which will be passed to {@link PipelineFactory#createPipeline}
* @param rest The second pipeline to get the events
* /
- // constructor used by PipelineFactory
+ // constructor used by PipelineFactory
public TeeConsumer (String first, EventConsumer rest)
throws IOException
{
- this (PipelineFactory.createPipeline (first), rest);
+ this (PipelineFactory.createPipeline (first), rest);
}
*/
/** Returns the first pipeline to get event calls. */
public EventConsumer getFirst ()
- { return first; }
+ { return first; }
/** Returns the second pipeline to get event calls. */
public EventConsumer getRest ()
- { return rest; }
+ { return rest; }
/** Returns the content handler being used. */
final public ContentHandler getContentHandler ()
{
- if (docRest == null)
- return docFirst;
- if (docFirst == null)
- return docRest;
- return this;
+ if (docRest == null)
+ return docFirst;
+ if (docFirst == null)
+ return docRest;
+ return this;
}
/** Returns the dtd handler being used. */
final public DTDHandler getDTDHandler ()
{
- // not cached (hardly used)
- if (rest.getDTDHandler () == null)
- return first.getDTDHandler ();
- if (first.getDTDHandler () == null)
- return rest.getDTDHandler ();
- return this;
+ // not cached (hardly used)
+ if (rest.getDTDHandler () == null)
+ return first.getDTDHandler ();
+ if (first.getDTDHandler () == null)
+ return rest.getDTDHandler ();
+ return this;
}
/** Returns the declaration or lexical handler being used. */
final public Object getProperty (String id)
throws SAXNotRecognizedException
{
- //
- // in degenerate cases, we have no work to do.
- //
- Object firstProp = null, restProp = null;
-
- try { firstProp = first.getProperty (id); }
- catch (SAXNotRecognizedException e) { /* ignore */ }
- try { restProp = rest.getProperty (id); }
- catch (SAXNotRecognizedException e) { /* ignore */ }
-
- if (restProp == null)
- return firstProp;
- if (firstProp == null)
- return restProp;
-
- //
- // we've got work to do; handle two builtin cases.
- //
- if (EventFilter.DECL_HANDLER.equals (id))
- return this;
- if (EventFilter.LEXICAL_HANDLER.equals (id))
- return this;
-
- //
- // non-degenerate, handled by both consumers, but we don't know
- // how to handle this.
- //
- throw new SAXNotRecognizedException ("can't tee: " + id);
+ //
+ // in degenerate cases, we have no work to do.
+ //
+ Object firstProp = null, restProp = null;
+
+ try { firstProp = first.getProperty (id); }
+ catch (SAXNotRecognizedException e) { /* ignore */ }
+ try { restProp = rest.getProperty (id); }
+ catch (SAXNotRecognizedException e) { /* ignore */ }
+
+ if (restProp == null)
+ return firstProp;
+ if (firstProp == null)
+ return restProp;
+
+ //
+ // we've got work to do; handle two builtin cases.
+ //
+ if (EventFilter.DECL_HANDLER.equals (id))
+ return this;
+ if (EventFilter.LEXICAL_HANDLER.equals (id))
+ return this;
+
+ //
+ // non-degenerate, handled by both consumers, but we don't know
+ // how to handle this.
+ //
+ throw new SAXNotRecognizedException ("can't tee: " + id);
}
/**
@@ -212,8 +212,8 @@ final public class TeeConsumer
*/
public void setErrorHandler (ErrorHandler handler)
{
- first.setErrorHandler (handler);
- rest.setErrorHandler (handler);
+ first.setErrorHandler (handler);
+ rest.setErrorHandler (handler);
}
@@ -222,83 +222,83 @@ final public class TeeConsumer
//
public void setDocumentLocator (Locator locator)
{
- // this call is not made by all parsers
- docFirst.setDocumentLocator (locator);
- docRest.setDocumentLocator (locator);
+ // this call is not made by all parsers
+ docFirst.setDocumentLocator (locator);
+ docRest.setDocumentLocator (locator);
}
public void startDocument ()
throws SAXException
{
- docFirst.startDocument ();
- docRest.startDocument ();
+ docFirst.startDocument ();
+ docRest.startDocument ();
}
public void endDocument ()
throws SAXException
{
- try {
- docFirst.endDocument ();
- } finally {
- docRest.endDocument ();
- }
+ try {
+ docFirst.endDocument ();
+ } finally {
+ docRest.endDocument ();
+ }
}
public void startPrefixMapping (String prefix, String uri)
throws SAXException
{
- docFirst.startPrefixMapping (prefix, uri);
- docRest.startPrefixMapping (prefix, uri);
+ docFirst.startPrefixMapping (prefix, uri);
+ docRest.startPrefixMapping (prefix, uri);
}
public void endPrefixMapping (String prefix)
throws SAXException
{
- docFirst.endPrefixMapping (prefix);
- docRest.endPrefixMapping (prefix);
+ docFirst.endPrefixMapping (prefix);
+ docRest.endPrefixMapping (prefix);
}
public void skippedEntity (String name)
throws SAXException
{
- docFirst.skippedEntity (name);
- docRest.skippedEntity (name);
+ docFirst.skippedEntity (name);
+ docRest.skippedEntity (name);
}
public void startElement (String uri, String localName,
- String qName, Attributes atts)
+ String qName, Attributes atts)
throws SAXException
{
- docFirst.startElement (uri, localName, qName, atts);
- docRest.startElement (uri, localName, qName, atts);
+ docFirst.startElement (uri, localName, qName, atts);
+ docRest.startElement (uri, localName, qName, atts);
}
public void endElement (String uri, String localName, String qName)
throws SAXException
{
- docFirst.endElement (uri, localName, qName);
- docRest.endElement (uri, localName, qName);
+ docFirst.endElement (uri, localName, qName);
+ docRest.endElement (uri, localName, qName);
}
public void processingInstruction (String target, String data)
throws SAXException
{
- docFirst.processingInstruction (target, data);
- docRest.processingInstruction (target, data);
+ docFirst.processingInstruction (target, data);
+ docRest.processingInstruction (target, data);
}
public void characters (char ch [], int start, int length)
throws SAXException
{
- docFirst.characters (ch, start, length);
- docRest.characters (ch, start, length);
+ docFirst.characters (ch, start, length);
+ docRest.characters (ch, start, length);
}
public void ignorableWhitespace (char ch [], int start, int length)
throws SAXException
{
- docFirst.ignorableWhitespace (ch, start, length);
- docRest.ignorableWhitespace (ch, start, length);
+ docFirst.ignorableWhitespace (ch, start, length);
+ docRest.ignorableWhitespace (ch, start, length);
}
@@ -308,23 +308,23 @@ final public class TeeConsumer
public void notationDecl (String name, String publicId, String systemId)
throws SAXException
{
- DTDHandler l1 = first.getDTDHandler ();
- DTDHandler l2 = rest.getDTDHandler ();
+ DTDHandler l1 = first.getDTDHandler ();
+ DTDHandler l2 = rest.getDTDHandler ();
- l1.notationDecl (name, publicId, systemId);
- l2.notationDecl (name, publicId, systemId);
+ l1.notationDecl (name, publicId, systemId);
+ l2.notationDecl (name, publicId, systemId);
}
public void unparsedEntityDecl (String name,
- String publicId, String systemId,
- String notationName
+ String publicId, String systemId,
+ String notationName
) throws SAXException
{
- DTDHandler l1 = first.getDTDHandler ();
- DTDHandler l2 = rest.getDTDHandler ();
+ DTDHandler l1 = first.getDTDHandler ();
+ DTDHandler l2 = rest.getDTDHandler ();
- l1.unparsedEntityDecl (name, publicId, systemId, notationName);
- l2.unparsedEntityDecl (name, publicId, systemId, notationName);
+ l1.unparsedEntityDecl (name, publicId, systemId, notationName);
+ l2.unparsedEntityDecl (name, publicId, systemId, notationName);
}
@@ -332,34 +332,34 @@ final public class TeeConsumer
// DeclHandler
//
public void attributeDecl (String eName, String aName,
- String type,
- String mode, String value)
+ String type,
+ String mode, String value)
throws SAXException
{
- declFirst.attributeDecl (eName, aName, type, mode, value);
- declRest.attributeDecl (eName, aName, type, mode, value);
+ declFirst.attributeDecl (eName, aName, type, mode, value);
+ declRest.attributeDecl (eName, aName, type, mode, value);
}
public void elementDecl (String name, String model)
throws SAXException
{
- declFirst.elementDecl (name, model);
- declRest.elementDecl (name, model);
+ declFirst.elementDecl (name, model);
+ declRest.elementDecl (name, model);
}
public void externalEntityDecl (String name,
- String publicId, String systemId)
+ String publicId, String systemId)
throws SAXException
{
- declFirst.externalEntityDecl (name, publicId, systemId);
- declRest.externalEntityDecl (name, publicId, systemId);
+ declFirst.externalEntityDecl (name, publicId, systemId);
+ declRest.externalEntityDecl (name, publicId, systemId);
}
public void internalEntityDecl (String name, String value)
throws SAXException
{
- declFirst.internalEntityDecl (name, value);
- declRest.internalEntityDecl (name, value);
+ declFirst.internalEntityDecl (name, value);
+ declRest.internalEntityDecl (name, value);
}
@@ -369,49 +369,49 @@ final public class TeeConsumer
public void comment (char ch [], int start, int length)
throws SAXException
{
- lexFirst.comment (ch, start, length);
- lexRest.comment (ch, start, length);
+ lexFirst.comment (ch, start, length);
+ lexRest.comment (ch, start, length);
}
-
+
public void startCDATA ()
throws SAXException
{
- lexFirst.startCDATA ();
- lexRest.startCDATA ();
+ lexFirst.startCDATA ();
+ lexRest.startCDATA ();
}
-
+
public void endCDATA ()
throws SAXException
{
- lexFirst.endCDATA ();
- lexRest.endCDATA ();
+ lexFirst.endCDATA ();
+ lexRest.endCDATA ();
}
-
+
public void startEntity (String name)
throws SAXException
{
- lexFirst.startEntity (name);
- lexRest.startEntity (name);
+ lexFirst.startEntity (name);
+ lexRest.startEntity (name);
}
-
+
public void endEntity (String name)
throws SAXException
{
- lexFirst.endEntity (name);
- lexRest.endEntity (name);
+ lexFirst.endEntity (name);
+ lexRest.endEntity (name);
}
-
+
public void startDTD (String name, String publicId, String systemId)
throws SAXException
{
- lexFirst.startDTD (name, publicId, systemId);
- lexRest.startDTD (name, publicId, systemId);
+ lexFirst.startDTD (name, publicId, systemId);
+ lexRest.startDTD (name, publicId, systemId);
}
-
+
public void endDTD ()
throws SAXException
{
- lexFirst.endDTD ();
- lexRest.endDTD ();
+ lexFirst.endDTD ();
+ lexRest.endDTD ();
}
}
diff --git a/libjava/classpath/gnu/xml/pipeline/TextConsumer.java b/libjava/classpath/gnu/xml/pipeline/TextConsumer.java
index 67bd23b00d6..13dcfa7f6ad 100644
--- a/libjava/classpath/gnu/xml/pipeline/TextConsumer.java
+++ b/libjava/classpath/gnu/xml/pipeline/TextConsumer.java
@@ -1,4 +1,4 @@
-/* TextConsumer.java --
+/* TextConsumer.java --
Copyright (C) 1999,2000,2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -72,8 +72,8 @@ public class TextConsumer extends XMLWriter implements EventConsumer
public TextConsumer (Writer w, boolean isXhtml)
throws IOException
{
- super (w, isXhtml ? "US-ASCII" : null);
- setXhtml (isXhtml);
+ super (w, isXhtml ? "US-ASCII" : null);
+ setXhtml (isXhtml);
}
/**
@@ -83,9 +83,9 @@ public class TextConsumer extends XMLWriter implements EventConsumer
public TextConsumer (Writer w)
throws IOException
{
- this (w, false);
+ this (w, false);
}
-
+
/**
* Constructs a consumer that writes its input as XML text,
* encoded in UTF-8. XHTML rules are not followed.
@@ -93,25 +93,25 @@ public class TextConsumer extends XMLWriter implements EventConsumer
public TextConsumer (OutputStream out)
throws IOException
{
- this (new OutputStreamWriter (out, "UTF8"), false);
+ this (new OutputStreamWriter (out, "UTF8"), false);
}
/** <b>EventConsumer</b> Returns the document handler being used. */
public ContentHandler getContentHandler ()
- { return this; }
+ { return this; }
/** <b>EventConsumer</b> Returns the dtd handler being used. */
public DTDHandler getDTDHandler ()
- { return this; }
+ { return this; }
/** <b>XMLReader</b>Retrieves a property (lexical and decl handlers) */
public Object getProperty (String propertyId)
throws SAXNotRecognizedException
{
- if (EventFilter.LEXICAL_HANDLER.equals (propertyId))
- return this;
- if (EventFilter.DECL_HANDLER.equals (propertyId))
- return this;
- throw new SAXNotRecognizedException (propertyId);
+ if (EventFilter.LEXICAL_HANDLER.equals (propertyId))
+ return this;
+ if (EventFilter.DECL_HANDLER.equals (propertyId))
+ return this;
+ throw new SAXNotRecognizedException (propertyId);
}
}
diff --git a/libjava/classpath/gnu/xml/pipeline/ValidationConsumer.java b/libjava/classpath/gnu/xml/pipeline/ValidationConsumer.java
index 8391767490c..0346984d3b5 100644
--- a/libjava/classpath/gnu/xml/pipeline/ValidationConsumer.java
+++ b/libjava/classpath/gnu/xml/pipeline/ValidationConsumer.java
@@ -1,4 +1,4 @@
-/* ValidationConsumer.java --
+/* ValidationConsumer.java --
Copyright (C) 1999,2000,2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -62,24 +62,24 @@ import org.xml.sax.helpers.XMLReaderFactory;
* both a filter and a terminus on an event pipeline. It relies on the
* producer of SAX events to: </p> <ol>
*
- * <li> Conform to the specification of a non-validating XML parser that
- * reads all external entities, reported using SAX2 events. </li>
+ * <li> Conform to the specification of a non-validating XML parser that
+ * reads all external entities, reported using SAX2 events. </li>
*
- * <li> Report ignorable whitespace as such (through the ContentHandler
- * interface). This is, strictly speaking, optional for nonvalidating
- * XML processors. </li>
+ * <li> Report ignorable whitespace as such (through the ContentHandler
+ * interface). This is, strictly speaking, optional for nonvalidating
+ * XML processors. </li>
*
- * <li> Make SAX2 DeclHandler callbacks, with default
- * attribute values already normalized (and without "&lt;").</li>
+ * <li> Make SAX2 DeclHandler callbacks, with default
+ * attribute values already normalized (and without "&lt;").</li>
*
- * <li> Make SAX2 LexicalHandler startDTD() and endDTD ()
- * callbacks. </li>
+ * <li> Make SAX2 LexicalHandler startDTD() and endDTD ()
+ * callbacks. </li>
*
- * <li> Act as if the <em>(URI)/namespace-prefixes</em> property were
- * set to true, by providing XML 1.0 names and all <code>xmlns*</code>
- * attributes (rather than omitting either or both). </li>
+ * <li> Act as if the <em>(URI)/namespace-prefixes</em> property were
+ * set to true, by providing XML 1.0 names and all <code>xmlns*</code>
+ * attributes (rather than omitting either or both). </li>
*
- * </ol>
+ * </ol>
*
* <p> At this writing, the major SAX2 parsers (such as &AElig;lfred2,
* Crimson, and Xerces) meet these requirements, and this validation
@@ -128,51 +128,51 @@ import org.xml.sax.helpers.XMLReaderFactory;
* of them) or discarded (popular for the standalone declaration); in short,
* that these are bugs in the XML specification (not all via SGML): </p><ul>
*
- * <li> The <em>Proper Declaration/PE Nesting</em> and
- * <em>Proper Group/PE Nesting</em> VCs can't be tested because they
- * require access to particularly low level lexical level information.
- * In essence, the reason XML isn't a simple thing to parse is that
- * it's not a context free grammar, and these constraints elevate that
- * SGML-derived context sensitivity to the level of a semantic rule.
+ * <li> The <em>Proper Declaration/PE Nesting</em> and
+ * <em>Proper Group/PE Nesting</em> VCs can't be tested because they
+ * require access to particularly low level lexical level information.
+ * In essence, the reason XML isn't a simple thing to parse is that
+ * it's not a context free grammar, and these constraints elevate that
+ * SGML-derived context sensitivity to the level of a semantic rule.
*
- * <li> The <em>Standalone Document Declaration</em> VC can't be
- * tested. This is for two reasons. First, this flag isn't made
- * available through SAX2. Second, it also requires breaking that
- * lexical layering boundary. (If you ever wondered why classes
- * in compiler construction or language design barely mention the
- * existence of context-sensitive grammars, it's because of messy
- * issues like these.)
+ * <li> The <em>Standalone Document Declaration</em> VC can't be
+ * tested. This is for two reasons. First, this flag isn't made
+ * available through SAX2. Second, it also requires breaking that
+ * lexical layering boundary. (If you ever wondered why classes
+ * in compiler construction or language design barely mention the
+ * existence of context-sensitive grammars, it's because of messy
+ * issues like these.)
*
- * <li> The <em>Entity Declared</em> VC can't be tested, because it
- * also requires breaking that lexical layering boundary! There's also
- * another issue: the VC wording (and seemingly intent) is ambiguous.
- * (This is still true in the "Second edition" XML spec.)
- * Since there is a WFC of the same name, everyone's life would be
- * easier if references to undeclared parsed entities were always well
- * formedness errors, regardless of whether they're parameter entities
- * or not. (Note that nonvalidating parsers are not required
- * to report all such well formedness errors if they don't read external
- * parameter entities, although currently most XML parsers read them
- * in an attempt to avoid problems from inconsistent parser behavior.)
+ * <li> The <em>Entity Declared</em> VC can't be tested, because it
+ * also requires breaking that lexical layering boundary! There's also
+ * another issue: the VC wording (and seemingly intent) is ambiguous.
+ * (This is still true in the "Second edition" XML spec.)
+ * Since there is a WFC of the same name, everyone's life would be
+ * easier if references to undeclared parsed entities were always well
+ * formedness errors, regardless of whether they're parameter entities
+ * or not. (Note that nonvalidating parsers are not required
+ * to report all such well formedness errors if they don't read external
+ * parameter entities, although currently most XML parsers read them
+ * in an attempt to avoid problems from inconsistent parser behavior.)
*
- * </ul>
+ * </ul>
*
* <p> The second category of limitations on this validation represent
* constraints associated with information that is not guaranteed to be
* available (or in one case, <em>is guaranteed not to be available</em>,
* through the SAX2 API: </p><ul>
*
- * <li> The <em>Unique Element Type Declaration</em> VC may not be
- * reportable, if the underlying parser happens not to expose
- * multiple declarations. (&AElig;lfred2 reports these validity
- * errors directly.)</li>
+ * <li> The <em>Unique Element Type Declaration</em> VC may not be
+ * reportable, if the underlying parser happens not to expose
+ * multiple declarations. (&AElig;lfred2 reports these validity
+ * errors directly.)</li>
*
- * <li> Similarly, the <em>Unique Notation Name</em> VC, added in the
- * 14-January-2000 XML spec errata to restrict typing models used by
- * elements, may not be reportable. (&AElig;lfred reports these
- * validity errors directly.) </li>
+ * <li> Similarly, the <em>Unique Notation Name</em> VC, added in the
+ * 14-January-2000 XML spec errata to restrict typing models used by
+ * elements, may not be reportable. (&AElig;lfred reports these
+ * validity errors directly.) </li>
*
- * </ul>
+ * </ul>
*
* <p> A third category relates to ease of implementation. (Think of this
* as "bugs".) The most notable issue here is character handling. Rather
@@ -199,15 +199,15 @@ public final class ValidationConsumer extends EventFilter
{
// report error if we happen to notice a non-deterministic choice?
// we won't report buggy content models; just buggy instances
- private static final boolean warnNonDeterministic = false;
+ private static final boolean warnNonDeterministic = false;
// for tracking active content models
- private String rootName;
- private Stack contentStack = new Stack ();
+ private String rootName;
+ private Stack contentStack = new Stack ();
// flags for "saved DTD" processing
- private boolean disableDeclarations;
- private boolean disableReset;
+ private boolean disableDeclarations;
+ private boolean disableReset;
//
// most VCs get tested when we see element start tags. the per-element
@@ -217,25 +217,25 @@ public final class ValidationConsumer extends EventFilter
//
// key = element name; value = ElementInfo
- private Hashtable elements = new Hashtable ();
+ private Hashtable elements = new Hashtable ();
// some VCs relate to ID/IDREF/IDREFS attributes
// key = id; value = boolean true (defd) or false (refd)
- private Hashtable ids = new Hashtable ();
+ private Hashtable ids = new Hashtable ();
// we just record declared notation and unparsed entity names.
// the implementation here is simple/slow; these features
// are seldom used, one hopes they'll wither away soon
- private Vector notations = new Vector (5, 5);
- private Vector nDeferred = new Vector (5, 5);
- private Vector unparsed = new Vector (5, 5);
- private Vector uDeferred = new Vector (5, 5);
-
- // note: DocBk 3.1.7 XML defines over 2 dozen notations,
- // used when defining unparsed entities for graphics
- // (and maybe in other places)
+ private Vector notations = new Vector (5, 5);
+ private Vector nDeferred = new Vector (5, 5);
+ private Vector unparsed = new Vector (5, 5);
+ private Vector uDeferred = new Vector (5, 5);
+
+ // note: DocBk 3.1.7 XML defines over 2 dozen notations,
+ // used when defining unparsed entities for graphics
+ // (and maybe in other places)
+
-
/**
* Creates a pipeline terminus which consumes all events passed to
@@ -244,11 +244,11 @@ public final class ValidationConsumer extends EventFilter
*
* @see #setErrorHandler
*/
- // constructor used by PipelineFactory
- // ... and want one taking system ID of an external subset
+ // constructor used by PipelineFactory
+ // ... and want one taking system ID of an external subset
public ValidationConsumer ()
{
- this (null);
+ this (null);
}
/**
@@ -257,25 +257,25 @@ public final class ValidationConsumer extends EventFilter
*
* @see #setErrorHandler
*/
- // constructor used by PipelineFactory
- // ... and want one taking system ID of an external subset
- // (which won't send declaration events)
+ // constructor used by PipelineFactory
+ // ... and want one taking system ID of an external subset
+ // (which won't send declaration events)
public ValidationConsumer (EventConsumer next)
{
- super (next);
-
- setContentHandler (this);
- setDTDHandler (this);
- try { setProperty (DECL_HANDLER, this); }
- catch (Exception e) { /* "can't happen" */ }
- try { setProperty (LEXICAL_HANDLER, this); }
- catch (Exception e) { /* "can't happen" */ }
+ super (next);
+
+ setContentHandler (this);
+ setDTDHandler (this);
+ try { setProperty (DECL_HANDLER, this); }
+ catch (Exception e) { /* "can't happen" */ }
+ try { setProperty (LEXICAL_HANDLER, this); }
+ catch (Exception e) { /* "can't happen" */ }
}
-
- private static final String fakeRootName
- = ":Nobody:in:their_Right.Mind_would:use:this-name:1x:";
-
+
+ private static final String fakeRootName
+ = ":Nobody:in:their_Right.Mind_would:use:this-name:1x:";
+
/**
* Creates a validation consumer which is preloaded with the DTD provided.
* It does this by constructing a document with that DTD, then parsing
@@ -287,182 +287,182 @@ public final class ValidationConsumer extends EventFilter
* in a document being parsed.
*
* @param rootName The name of the required root element; if this is
- * null, any root element name will be accepted.
+ * null, any root element name will be accepted.
* @param publicId If non-null and there is a non-null systemId, this
- * identifier provides an alternate access identifier for the DTD's
- * external subset.
+ * identifier provides an alternate access identifier for the DTD's
+ * external subset.
* @param systemId If non-null, this is a URI (normally URL) that
- * may be used to access the DTD's external subset.
+ * may be used to access the DTD's external subset.
* @param internalSubset If non-null, holds literal markup declarations
- * comprising the DTD's internal subset.
+ * comprising the DTD's internal subset.
* @param resolver If non-null, this will be provided to the parser for
- * use when resolving parameter entities (including any external subset).
+ * use when resolving parameter entities (including any external subset).
* @param resolver If non-null, this will be provided to the parser for
- * use when resolving parameter entities (including any external subset).
+ * use when resolving parameter entities (including any external subset).
* @param minimalElement If non-null, a minimal valid document.
*
* @exception SAXNotSupportedException If the default SAX parser does
- * not support the standard lexical or declaration handlers.
+ * not support the standard lexical or declaration handlers.
* @exception SAXParseException If the specified DTD has either
- * well-formedness or validity errors
+ * well-formedness or validity errors
* @exception IOException If the specified DTD can't be read for
- * some reason
+ * some reason
*/
public ValidationConsumer (
- String rootName,
- String publicId,
- String systemId,
- String internalSubset,
- EntityResolver resolver,
- String minimalDocument
+ String rootName,
+ String publicId,
+ String systemId,
+ String internalSubset,
+ EntityResolver resolver,
+ String minimalDocument
) throws SAXException, IOException
{
- this (null);
-
- disableReset = true;
- if (rootName == null)
- rootName = fakeRootName;
-
- //
- // Synthesize document with that DTD; is it possible to do
- // better for the declaration of the root element?
- //
- // NOTE: can't use SAX2 to write internal subsets.
- //
- StringWriter writer = new StringWriter ();
-
- writer.write ("<!DOCTYPE ");
- writer.write (rootName);
- if (systemId != null) {
- writer.write ("\n ");
- if (publicId != null) {
- writer.write ("PUBLIC '");
- writer.write (publicId);
- writer.write ("'\n\t'");
- } else
- writer.write ("SYSTEM '");
- writer.write (systemId);
- writer.write ("'");
- }
- writer.write (" [ ");
- if (rootName == fakeRootName) {
- writer.write ("\n<!ELEMENT ");
- writer.write (rootName);
- writer.write (" EMPTY>");
- }
- if (internalSubset != null)
- writer.write (internalSubset);
- writer.write ("\n ]>");
-
- if (minimalDocument != null) {
- writer.write ("\n");
- writer.write (minimalDocument);
- writer.write ("\n");
- } else {
- writer.write (" <");
- writer.write (rootName);
- writer.write ("/>\n");
- }
- minimalDocument = writer.toString ();
-
- //
- // OK, load it
- //
- XMLReader producer;
-
- producer = XMLReaderFactory.createXMLReader ();
- bind (producer, this);
-
- if (resolver != null)
- producer.setEntityResolver (resolver);
-
- InputSource in;
-
- in = new InputSource (new StringReader (minimalDocument));
- producer.parse (in);
-
- disableDeclarations = true;
- if (rootName == fakeRootName)
- this.rootName = null;
+ this (null);
+
+ disableReset = true;
+ if (rootName == null)
+ rootName = fakeRootName;
+
+ //
+ // Synthesize document with that DTD; is it possible to do
+ // better for the declaration of the root element?
+ //
+ // NOTE: can't use SAX2 to write internal subsets.
+ //
+ StringWriter writer = new StringWriter ();
+
+ writer.write ("<!DOCTYPE ");
+ writer.write (rootName);
+ if (systemId != null) {
+ writer.write ("\n ");
+ if (publicId != null) {
+ writer.write ("PUBLIC '");
+ writer.write (publicId);
+ writer.write ("'\n\t'");
+ } else
+ writer.write ("SYSTEM '");
+ writer.write (systemId);
+ writer.write ("'");
+ }
+ writer.write (" [ ");
+ if (rootName == fakeRootName) {
+ writer.write ("\n<!ELEMENT ");
+ writer.write (rootName);
+ writer.write (" EMPTY>");
+ }
+ if (internalSubset != null)
+ writer.write (internalSubset);
+ writer.write ("\n ]>");
+
+ if (minimalDocument != null) {
+ writer.write ("\n");
+ writer.write (minimalDocument);
+ writer.write ("\n");
+ } else {
+ writer.write (" <");
+ writer.write (rootName);
+ writer.write ("/>\n");
+ }
+ minimalDocument = writer.toString ();
+
+ //
+ // OK, load it
+ //
+ XMLReader producer;
+
+ producer = XMLReaderFactory.createXMLReader ();
+ bind (producer, this);
+
+ if (resolver != null)
+ producer.setEntityResolver (resolver);
+
+ InputSource in;
+
+ in = new InputSource (new StringReader (minimalDocument));
+ producer.parse (in);
+
+ disableDeclarations = true;
+ if (rootName == fakeRootName)
+ this.rootName = null;
}
private void resetState ()
{
- if (!disableReset) {
- rootName = null;
- contentStack.removeAllElements ();
- elements.clear ();
- ids.clear ();
-
- notations.removeAllElements ();
- nDeferred.removeAllElements ();
- unparsed.removeAllElements ();
- uDeferred.removeAllElements ();
- }
+ if (!disableReset) {
+ rootName = null;
+ contentStack.removeAllElements ();
+ elements.clear ();
+ ids.clear ();
+
+ notations.removeAllElements ();
+ nDeferred.removeAllElements ();
+ unparsed.removeAllElements ();
+ uDeferred.removeAllElements ();
+ }
}
private void warning (String description)
throws SAXException
{
- ErrorHandler errHandler = getErrorHandler ();
- Locator locator = getDocumentLocator ();
- SAXParseException err;
-
- if (errHandler == null)
- return;
-
- if (locator == null)
- err = new SAXParseException (description, null, null, -1, -1);
- else
- err = new SAXParseException (description, locator);
- errHandler.warning (err);
+ ErrorHandler errHandler = getErrorHandler ();
+ Locator locator = getDocumentLocator ();
+ SAXParseException err;
+
+ if (errHandler == null)
+ return;
+
+ if (locator == null)
+ err = new SAXParseException (description, null, null, -1, -1);
+ else
+ err = new SAXParseException (description, locator);
+ errHandler.warning (err);
}
// package private (for ChildrenRecognizer)
private void error (String description)
throws SAXException
{
- ErrorHandler errHandler = getErrorHandler ();
- Locator locator = getDocumentLocator ();
- SAXParseException err;
-
- if (locator == null)
- err = new SAXParseException (description, null, null, -1, -1);
- else
- err = new SAXParseException (description, locator);
- if (errHandler != null)
- errHandler.error (err);
- else // else we always treat it as fatal!
- throw err;
+ ErrorHandler errHandler = getErrorHandler ();
+ Locator locator = getDocumentLocator ();
+ SAXParseException err;
+
+ if (locator == null)
+ err = new SAXParseException (description, null, null, -1, -1);
+ else
+ err = new SAXParseException (description, locator);
+ if (errHandler != null)
+ errHandler.error (err);
+ else // else we always treat it as fatal!
+ throw err;
}
private void fatalError (String description)
throws SAXException
{
- ErrorHandler errHandler = getErrorHandler ();
- Locator locator = getDocumentLocator ();
- SAXParseException err;
-
- if (locator != null)
- err = new SAXParseException (description, locator);
- else
- err = new SAXParseException (description, null, null, -1, -1);
- if (errHandler != null)
- errHandler.fatalError (err);
- // we always treat this as fatal, regardless of the handler
- throw err;
+ ErrorHandler errHandler = getErrorHandler ();
+ Locator locator = getDocumentLocator ();
+ SAXParseException err;
+
+ if (locator != null)
+ err = new SAXParseException (description, locator);
+ else
+ err = new SAXParseException (description, null, null, -1, -1);
+ if (errHandler != null)
+ errHandler.fatalError (err);
+ // we always treat this as fatal, regardless of the handler
+ throw err;
}
private static boolean isExtender (char c)
{
- // [88] Extender ::= ...
- return c == 0x00b7 || c == 0x02d0 || c == 0x02d1 || c == 0x0387
- || c == 0x0640 || c == 0x0e46 || c == 0x0ec6 || c == 0x3005
- || (c >= 0x3031 && c <= 0x3035)
- || (c >= 0x309d && c <= 0x309e)
- || (c >= 0x30fc && c <= 0x30fe);
+ // [88] Extender ::= ...
+ return c == 0x00b7 || c == 0x02d0 || c == 0x02d1 || c == 0x0387
+ || c == 0x0640 || c == 0x0e46 || c == 0x0ec6 || c == 0x3005
+ || (c >= 0x3031 && c <= 0x3035)
+ || (c >= 0x309d && c <= 0x309e)
+ || (c >= 0x30fc && c <= 0x30fe);
}
@@ -470,86 +470,86 @@ public final class ValidationConsumer extends EventFilter
private boolean isName (String name, String context, String id)
throws SAXException
{
- char buf [] = name.toCharArray ();
- boolean pass = true;
-
- if (!Character.isUnicodeIdentifierStart (buf [0])
- && ":_".indexOf (buf [0]) == -1)
- pass = false;
- else {
- int max = buf.length;
- for (int i = 1; pass && i < max; i++) {
- char c = buf [i];
- if (!Character.isUnicodeIdentifierPart (c)
- && ":-_.".indexOf (c) == -1
- && !isExtender (c))
- pass = false;
- }
- }
-
- if (!pass)
- error ("In " + context + " for " + id
- + ", '" + name + "' is not a name");
- return pass; // true == OK
+ char buf [] = name.toCharArray ();
+ boolean pass = true;
+
+ if (!Character.isUnicodeIdentifierStart (buf [0])
+ && ":_".indexOf (buf [0]) == -1)
+ pass = false;
+ else {
+ int max = buf.length;
+ for (int i = 1; pass && i < max; i++) {
+ char c = buf [i];
+ if (!Character.isUnicodeIdentifierPart (c)
+ && ":-_.".indexOf (c) == -1
+ && !isExtender (c))
+ pass = false;
+ }
+ }
+
+ if (!pass)
+ error ("In " + context + " for " + id
+ + ", '" + name + "' is not a name");
+ return pass; // true == OK
}
// use augmented Unicode rules, not full XML rules
private boolean isNmtoken (String nmtoken, String context, String id)
throws SAXException
{
- char buf [] = nmtoken.toCharArray ();
- boolean pass = true;
- int max = buf.length;
-
- // XXX make this share code with isName
-
- for (int i = 0; pass && i < max; i++) {
- char c = buf [i];
- if (!Character.isUnicodeIdentifierPart (c)
- && ":-_.".indexOf (c) == -1
- && !isExtender (c))
- pass = false;
- }
-
- if (!pass)
- error ("In " + context + " for " + id
- + ", '" + nmtoken + "' is not a name token");
- return pass; // true == OK
+ char buf [] = nmtoken.toCharArray ();
+ boolean pass = true;
+ int max = buf.length;
+
+ // XXX make this share code with isName
+
+ for (int i = 0; pass && i < max; i++) {
+ char c = buf [i];
+ if (!Character.isUnicodeIdentifierPart (c)
+ && ":-_.".indexOf (c) == -1
+ && !isExtender (c))
+ pass = false;
+ }
+
+ if (!pass)
+ error ("In " + context + " for " + id
+ + ", '" + nmtoken + "' is not a name token");
+ return pass; // true == OK
}
private void checkEnumeration (String value, String type, String name)
throws SAXException
{
- if (!hasMatch (value, type))
- // VC: Enumeration
- error ("Value '" + value
- + "' for attribute '" + name
- + "' is not permitted: " + type);
+ if (!hasMatch (value, type))
+ // VC: Enumeration
+ error ("Value '" + value
+ + "' for attribute '" + name
+ + "' is not permitted: " + type);
}
// used to test enumerated attributes and mixed content models
// package private
static boolean hasMatch (String value, String orList)
{
- int len = value.length ();
- int max = orList.length () - len;
-
- for (int start = 0;
- (start = orList.indexOf (value, start)) != -1;
- start++) {
- char c;
-
- if (start > max)
- break;
- c = orList.charAt (start - 1);
- if (c != '|' && c != '('/*)*/)
- continue;
- c = orList.charAt (start + len);
- if (c != '|' && /*(*/ c != ')')
- continue;
- return true;
- }
- return false;
+ int len = value.length ();
+ int max = orList.length () - len;
+
+ for (int start = 0;
+ (start = orList.indexOf (value, start)) != -1;
+ start++) {
+ char c;
+
+ if (start > max)
+ break;
+ c = orList.charAt (start - 1);
+ if (c != '|' && c != '('/*)*/)
+ continue;
+ c = orList.charAt (start + len);
+ if (c != '|' && /*(*/ c != ')')
+ continue;
+ return true;
+ }
+ return false;
}
/**
@@ -561,11 +561,11 @@ public final class ValidationConsumer extends EventFilter
public void startDTD (String name, String publicId, String systemId)
throws SAXException
{
- if (disableDeclarations)
- return;
+ if (disableDeclarations)
+ return;
- rootName = name;
- super.startDTD (name, publicId, systemId);
+ rootName = name;
+ super.startDTD (name, publicId, systemId);
}
/**
@@ -577,37 +577,37 @@ public final class ValidationConsumer extends EventFilter
public void endDTD ()
throws SAXException
{
- if (disableDeclarations)
- return;
-
- // this is a convenient hook for end-of-dtd checks, but we
- // could also trigger it in the first startElement call.
- // locator info is more appropriate here though.
-
- // VC: Notation Declared (NDATA can refer to them before decls,
- // as can NOTATION attribute enumerations and defaults)
- int length = nDeferred.size ();
- for (int i = 0; i < length; i++) {
- String notation = (String) nDeferred.elementAt (i);
- if (!notations.contains (notation)) {
- error ("A declaration referred to notation '" + notation
- + "' which was never declared");
- }
- }
- nDeferred.removeAllElements ();
-
- // VC: Entity Name (attribute values can refer to them
- // before they're declared); VC Attribute Default Legal
- length = uDeferred.size ();
- for (int i = 0; i < length; i++) {
- String entity = (String) uDeferred.elementAt (i);
- if (!unparsed.contains (entity)) {
- error ("An attribute default referred to entity '" + entity
- + "' which was never declared");
- }
- }
- uDeferred.removeAllElements ();
- super.endDTD ();
+ if (disableDeclarations)
+ return;
+
+ // this is a convenient hook for end-of-dtd checks, but we
+ // could also trigger it in the first startElement call.
+ // locator info is more appropriate here though.
+
+ // VC: Notation Declared (NDATA can refer to them before decls,
+ // as can NOTATION attribute enumerations and defaults)
+ int length = nDeferred.size ();
+ for (int i = 0; i < length; i++) {
+ String notation = (String) nDeferred.elementAt (i);
+ if (!notations.contains (notation)) {
+ error ("A declaration referred to notation '" + notation
+ + "' which was never declared");
+ }
+ }
+ nDeferred.removeAllElements ();
+
+ // VC: Entity Name (attribute values can refer to them
+ // before they're declared); VC Attribute Default Legal
+ length = uDeferred.size ();
+ for (int i = 0; i < length; i++) {
+ String entity = (String) uDeferred.elementAt (i);
+ if (!unparsed.contains (entity)) {
+ error ("An attribute default referred to entity '" + entity
+ + "' which was never declared");
+ }
+ }
+ uDeferred.removeAllElements ();
+ super.endDTD ();
}
@@ -615,10 +615,10 @@ public final class ValidationConsumer extends EventFilter
// all attributes except enumerations ...
// "(this|or|that|...)" and "NOTATION (this|or|that|...)"
static final String types [] = {
- "CDATA",
- "ID", "IDREF", "IDREFS",
- "NMTOKEN", "NMTOKENS",
- "ENTITY", "ENTITIES"
+ "CDATA",
+ "ID", "IDREF", "IDREFS",
+ "NMTOKEN", "NMTOKENS",
+ "ENTITY", "ENTITIES"
};
@@ -630,172 +630,172 @@ public final class ValidationConsumer extends EventFilter
* preloaded with a particular DTD.
*/
public void attributeDecl (
- String eName,
- String aName,
- String type,
- String mode,
- String value
+ String eName,
+ String aName,
+ String type,
+ String mode,
+ String value
) throws SAXException
{
- if (disableDeclarations)
- return;
-
- ElementInfo info = (ElementInfo) elements.get (eName);
- AttributeInfo ainfo = new AttributeInfo ();
- boolean checkOne = false;
- boolean interned = false;
-
- // cheap interning of type names and #FIXED, #REQUIRED
- // for faster startElement (we can use "==")
- for (int i = 0; i < types.length; i++) {
- if (types [i].equals (type)) {
- type = types [i];
- interned = true;
- break;
- }
- }
- if ("#FIXED".equals (mode))
- mode = "#FIXED";
- else if ("#REQUIRED".equals (mode))
- mode = "#REQUIRED";
-
- ainfo.type = type;
- ainfo.mode = mode;
- ainfo.value = value;
-
- // we might not have seen the content model yet
- if (info == null) {
- info = new ElementInfo (eName);
- elements.put (eName, info);
- }
- if ("ID" == type) {
- checkOne = true;
- if (!("#REQUIRED" == mode || "#IMPLIED".equals (mode))) {
- // VC: ID Attribute Default
- error ("ID attribute '" + aName
- + "' must be #IMPLIED or #REQUIRED");
- }
-
- } else if (!interned && type.startsWith ("NOTATION ")) {
- checkOne = true;
-
- // VC: Notation Attributes (notations must be declared)
- StringTokenizer tokens = new StringTokenizer (
- type.substring (10, type.lastIndexOf (')')),
- "|");
- while (tokens.hasMoreTokens ()) {
- String token = tokens.nextToken ();
- if (!notations.contains (token))
- nDeferred.addElement (token);
- }
- }
- if (checkOne) {
- for (Enumeration e = info.attributes.keys ();
- e.hasMoreElements ();
- /* NOP */) {
- String name;
- AttributeInfo ainfo2;
-
- name = (String) e.nextElement ();
- ainfo2 = (AttributeInfo) info.attributes.get (name);
- if (type == ainfo2.type || !interned /* NOTATION */) {
- // VC: One ID per Element Type
- // VC: One Notation per Element TYpe
- error ("Element '" + eName
- + "' already has an attribute of type "
- + (interned ? "NOTATION" : type)
- + " ('" + name
- + "') so '" + aName
- + "' is a validity error");
- }
- }
- }
-
- // VC: Attribute Default Legal
- if (value != null) {
-
- if ("CDATA" == type) {
- // event source rejected '<'
-
- } else if ("NMTOKEN" == type) {
- // VC: Name Token (is a nmtoken)
- isNmtoken (value, "attribute default", aName);
-
- } else if ("NMTOKENS" == type) {
- // VC: Name Token (is a nmtoken; at least one value)
- StringTokenizer tokens = new StringTokenizer (value);
- if (!tokens.hasMoreTokens ())
- error ("Default for attribute '" + aName
- + "' must have at least one name token.");
- else do {
- String token = tokens.nextToken ();
- isNmtoken (token, "attribute default", aName);
- } while (tokens.hasMoreTokens ());
-
- } else if ("IDREF" == type || "ENTITY" == type) {
- // VC: Entity Name (is a name)
- // VC: IDREF (is a name) (is declared)
- isName (value, "attribute default", aName);
- if ("ENTITY" == type && !unparsed.contains (value))
- uDeferred.addElement (value);
-
- } else if ("IDREFS" == type || "ENTITIES" == type) {
- // VC: Entity Name (is a name; at least one value)
- // VC: IDREF (is a name; at least one value)
- StringTokenizer names = new StringTokenizer (value);
- if (!names.hasMoreTokens ())
- error ("Default for attribute '" + aName
- + "' must have at least one name.");
- else do {
- String name = names.nextToken ();
- isName (name, "attribute default", aName);
- if ("ENTITIES" == type && !unparsed.contains (name))
- uDeferred.addElement (value);
- } while (names.hasMoreTokens ());
-
- } else if (type.charAt (0) == '(' /*)*/ ) {
- // VC: Enumeration (must match)
- checkEnumeration (value, type, aName);
-
- } else if (!interned && checkOne) { /* NOTATION */
- // VC: Notation attributes (must be names)
- isName (value, "attribute default", aName);
-
- // VC: Notation attributes (must be declared)
- if (!notations.contains (value))
- nDeferred.addElement (value);
-
- // VC: Enumeration (must match)
- checkEnumeration (value, type, aName);
-
- } else if ("ID" != type)
- throw new RuntimeException ("illegal attribute type: " + type);
- }
-
- if (info.attributes.get (aName) == null)
- info.attributes.put (aName, ainfo);
- /*
- else
- warning ("Element '" + eName
- + "' already has an attribute named '" + aName + "'");
- */
-
- if ("xml:space".equals (aName)) {
- if (!("(default|preserve)".equals (type)
- || "(preserve|default)".equals (type)
- // these next two are arguable; XHTML's DTD doesn't
- // deserve errors. After all, it's not like any
- // illegal _value_ could pass ...
- || "(preserve)".equals (type)
- || "(default)".equals (type)
- ))
- error (
- "xml:space attribute type must be like '(default|preserve)'"
- + " not '" + type + "'"
- );
-
- }
- super.attributeDecl (eName, aName, type, mode, value);
+ if (disableDeclarations)
+ return;
+
+ ElementInfo info = (ElementInfo) elements.get (eName);
+ AttributeInfo ainfo = new AttributeInfo ();
+ boolean checkOne = false;
+ boolean interned = false;
+
+ // cheap interning of type names and #FIXED, #REQUIRED
+ // for faster startElement (we can use "==")
+ for (int i = 0; i < types.length; i++) {
+ if (types [i].equals (type)) {
+ type = types [i];
+ interned = true;
+ break;
+ }
+ }
+ if ("#FIXED".equals (mode))
+ mode = "#FIXED";
+ else if ("#REQUIRED".equals (mode))
+ mode = "#REQUIRED";
+
+ ainfo.type = type;
+ ainfo.mode = mode;
+ ainfo.value = value;
+
+ // we might not have seen the content model yet
+ if (info == null) {
+ info = new ElementInfo (eName);
+ elements.put (eName, info);
+ }
+ if ("ID" == type) {
+ checkOne = true;
+ if (!("#REQUIRED" == mode || "#IMPLIED".equals (mode))) {
+ // VC: ID Attribute Default
+ error ("ID attribute '" + aName
+ + "' must be #IMPLIED or #REQUIRED");
+ }
+
+ } else if (!interned && type.startsWith ("NOTATION ")) {
+ checkOne = true;
+
+ // VC: Notation Attributes (notations must be declared)
+ StringTokenizer tokens = new StringTokenizer (
+ type.substring (10, type.lastIndexOf (')')),
+ "|");
+ while (tokens.hasMoreTokens ()) {
+ String token = tokens.nextToken ();
+ if (!notations.contains (token))
+ nDeferred.addElement (token);
+ }
+ }
+ if (checkOne) {
+ for (Enumeration e = info.attributes.keys ();
+ e.hasMoreElements ();
+ /* NOP */) {
+ String name;
+ AttributeInfo ainfo2;
+
+ name = (String) e.nextElement ();
+ ainfo2 = (AttributeInfo) info.attributes.get (name);
+ if (type == ainfo2.type || !interned /* NOTATION */) {
+ // VC: One ID per Element Type
+ // VC: One Notation per Element TYpe
+ error ("Element '" + eName
+ + "' already has an attribute of type "
+ + (interned ? "NOTATION" : type)
+ + " ('" + name
+ + "') so '" + aName
+ + "' is a validity error");
+ }
+ }
+ }
+
+ // VC: Attribute Default Legal
+ if (value != null) {
+
+ if ("CDATA" == type) {
+ // event source rejected '<'
+
+ } else if ("NMTOKEN" == type) {
+ // VC: Name Token (is a nmtoken)
+ isNmtoken (value, "attribute default", aName);
+
+ } else if ("NMTOKENS" == type) {
+ // VC: Name Token (is a nmtoken; at least one value)
+ StringTokenizer tokens = new StringTokenizer (value);
+ if (!tokens.hasMoreTokens ())
+ error ("Default for attribute '" + aName
+ + "' must have at least one name token.");
+ else do {
+ String token = tokens.nextToken ();
+ isNmtoken (token, "attribute default", aName);
+ } while (tokens.hasMoreTokens ());
+
+ } else if ("IDREF" == type || "ENTITY" == type) {
+ // VC: Entity Name (is a name)
+ // VC: IDREF (is a name) (is declared)
+ isName (value, "attribute default", aName);
+ if ("ENTITY" == type && !unparsed.contains (value))
+ uDeferred.addElement (value);
+
+ } else if ("IDREFS" == type || "ENTITIES" == type) {
+ // VC: Entity Name (is a name; at least one value)
+ // VC: IDREF (is a name; at least one value)
+ StringTokenizer names = new StringTokenizer (value);
+ if (!names.hasMoreTokens ())
+ error ("Default for attribute '" + aName
+ + "' must have at least one name.");
+ else do {
+ String name = names.nextToken ();
+ isName (name, "attribute default", aName);
+ if ("ENTITIES" == type && !unparsed.contains (name))
+ uDeferred.addElement (value);
+ } while (names.hasMoreTokens ());
+
+ } else if (type.charAt (0) == '(' /*)*/ ) {
+ // VC: Enumeration (must match)
+ checkEnumeration (value, type, aName);
+
+ } else if (!interned && checkOne) { /* NOTATION */
+ // VC: Notation attributes (must be names)
+ isName (value, "attribute default", aName);
+
+ // VC: Notation attributes (must be declared)
+ if (!notations.contains (value))
+ nDeferred.addElement (value);
+
+ // VC: Enumeration (must match)
+ checkEnumeration (value, type, aName);
+
+ } else if ("ID" != type)
+ throw new RuntimeException ("illegal attribute type: " + type);
+ }
+
+ if (info.attributes.get (aName) == null)
+ info.attributes.put (aName, ainfo);
+ /*
+ else
+ warning ("Element '" + eName
+ + "' already has an attribute named '" + aName + "'");
+ */
+
+ if ("xml:space".equals (aName)) {
+ if (!("(default|preserve)".equals (type)
+ || "(preserve|default)".equals (type)
+ // these next two are arguable; XHTML's DTD doesn't
+ // deserve errors. After all, it's not like any
+ // illegal _value_ could pass ...
+ || "(preserve)".equals (type)
+ || "(default)".equals (type)
+ ))
+ error (
+ "xml:space attribute type must be like '(default|preserve)'"
+ + " not '" + type + "'"
+ );
+
+ }
+ super.attributeDecl (eName, aName, type, mode, value);
}
/**
@@ -807,29 +807,29 @@ public final class ValidationConsumer extends EventFilter
public void elementDecl (String name, String model)
throws SAXException
{
- if (disableDeclarations)
- return;
-
- ElementInfo info = (ElementInfo) elements.get (name);
-
- // we might have seen an attribute decl already
- if (info == null) {
- info = new ElementInfo (name);
- elements.put (name, info);
- }
- if (info.model != null) {
- // NOTE: not all parsers can report such duplicates.
- // VC: Unique Element Type Declaration
- error ("Element type '" + name
- + "' was already declared.");
- } else {
- info.model = model;
-
- // VC: No Duplicate Types (in mixed content models)
- if (model.charAt (1) == '#') // (#PCDATA...
- info.getRecognizer (this);
- }
- super.elementDecl (name, model);
+ if (disableDeclarations)
+ return;
+
+ ElementInfo info = (ElementInfo) elements.get (name);
+
+ // we might have seen an attribute decl already
+ if (info == null) {
+ info = new ElementInfo (name);
+ elements.put (name, info);
+ }
+ if (info.model != null) {
+ // NOTE: not all parsers can report such duplicates.
+ // VC: Unique Element Type Declaration
+ error ("Element type '" + name
+ + "' was already declared.");
+ } else {
+ info.model = model;
+
+ // VC: No Duplicate Types (in mixed content models)
+ if (model.charAt (1) == '#') // (#PCDATA...
+ info.getRecognizer (this);
+ }
+ super.elementDecl (name, model);
}
/**
@@ -839,8 +839,8 @@ public final class ValidationConsumer extends EventFilter
public void internalEntityDecl (String name, String value)
throws SAXException
{
- if (!disableDeclarations)
- super.internalEntityDecl (name, value);
+ if (!disableDeclarations)
+ super.internalEntityDecl (name, value);
}
/**
@@ -848,11 +848,11 @@ public final class ValidationConsumer extends EventFilter
* one was preloaded with a particular DTD
*/
public void externalEntityDecl (String name,
- String publicId, String systemId)
+ String publicId, String systemId)
throws SAXException
{
- if (!disableDeclarations)
- super.externalEntityDecl (name, publicId, systemId);
+ if (!disableDeclarations)
+ super.externalEntityDecl (name, publicId, systemId);
}
@@ -865,11 +865,11 @@ public final class ValidationConsumer extends EventFilter
public void notationDecl (String name, String publicId, String systemId)
throws SAXException
{
- if (disableDeclarations)
- return;
+ if (disableDeclarations)
+ return;
- notations.addElement (name);
- super.notationDecl (name, publicId, systemId);
+ notations.addElement (name);
+ super.notationDecl (name, publicId, systemId);
}
/**
@@ -879,22 +879,22 @@ public final class ValidationConsumer extends EventFilter
* unless this one was preloaded with a particular DTD.
*/
public void unparsedEntityDecl (
- String name,
- String publicId,
- String systemId,
- String notationName
+ String name,
+ String publicId,
+ String systemId,
+ String notationName
) throws SAXException
{
- if (disableDeclarations)
- return;
+ if (disableDeclarations)
+ return;
- unparsed.addElement (name);
- if (!notations.contains (notationName))
- nDeferred.addElement (notationName);
- super.unparsedEntityDecl (name, publicId, systemId, notationName);
+ unparsed.addElement (name);
+ if (!notations.contains (notationName))
+ nDeferred.addElement (notationName);
+ super.unparsedEntityDecl (name, publicId, systemId, notationName);
}
-
-
+
+
/**
* <b>ContentHandler</b> Ensures that state from any previous parse
* has been deleted.
@@ -903,14 +903,14 @@ public final class ValidationConsumer extends EventFilter
public void startDocument ()
throws SAXException
{
- resetState ();
- super.startDocument ();
+ resetState ();
+ super.startDocument ();
}
private static boolean isAsciiLetter (char c)
{
- return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z');
+ return (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z');
}
@@ -921,7 +921,7 @@ public final class ValidationConsumer extends EventFilter
public void skippedEntity (String name)
throws SAXException
{
- fatalError ("may not skip entities");
+ fatalError ("may not skip entities");
}
/*
@@ -930,14 +930,14 @@ public final class ValidationConsumer extends EventFilter
private String expandDefaultRefs (String s)
throws SAXException
{
- if (s.indexOf ('&') < 0)
- return s;
-
+ if (s.indexOf ('&') < 0)
+ return s;
+
// FIXME: handle &#nn; &#xnn; &name;
- String message = "Can't expand refs in attribute default: " + s;
- warning (message);
+ String message = "Can't expand refs in attribute default: " + s;
+ warning (message);
- return s;
+ return s;
}
/**
@@ -946,248 +946,248 @@ public final class ValidationConsumer extends EventFilter
* Passed to the next consumer.
*/
public void startElement (
- String uri,
- String localName,
- String qName,
- Attributes atts
+ String uri,
+ String localName,
+ String qName,
+ Attributes atts
) throws SAXException
{
- //
- // First check content model for the enclosing scope.
- //
- if (contentStack.isEmpty ()) {
- // VC: Root Element Type
- if (!qName.equals (rootName)) {
- if (rootName == null)
- warning ("This document has no DTD, can't be valid");
- else
- error ("Root element type '" + qName
- + "' was declared to be '" + rootName + "'");
- }
- } else {
- Recognizer state = (Recognizer) contentStack.peek ();
-
- if (state != null) {
- Recognizer newstate = state.acceptElement (qName);
-
- if (newstate == null)
- error ("Element type '" + qName
- + "' in element '" + state.type.name
- + "' violates content model " + state.type.model
- );
- if (newstate != state) {
- contentStack.pop ();
- contentStack.push (newstate);
- }
- }
- }
-
- //
- // Then check that this element was declared, and push the
- // object used to validate its content model onto our stack.
- //
- // This is where the recognizer gets created, if needed; if
- // it's a "children" (elements) content model, an NDFA is
- // created. (One recognizer is used per content type, no
- // matter how complex that recognizer is.)
- //
- ElementInfo info;
-
- info = (ElementInfo) elements.get (qName);
- if (info == null || info.model == null) {
- // VC: Element Valid (base clause)
- error ("Element type '" + qName + "' was not declared");
- contentStack.push (null);
-
- // for less diagnostic noise, fake a declaration.
- elementDecl (qName, "ANY");
- } else
- contentStack.push (info.getRecognizer (this));
-
- //
- // Then check each attribute present
- //
- int len;
- String aname;
- AttributeInfo ainfo;
-
- if (atts != null)
- len = atts.getLength ();
- else
- len = 0;
-
- for (int i = 0; i < len; i++) {
- aname = atts.getQName (i);
-
- if (info == null
- || (ainfo = (AttributeInfo) info.attributes.get (aname))
- == null) {
- // VC: Attribute Value Type
- error ("Attribute '" + aname
- + "' was not declared for element type " + qName);
- continue;
- }
-
- String value = atts.getValue (i);
-
- // note that "==" for type names and "#FIXED" is correct
- // (and fast) since we've interned those literals.
-
- if ("#FIXED" == ainfo.mode) {
- String expanded = expandDefaultRefs (ainfo.value);
-
- // VC: Fixed Attribute Default
- if (!value.equals (expanded)) {
- error ("Attribute '" + aname
- + "' must match " + expanded
- );
- continue;
- }
- }
-
- if ("CDATA" == ainfo.type)
- continue;
-
- //
- // For all other attribute types, there are various
- // rules to follow.
- //
-
- if ("ID" == ainfo.type) {
- // VC: ID (must be a name)
- if (isName (value, "ID attribute", aname)) {
- if (Boolean.TRUE == ids.get (value))
- // VC: ID (appears once)
- error ("ID attribute " + aname
- + " uses an ID value '" + value
- + "' which was already declared.");
- else
- // any forward refs are no longer problems
- ids.put (value, Boolean.TRUE);
- }
- continue;
- }
-
- if ("IDREF" == ainfo.type) {
- // VC: IDREF (value must be a name)
- if (isName (value, "IDREF attribute", aname)) {
- // VC: IDREF (must match some ID attribute)
- if (ids.get (value) == null)
- // new -- assume it's a forward ref
- ids.put (value, Boolean.FALSE);
- }
- continue;
- }
-
- if ("IDREFS" == ainfo.type) {
- StringTokenizer tokens = new StringTokenizer (value, " ");
-
- if (!tokens.hasMoreTokens ()) {
- // VC: IDREF (one or more values)
- error ("IDREFS attribute " + aname
- + " must have at least one ID ref");
- } else do {
- String id = tokens.nextToken ();
-
- // VC: IDREF (value must be a name)
- if (isName (id, "IDREFS attribute", aname)) {
- // VC: IDREF (must match some ID attribute)
- if (ids.get (id) == null)
- // new -- assume it's a forward ref
- ids.put (id, Boolean.FALSE);
- }
- } while (tokens.hasMoreTokens ());
- continue;
- }
-
- if ("NMTOKEN" == ainfo.type) {
- // VC: Name Token (is a name token)
- isNmtoken (value, "NMTOKEN attribute", aname);
- continue;
- }
-
- if ("NMTOKENS" == ainfo.type) {
- StringTokenizer tokens = new StringTokenizer (value, " ");
-
- if (!tokens.hasMoreTokens ()) {
- // VC: Name Token (one or more values)
- error ("NMTOKENS attribute " + aname
- + " must have at least one name token");
- } else do {
- String token = tokens.nextToken ();
-
- // VC: Name Token (is a name token)
- isNmtoken (token, "NMTOKENS attribute", aname);
- } while (tokens.hasMoreTokens ());
- continue;
- }
-
- if ("ENTITY" == ainfo.type) {
- if (!unparsed.contains (value))
- // VC: Entity Name
- error ("Value of attribute '" + aname
- + "' refers to unparsed entity '" + value
- + "' which was not declared.");
- continue;
- }
-
- if ("ENTITIES" == ainfo.type) {
- StringTokenizer tokens = new StringTokenizer (value, " ");
-
- if (!tokens.hasMoreTokens ()) {
- // VC: Entity Name (one or more values)
- error ("ENTITIES attribute " + aname
- + " must have at least one name token");
- } else do {
- String entity = tokens.nextToken ();
-
- if (!unparsed.contains (entity))
- // VC: Entity Name
- error ("Value of attribute '" + aname
- + "' refers to unparsed entity '" + entity
- + "' which was not declared.");
- } while (tokens.hasMoreTokens ());
- continue;
- }
-
- //
- // check for enumerations last; more expensive
- //
- if (ainfo.type.charAt (0) == '(' /*)*/
- || ainfo.type.startsWith ("NOTATION ")
- ) {
- // VC: Enumeration (value must be defined)
- checkEnumeration (value, ainfo.type, aname);
- continue;
- }
- }
-
- //
- // Last, check that all #REQUIRED attributes were provided
- //
- if (info != null) {
- Hashtable table = info.attributes;
-
- if (table.size () != 0) {
- Enumeration e = table.keys ();
-
- // XXX table.keys uses the heap, bleech -- slows things
-
- while (e.hasMoreElements ()) {
- aname = (String) e.nextElement ();
- ainfo = (AttributeInfo) table.get (aname);
-
- // "#REQUIRED" mode was interned in attributeDecl
- if ("#REQUIRED" == ainfo.mode
- && atts.getValue (aname) == null) {
- // VC: Required Attribute
- error ("Attribute '" + aname + "' must be specified "
- + "for element type " + qName);
- }
- }
- }
- }
- super.startElement (uri, localName, qName, atts);
+ //
+ // First check content model for the enclosing scope.
+ //
+ if (contentStack.isEmpty ()) {
+ // VC: Root Element Type
+ if (!qName.equals (rootName)) {
+ if (rootName == null)
+ warning ("This document has no DTD, can't be valid");
+ else
+ error ("Root element type '" + qName
+ + "' was declared to be '" + rootName + "'");
+ }
+ } else {
+ Recognizer state = (Recognizer) contentStack.peek ();
+
+ if (state != null) {
+ Recognizer newstate = state.acceptElement (qName);
+
+ if (newstate == null)
+ error ("Element type '" + qName
+ + "' in element '" + state.type.name
+ + "' violates content model " + state.type.model
+ );
+ if (newstate != state) {
+ contentStack.pop ();
+ contentStack.push (newstate);
+ }
+ }
+ }
+
+ //
+ // Then check that this element was declared, and push the
+ // object used to validate its content model onto our stack.
+ //
+ // This is where the recognizer gets created, if needed; if
+ // it's a "children" (elements) content model, an NDFA is
+ // created. (One recognizer is used per content type, no
+ // matter how complex that recognizer is.)
+ //
+ ElementInfo info;
+
+ info = (ElementInfo) elements.get (qName);
+ if (info == null || info.model == null) {
+ // VC: Element Valid (base clause)
+ error ("Element type '" + qName + "' was not declared");
+ contentStack.push (null);
+
+ // for less diagnostic noise, fake a declaration.
+ elementDecl (qName, "ANY");
+ } else
+ contentStack.push (info.getRecognizer (this));
+
+ //
+ // Then check each attribute present
+ //
+ int len;
+ String aname;
+ AttributeInfo ainfo;
+
+ if (atts != null)
+ len = atts.getLength ();
+ else
+ len = 0;
+
+ for (int i = 0; i < len; i++) {
+ aname = atts.getQName (i);
+
+ if (info == null
+ || (ainfo = (AttributeInfo) info.attributes.get (aname))
+ == null) {
+ // VC: Attribute Value Type
+ error ("Attribute '" + aname
+ + "' was not declared for element type " + qName);
+ continue;
+ }
+
+ String value = atts.getValue (i);
+
+ // note that "==" for type names and "#FIXED" is correct
+ // (and fast) since we've interned those literals.
+
+ if ("#FIXED" == ainfo.mode) {
+ String expanded = expandDefaultRefs (ainfo.value);
+
+ // VC: Fixed Attribute Default
+ if (!value.equals (expanded)) {
+ error ("Attribute '" + aname
+ + "' must match " + expanded
+ );
+ continue;
+ }
+ }
+
+ if ("CDATA" == ainfo.type)
+ continue;
+
+ //
+ // For all other attribute types, there are various
+ // rules to follow.
+ //
+
+ if ("ID" == ainfo.type) {
+ // VC: ID (must be a name)
+ if (isName (value, "ID attribute", aname)) {
+ if (Boolean.TRUE == ids.get (value))
+ // VC: ID (appears once)
+ error ("ID attribute " + aname
+ + " uses an ID value '" + value
+ + "' which was already declared.");
+ else
+ // any forward refs are no longer problems
+ ids.put (value, Boolean.TRUE);
+ }
+ continue;
+ }
+
+ if ("IDREF" == ainfo.type) {
+ // VC: IDREF (value must be a name)
+ if (isName (value, "IDREF attribute", aname)) {
+ // VC: IDREF (must match some ID attribute)
+ if (ids.get (value) == null)
+ // new -- assume it's a forward ref
+ ids.put (value, Boolean.FALSE);
+ }
+ continue;
+ }
+
+ if ("IDREFS" == ainfo.type) {
+ StringTokenizer tokens = new StringTokenizer (value, " ");
+
+ if (!tokens.hasMoreTokens ()) {
+ // VC: IDREF (one or more values)
+ error ("IDREFS attribute " + aname
+ + " must have at least one ID ref");
+ } else do {
+ String id = tokens.nextToken ();
+
+ // VC: IDREF (value must be a name)
+ if (isName (id, "IDREFS attribute", aname)) {
+ // VC: IDREF (must match some ID attribute)
+ if (ids.get (id) == null)
+ // new -- assume it's a forward ref
+ ids.put (id, Boolean.FALSE);
+ }
+ } while (tokens.hasMoreTokens ());
+ continue;
+ }
+
+ if ("NMTOKEN" == ainfo.type) {
+ // VC: Name Token (is a name token)
+ isNmtoken (value, "NMTOKEN attribute", aname);
+ continue;
+ }
+
+ if ("NMTOKENS" == ainfo.type) {
+ StringTokenizer tokens = new StringTokenizer (value, " ");
+
+ if (!tokens.hasMoreTokens ()) {
+ // VC: Name Token (one or more values)
+ error ("NMTOKENS attribute " + aname
+ + " must have at least one name token");
+ } else do {
+ String token = tokens.nextToken ();
+
+ // VC: Name Token (is a name token)
+ isNmtoken (token, "NMTOKENS attribute", aname);
+ } while (tokens.hasMoreTokens ());
+ continue;
+ }
+
+ if ("ENTITY" == ainfo.type) {
+ if (!unparsed.contains (value))
+ // VC: Entity Name
+ error ("Value of attribute '" + aname
+ + "' refers to unparsed entity '" + value
+ + "' which was not declared.");
+ continue;
+ }
+
+ if ("ENTITIES" == ainfo.type) {
+ StringTokenizer tokens = new StringTokenizer (value, " ");
+
+ if (!tokens.hasMoreTokens ()) {
+ // VC: Entity Name (one or more values)
+ error ("ENTITIES attribute " + aname
+ + " must have at least one name token");
+ } else do {
+ String entity = tokens.nextToken ();
+
+ if (!unparsed.contains (entity))
+ // VC: Entity Name
+ error ("Value of attribute '" + aname
+ + "' refers to unparsed entity '" + entity
+ + "' which was not declared.");
+ } while (tokens.hasMoreTokens ());
+ continue;
+ }
+
+ //
+ // check for enumerations last; more expensive
+ //
+ if (ainfo.type.charAt (0) == '(' /*)*/
+ || ainfo.type.startsWith ("NOTATION ")
+ ) {
+ // VC: Enumeration (value must be defined)
+ checkEnumeration (value, ainfo.type, aname);
+ continue;
+ }
+ }
+
+ //
+ // Last, check that all #REQUIRED attributes were provided
+ //
+ if (info != null) {
+ Hashtable table = info.attributes;
+
+ if (table.size () != 0) {
+ Enumeration e = table.keys ();
+
+ // XXX table.keys uses the heap, bleech -- slows things
+
+ while (e.hasMoreElements ()) {
+ aname = (String) e.nextElement ();
+ ainfo = (AttributeInfo) table.get (aname);
+
+ // "#REQUIRED" mode was interned in attributeDecl
+ if ("#REQUIRED" == ainfo.mode
+ && atts.getValue (aname) == null) {
+ // VC: Required Attribute
+ error ("Attribute '" + aname + "' must be specified "
+ + "for element type " + qName);
+ }
+ }
+ }
+ }
+ super.startElement (uri, localName, qName, atts);
}
/**
@@ -1198,25 +1198,25 @@ public final class ValidationConsumer extends EventFilter
public void characters (char ch [], int start, int length)
throws SAXException
{
- Recognizer state;
-
- if (contentStack.empty ())
- state = null;
- else
- state = (Recognizer) contentStack.peek ();
-
- // NOTE: if this ever supports with SAX parsers that don't
- // report ignorable whitespace as such (only XP?), this class
- // needs to morph it into ignorableWhitespace() as needed ...
-
- if (state != null && !state.acceptCharacters ())
- // VC: Element Valid (clauses three, four -- see recognizer)
- error ("Character content not allowed in element "
- + state.type.name);
-
- super.characters (ch, start, length);
+ Recognizer state;
+
+ if (contentStack.empty ())
+ state = null;
+ else
+ state = (Recognizer) contentStack.peek ();
+
+ // NOTE: if this ever supports with SAX parsers that don't
+ // report ignorable whitespace as such (only XP?), this class
+ // needs to morph it into ignorableWhitespace() as needed ...
+
+ if (state != null && !state.acceptCharacters ())
+ // VC: Element Valid (clauses three, four -- see recognizer)
+ error ("Character content not allowed in element "
+ + state.type.name);
+
+ super.characters (ch, start, length);
}
-
+
/**
* <b>ContentHandler</b> Reports a validity error if the element's content
@@ -1227,95 +1227,95 @@ public final class ValidationConsumer extends EventFilter
public void endElement (String uri, String localName, String qName)
throws SAXException
{
- try {
- Recognizer state = (Recognizer) contentStack.pop ();
-
- if (state != null && !state.completed ())
- // VC: Element valid (clauses two, three, four; see Recognizer)
- error ("Premature end for element '"
- + state.type.name
- + "', content model "
- + state.type.model);
-
- // could insist on match of start element, but that's
- // something the input stream must to guarantee.
-
- } catch (EmptyStackException e) {
- fatalError ("endElement without startElement: " + qName
- + ((uri == null)
- ? ""
- : ( " { '" + uri + "', " + localName + " }")));
- }
- super.endElement (uri, localName, qName);
+ try {
+ Recognizer state = (Recognizer) contentStack.pop ();
+
+ if (state != null && !state.completed ())
+ // VC: Element valid (clauses two, three, four; see Recognizer)
+ error ("Premature end for element '"
+ + state.type.name
+ + "', content model "
+ + state.type.model);
+
+ // could insist on match of start element, but that's
+ // something the input stream must to guarantee.
+
+ } catch (EmptyStackException e) {
+ fatalError ("endElement without startElement: " + qName
+ + ((uri == null)
+ ? ""
+ : ( " { '" + uri + "', " + localName + " }")));
+ }
+ super.endElement (uri, localName, qName);
}
/**
* <b>ContentHandler</b> Checks whether all ID values that were
- * referenced have been declared, and releases all resources.
+ * referenced have been declared, and releases all resources.
* Passed to the next consumer.
- *
+ *
* @see #setDocumentLocator
*/
public void endDocument ()
throws SAXException
{
- for (Enumeration idNames = ids.keys ();
- idNames.hasMoreElements ();
- /* NOP */) {
- String id = (String) idNames.nextElement ();
-
- if (Boolean.FALSE == ids.get (id)) {
- // VC: IDREF (must match ID)
- error ("Undeclared ID value '" + id
- + "' was referred to by an IDREF/IDREFS attribute");
- }
- }
-
- resetState ();
- super.endDocument ();
+ for (Enumeration idNames = ids.keys ();
+ idNames.hasMoreElements ();
+ /* NOP */) {
+ String id = (String) idNames.nextElement ();
+
+ if (Boolean.FALSE == ids.get (id)) {
+ // VC: IDREF (must match ID)
+ error ("Undeclared ID value '" + id
+ + "' was referred to by an IDREF/IDREFS attribute");
+ }
+ }
+
+ resetState ();
+ super.endDocument ();
}
/** Holds per-element declarations */
static private final class ElementInfo
{
- String name;
- String model;
-
- // key = attribute name; value = AttributeInfo
- Hashtable attributes = new Hashtable (11);
-
- ElementInfo (String n) { name = n; }
-
- private Recognizer recognizer;
-
- // for validating content models: one per type, shared,
- // and constructed only on demand ... so unused elements do
- // not need to consume resources.
- Recognizer getRecognizer (ValidationConsumer consumer)
- throws SAXException
- {
- if (recognizer == null) {
- if ("ANY".equals (model))
- recognizer = ANY;
- else if ("EMPTY".equals (model))
- recognizer = new EmptyRecognizer (this);
- else if ('#' == model.charAt (1))
- // n.b. this constructor does a validity check
- recognizer = new MixedRecognizer (this, consumer);
- else
- recognizer = new ChildrenRecognizer (this, consumer);
- }
- return recognizer;
- }
+ String name;
+ String model;
+
+ // key = attribute name; value = AttributeInfo
+ Hashtable attributes = new Hashtable (11);
+
+ ElementInfo (String n) { name = n; }
+
+ private Recognizer recognizer;
+
+ // for validating content models: one per type, shared,
+ // and constructed only on demand ... so unused elements do
+ // not need to consume resources.
+ Recognizer getRecognizer (ValidationConsumer consumer)
+ throws SAXException
+ {
+ if (recognizer == null) {
+ if ("ANY".equals (model))
+ recognizer = ANY;
+ else if ("EMPTY".equals (model))
+ recognizer = new EmptyRecognizer (this);
+ else if ('#' == model.charAt (1))
+ // n.b. this constructor does a validity check
+ recognizer = new MixedRecognizer (this, consumer);
+ else
+ recognizer = new ChildrenRecognizer (this, consumer);
+ }
+ return recognizer;
+ }
}
/** Holds per-attribute declarations */
static private final class AttributeInfo
{
- String type;
- String mode; // #REQUIRED, etc (or null)
- String value; // or null
+ String type;
+ String mode; // #REQUIRED, etc (or null)
+ String value; // or null
}
@@ -1323,120 +1323,120 @@ public final class ValidationConsumer extends EventFilter
// Content model validation
//
- static private final Recognizer ANY = new Recognizer (null);
+ static private final Recognizer ANY = new Recognizer (null);
// Base class defines the calls used to validate content,
// and supports the "ANY" content model
static private class Recognizer
{
- final ElementInfo type;
-
- Recognizer (ElementInfo t) { type = t; }
-
- // return true iff character data is legal here
- boolean acceptCharacters ()
- throws SAXException
- // VC: Element Valid (third and fourth clauses)
- { return true; }
-
- // null return = failure
- // otherwise, next state (like an FSM)
- // prerequisite: tested that name was declared
- Recognizer acceptElement (String name)
- throws SAXException
- // VC: Element Valid (fourth clause)
- { return this; }
-
- // return true iff model is completed, can finish
- boolean completed ()
- throws SAXException
- // VC: Element Valid (fourth clause)
- { return true; }
-
- public String toString ()
- // n.b. "children" is the interesting case!
- { return (type == null) ? "ANY" : type.model; }
+ final ElementInfo type;
+
+ Recognizer (ElementInfo t) { type = t; }
+
+ // return true iff character data is legal here
+ boolean acceptCharacters ()
+ throws SAXException
+ // VC: Element Valid (third and fourth clauses)
+ { return true; }
+
+ // null return = failure
+ // otherwise, next state (like an FSM)
+ // prerequisite: tested that name was declared
+ Recognizer acceptElement (String name)
+ throws SAXException
+ // VC: Element Valid (fourth clause)
+ { return this; }
+
+ // return true iff model is completed, can finish
+ boolean completed ()
+ throws SAXException
+ // VC: Element Valid (fourth clause)
+ { return true; }
+
+ public String toString ()
+ // n.b. "children" is the interesting case!
+ { return (type == null) ? "ANY" : type.model; }
}
// "EMPTY" content model -- no characters or elements
private static final class EmptyRecognizer extends Recognizer
{
- public EmptyRecognizer (ElementInfo type)
- { super (type); }
+ public EmptyRecognizer (ElementInfo type)
+ { super (type); }
- // VC: Element Valid (first clause)
- boolean acceptCharacters ()
- { return false; }
+ // VC: Element Valid (first clause)
+ boolean acceptCharacters ()
+ { return false; }
- // VC: Element Valid (first clause)
- Recognizer acceptElement (String name)
- { return null; }
+ // VC: Element Valid (first clause)
+ Recognizer acceptElement (String name)
+ { return null; }
}
// "Mixed" content model -- ANY, but restricts elements
private static final class MixedRecognizer extends Recognizer
{
- private String permitted [];
-
- // N.B. constructor tests for duplicated element names (VC)
- public MixedRecognizer (ElementInfo t, ValidationConsumer v)
- throws SAXException
- {
- super (t);
-
- // (#PCDATA...)* or (#PCDATA) ==> ... or empty
- // with the "..." being "|elname|..."
- StringTokenizer tokens = new StringTokenizer (
- t.model.substring (8, t.model.lastIndexOf (')')),
- "|");
- Vector vec = new Vector ();
-
- while (tokens.hasMoreTokens ()) {
- String token = tokens.nextToken ();
-
- if (vec.contains (token))
- v.error ("element " + token
- + " is repeated in mixed content model: "
- + t.model);
- else
- vec.addElement (token.intern ());
- }
- permitted = new String [vec.size ()];
- for (int i = 0; i < permitted.length; i++)
- permitted [i] = (String) vec.elementAt (i);
-
- // in one large machine-derived DTD sample, most of about
- // 250 mixed content models were empty, and 25 had ten or
- // more entries. 2 had over a hundred elements. Linear
- // search isn't obviously wrong.
- }
-
- // VC: Element Valid (third clause)
- Recognizer acceptElement (String name)
- {
- int length = permitted.length;
-
- // first pass -- optimistic w.r.t. event source interning
- // (and document validity)
- for (int i = 0; i < length; i++)
- if (permitted [i] == name)
- return this;
- // second pass -- pessimistic w.r.t. event source interning
- for (int i = 0; i < length; i++)
- if (permitted [i].equals (name))
- return this;
- return null;
- }
+ private String permitted [];
+
+ // N.B. constructor tests for duplicated element names (VC)
+ public MixedRecognizer (ElementInfo t, ValidationConsumer v)
+ throws SAXException
+ {
+ super (t);
+
+ // (#PCDATA...)* or (#PCDATA) ==> ... or empty
+ // with the "..." being "|elname|..."
+ StringTokenizer tokens = new StringTokenizer (
+ t.model.substring (8, t.model.lastIndexOf (')')),
+ "|");
+ Vector vec = new Vector ();
+
+ while (tokens.hasMoreTokens ()) {
+ String token = tokens.nextToken ();
+
+ if (vec.contains (token))
+ v.error ("element " + token
+ + " is repeated in mixed content model: "
+ + t.model);
+ else
+ vec.addElement (token.intern ());
+ }
+ permitted = new String [vec.size ()];
+ for (int i = 0; i < permitted.length; i++)
+ permitted [i] = (String) vec.elementAt (i);
+
+ // in one large machine-derived DTD sample, most of about
+ // 250 mixed content models were empty, and 25 had ten or
+ // more entries. 2 had over a hundred elements. Linear
+ // search isn't obviously wrong.
+ }
+
+ // VC: Element Valid (third clause)
+ Recognizer acceptElement (String name)
+ {
+ int length = permitted.length;
+
+ // first pass -- optimistic w.r.t. event source interning
+ // (and document validity)
+ for (int i = 0; i < length; i++)
+ if (permitted [i] == name)
+ return this;
+ // second pass -- pessimistic w.r.t. event source interning
+ for (int i = 0; i < length; i++)
+ if (permitted [i].equals (name))
+ return this;
+ return null;
+ }
}
// recognizer loop flags, see later
- private static final int F_LOOPHEAD = 0x01;
- private static final int F_LOOPNEXT = 0x02;
+ private static final int F_LOOPHEAD = 0x01;
+ private static final int F_LOOPNEXT = 0x02;
// for debugging -- used to label/count nodes in toString()
- private static int nodeCount;
+ private static int nodeCount;
/**
* "Children" content model -- these are nodes in NDFA state graphs.
@@ -1463,466 +1463,466 @@ public final class ValidationConsumer extends EventFilter
* graph to have one exit node (or more EMPTY nodes).
*/
private static final class ChildrenRecognizer extends Recognizer
- implements Cloneable
+ implements Cloneable
{
- // for reporting non-deterministic content models
- // ... a waste of space if we're not reporting those!
- // ... along with the 'model' member (in base class)
- private ValidationConsumer consumer;
-
- // for CHOICE nodes -- each component is an arc that
- // accepts a different NAME (or is EMPTY indicating
- // NDFA termination).
- private Recognizer components [];
-
- // for NAME/SEQUENCE nodes -- accepts that NAME and
- // then goes to the next node (CHOICE, NAME, EMPTY).
- private String name;
- private Recognizer next;
-
- // loops always point back to a CHOICE node. we mark such choice
- // nodes (F_LOOPHEAD) for diagnostics and faster deep cloning.
- // We also mark nodes before back pointers (F_LOOPNEXT), to ensure
- // termination when we patch sequences and loops.
- private int flags;
-
-
- // prevent a needless indirection between 'this' and 'node'
- private void copyIn (ChildrenRecognizer node)
- {
- // model & consumer are already set
- components = node.components;
- name = node.name;
- next = node.next;
- flags = node.flags;
- }
-
- // used to construct top level "children" content models,
- public ChildrenRecognizer (ElementInfo type, ValidationConsumer vc)
- {
- this (vc, type);
- populate (type.model.toCharArray (), 0);
- patchNext (new EmptyRecognizer (type), null);
- }
-
- // used internally; populating is separate
- private ChildrenRecognizer (ValidationConsumer vc, ElementInfo type)
- {
- super (type);
- consumer = vc;
- }
-
-
- //
- // When rewriting some graph nodes we need deep clones in one case;
- // mostly shallow clones (what the JVM handles for us) are fine.
- //
- private ChildrenRecognizer shallowClone ()
- {
- try {
- return (ChildrenRecognizer) clone ();
- } catch (CloneNotSupportedException e) {
- throw new Error ("clone");
- }
- }
-
- private ChildrenRecognizer deepClone ()
- {
- return deepClone (new Hashtable (37));
- }
-
- private ChildrenRecognizer deepClone (Hashtable table)
- {
- ChildrenRecognizer retval;
-
- if ((flags & F_LOOPHEAD) != 0) {
- retval = (ChildrenRecognizer) table.get (this);
- if (retval != null)
- return this;
-
- retval = shallowClone ();
- table.put (this, retval);
- } else
- retval = shallowClone ();
-
- if (next != null) {
- if (next instanceof ChildrenRecognizer)
- retval.next = ((ChildrenRecognizer)next)
- .deepClone (table);
- else if (!(next instanceof EmptyRecognizer))
- throw new RuntimeException ("deepClone");
- }
-
- if (components != null) {
- retval.components = new Recognizer [components.length];
- for (int i = 0; i < components.length; i++) {
- Recognizer temp = components [i];
-
- if (temp == null)
- retval.components [i] = null;
- else if (temp instanceof ChildrenRecognizer)
- retval.components [i] = ((ChildrenRecognizer)temp)
- .deepClone (table);
- else if (!(temp instanceof EmptyRecognizer))
- throw new RuntimeException ("deepClone");
- }
- }
-
- return retval;
- }
-
- // connect subgraphs, first to next (sequencing)
- private void patchNext (Recognizer theNext, Hashtable table)
- {
- // backpointers must not be repatched or followed
- if ((flags & F_LOOPNEXT) != 0)
- return;
-
- // XXX this table "shouldn't" be needed, right?
- // but some choice nodes looped if it isn't there.
- if (table != null && table.get (this) != null)
- return;
- if (table == null)
- table = new Hashtable ();
-
- // NAME/SEQUENCE
- if (name != null) {
- if (next == null)
- next = theNext;
- else if (next instanceof ChildrenRecognizer) {
- ((ChildrenRecognizer)next).patchNext (theNext, table);
- } else if (!(next instanceof EmptyRecognizer))
- throw new RuntimeException ("patchNext");
- return;
- }
-
- // CHOICE
- for (int i = 0; i < components.length; i++) {
- if (components [i] == null)
- components [i] = theNext;
- else if (components [i] instanceof ChildrenRecognizer) {
- ((ChildrenRecognizer)components [i])
- .patchNext (theNext, table);
- } else if (!(components [i] instanceof EmptyRecognizer))
- throw new RuntimeException ("patchNext");
- }
-
- if (table != null && (flags & F_LOOPHEAD) != 0)
- table.put (this, this);
- }
-
- /**
- * Parses a 'children' spec (or recursively 'cp') and makes this
- * become a regular graph node.
- *
- * @return index after this particle
- */
- private int populate (char parseBuf [], int startPos)
- {
- int nextPos = startPos + 1;
- char c;
-
- if (nextPos < 0 || nextPos >= parseBuf.length)
- throw new IndexOutOfBoundsException ();
-
- // Grammar of the string is from the XML spec, but
- // with whitespace removed by the SAX parser.
-
- // children ::= (choice | seq) ('?' | '*' | '+')?
- // cp ::= (Name | choice | seq) ('?' | '*' | '+')?
- // choice ::= '(' cp ('|' choice)* ')'
- // seq ::= '(' cp (',' choice)* ')'
-
- // interior nodes only
- // cp ::= name ...
- if (parseBuf [startPos] != '('/*)*/) {
- boolean done = false;
- do {
- switch (c = parseBuf [nextPos]) {
- case '?': case '*': case '+':
- case '|': case ',':
- case /*(*/ ')':
- done = true;
- continue;
- default:
- nextPos++;
- continue;
- }
- } while (!done);
- name = new String (parseBuf, startPos, nextPos - startPos);
-
- // interior OR toplevel nodes
- // cp ::= choice ..
- // cp ::= seq ..
- } else {
- // collect everything as a separate list, and merge it
- // into "this" later if we can (SEQUENCE or singleton)
- ChildrenRecognizer first;
-
- first = new ChildrenRecognizer (consumer, type);
- nextPos = first.populate (parseBuf, nextPos);
- c = parseBuf [nextPos++];
-
- if (c == ',' || c == '|') {
- ChildrenRecognizer current = first;
- char separator = c;
- Vector v = null;
-
- if (separator == '|') {
- v = new Vector ();
- v.addElement (first);
- }
-
- do {
- ChildrenRecognizer link;
-
- link = new ChildrenRecognizer (consumer, type);
- nextPos = link.populate (parseBuf, nextPos);
-
- if (separator == ',') {
- current.patchNext (link, null);
- current = link;
- } else
- v.addElement (link);
-
- c = parseBuf [nextPos++];
- } while (c == separator);
-
- // choice ... collect everything into one array.
- if (separator == '|') {
- // assert v.size() > 1
- components = new Recognizer [v.size ()];
- for (int i = 0; i < components.length; i++) {
- components [i] = (Recognizer)
- v.elementAt (i);
- }
- // assert flags == 0
-
- // sequence ... merge into "this" to be smaller.
- } else
- copyIn (first);
-
- // treat singletons like one-node sequences.
- } else
- copyIn (first);
-
- if (c != /*(*/ ')')
- throw new RuntimeException ("corrupt content model");
- }
-
- //
- // Arity is optional, and the root of all fun. We keep the
- // FSM state graph simple by only having NAME/SEQUENCE and
- // CHOICE nodes (or EMPTY to terminate a model), easily
- // evaluated. So we rewrite each node that has arity, using
- // those primitives. We create loops here, if needed.
- //
- if (nextPos < parseBuf.length) {
- c = parseBuf [nextPos];
- if (c == '?' || c == '*' || c == '+') {
- nextPos++;
-
- // Rewrite 'zero-or-one' "?" arity to a CHOICE:
- // - SEQUENCE (clone, what's next)
- // - or, what's next
- // Size cost: N --> N + 1
- if (c == '?') {
- Recognizer once = shallowClone ();
-
- components = new Recognizer [2];
- components [0] = once;
- // components [1] initted to null
- name = null;
- next = null;
- flags = 0;
-
-
- // Rewrite 'zero-or-more' "*" arity to a CHOICE.
- // - LOOP (clone, back to this CHOICE)
- // - or, what's next
- // Size cost: N --> N + 1
- } else if (c == '*') {
- ChildrenRecognizer loop = shallowClone ();
-
- loop.patchNext (this, null);
- loop.flags |= F_LOOPNEXT;
- flags = F_LOOPHEAD;
-
- components = new Recognizer [2];
- components [0] = loop;
- // components [1] initted to null
- name = null;
- next = null;
-
-
- // Rewrite 'one-or-more' "+" arity to a SEQUENCE.
- // Basically (a)+ --> ((a),(a)*).
- // - this
- // - CHOICE
- // * LOOP (clone, back to the CHOICE)
- // * or, whatever's next
- // Size cost: N --> 2N + 1
- } else if (c == '+') {
- ChildrenRecognizer loop = deepClone ();
- ChildrenRecognizer choice;
-
- choice = new ChildrenRecognizer (consumer, type);
- loop.patchNext (choice, null);
- loop.flags |= F_LOOPNEXT;
- choice.flags = F_LOOPHEAD;
-
- choice.components = new Recognizer [2];
- choice.components [0] = loop;
- // choice.components [1] initted to null
- // choice.name, choice.next initted to null
-
- patchNext (choice, null);
- }
- }
- }
-
- return nextPos;
- }
-
- // VC: Element Valid (second clause)
- boolean acceptCharacters ()
- { return false; }
-
- // VC: Element Valid (second clause)
- Recognizer acceptElement (String type)
- throws SAXException
- {
- // NAME/SEQUENCE
- if (name != null) {
- if (name.equals (type))
- return next;
- return null;
- }
-
- // CHOICE ... optionally reporting nondeterminism we
- // run across. we won't check out every transition
- // for nondeterminism; only the ones we follow.
- Recognizer retval = null;
-
- for (int i = 0; i < components.length; i++) {
- Recognizer temp = components [i].acceptElement (type);
-
- if (temp == null)
- continue;
- else if (!warnNonDeterministic)
- return temp;
- else if (retval == null)
- retval = temp;
- else if (retval != temp)
- consumer.error ("Content model " + this.type.model
- + " is non-deterministic for " + type);
- }
- return retval;
- }
-
- // VC: Element Valid (second clause)
- boolean completed ()
- throws SAXException
- {
- // expecting a specific element
- if (name != null)
- return false;
-
- // choice, some sequences
- for (int i = 0; i < components.length; i++) {
- if (components [i].completed ())
- return true;
- }
-
- return false;
- }
+ // for reporting non-deterministic content models
+ // ... a waste of space if we're not reporting those!
+ // ... along with the 'model' member (in base class)
+ private ValidationConsumer consumer;
+
+ // for CHOICE nodes -- each component is an arc that
+ // accepts a different NAME (or is EMPTY indicating
+ // NDFA termination).
+ private Recognizer components [];
+
+ // for NAME/SEQUENCE nodes -- accepts that NAME and
+ // then goes to the next node (CHOICE, NAME, EMPTY).
+ private String name;
+ private Recognizer next;
+
+ // loops always point back to a CHOICE node. we mark such choice
+ // nodes (F_LOOPHEAD) for diagnostics and faster deep cloning.
+ // We also mark nodes before back pointers (F_LOOPNEXT), to ensure
+ // termination when we patch sequences and loops.
+ private int flags;
+
+
+ // prevent a needless indirection between 'this' and 'node'
+ private void copyIn (ChildrenRecognizer node)
+ {
+ // model & consumer are already set
+ components = node.components;
+ name = node.name;
+ next = node.next;
+ flags = node.flags;
+ }
+
+ // used to construct top level "children" content models,
+ public ChildrenRecognizer (ElementInfo type, ValidationConsumer vc)
+ {
+ this (vc, type);
+ populate (type.model.toCharArray (), 0);
+ patchNext (new EmptyRecognizer (type), null);
+ }
+
+ // used internally; populating is separate
+ private ChildrenRecognizer (ValidationConsumer vc, ElementInfo type)
+ {
+ super (type);
+ consumer = vc;
+ }
+
+
+ //
+ // When rewriting some graph nodes we need deep clones in one case;
+ // mostly shallow clones (what the JVM handles for us) are fine.
+ //
+ private ChildrenRecognizer shallowClone ()
+ {
+ try {
+ return (ChildrenRecognizer) clone ();
+ } catch (CloneNotSupportedException e) {
+ throw new Error ("clone");
+ }
+ }
+
+ private ChildrenRecognizer deepClone ()
+ {
+ return deepClone (new Hashtable (37));
+ }
+
+ private ChildrenRecognizer deepClone (Hashtable table)
+ {
+ ChildrenRecognizer retval;
+
+ if ((flags & F_LOOPHEAD) != 0) {
+ retval = (ChildrenRecognizer) table.get (this);
+ if (retval != null)
+ return this;
+
+ retval = shallowClone ();
+ table.put (this, retval);
+ } else
+ retval = shallowClone ();
+
+ if (next != null) {
+ if (next instanceof ChildrenRecognizer)
+ retval.next = ((ChildrenRecognizer)next)
+ .deepClone (table);
+ else if (!(next instanceof EmptyRecognizer))
+ throw new RuntimeException ("deepClone");
+ }
+
+ if (components != null) {
+ retval.components = new Recognizer [components.length];
+ for (int i = 0; i < components.length; i++) {
+ Recognizer temp = components [i];
+
+ if (temp == null)
+ retval.components [i] = null;
+ else if (temp instanceof ChildrenRecognizer)
+ retval.components [i] = ((ChildrenRecognizer)temp)
+ .deepClone (table);
+ else if (!(temp instanceof EmptyRecognizer))
+ throw new RuntimeException ("deepClone");
+ }
+ }
+
+ return retval;
+ }
+
+ // connect subgraphs, first to next (sequencing)
+ private void patchNext (Recognizer theNext, Hashtable table)
+ {
+ // backpointers must not be repatched or followed
+ if ((flags & F_LOOPNEXT) != 0)
+ return;
+
+ // XXX this table "shouldn't" be needed, right?
+ // but some choice nodes looped if it isn't there.
+ if (table != null && table.get (this) != null)
+ return;
+ if (table == null)
+ table = new Hashtable ();
+
+ // NAME/SEQUENCE
+ if (name != null) {
+ if (next == null)
+ next = theNext;
+ else if (next instanceof ChildrenRecognizer) {
+ ((ChildrenRecognizer)next).patchNext (theNext, table);
+ } else if (!(next instanceof EmptyRecognizer))
+ throw new RuntimeException ("patchNext");
+ return;
+ }
+
+ // CHOICE
+ for (int i = 0; i < components.length; i++) {
+ if (components [i] == null)
+ components [i] = theNext;
+ else if (components [i] instanceof ChildrenRecognizer) {
+ ((ChildrenRecognizer)components [i])
+ .patchNext (theNext, table);
+ } else if (!(components [i] instanceof EmptyRecognizer))
+ throw new RuntimeException ("patchNext");
+ }
+
+ if (table != null && (flags & F_LOOPHEAD) != 0)
+ table.put (this, this);
+ }
+
+ /**
+ * Parses a 'children' spec (or recursively 'cp') and makes this
+ * become a regular graph node.
+ *
+ * @return index after this particle
+ */
+ private int populate (char parseBuf [], int startPos)
+ {
+ int nextPos = startPos + 1;
+ char c;
+
+ if (nextPos < 0 || nextPos >= parseBuf.length)
+ throw new IndexOutOfBoundsException ();
+
+ // Grammar of the string is from the XML spec, but
+ // with whitespace removed by the SAX parser.
+
+ // children ::= (choice | seq) ('?' | '*' | '+')?
+ // cp ::= (Name | choice | seq) ('?' | '*' | '+')?
+ // choice ::= '(' cp ('|' choice)* ')'
+ // seq ::= '(' cp (',' choice)* ')'
+
+ // interior nodes only
+ // cp ::= name ...
+ if (parseBuf [startPos] != '('/*)*/) {
+ boolean done = false;
+ do {
+ switch (c = parseBuf [nextPos]) {
+ case '?': case '*': case '+':
+ case '|': case ',':
+ case /*(*/ ')':
+ done = true;
+ continue;
+ default:
+ nextPos++;
+ continue;
+ }
+ } while (!done);
+ name = new String (parseBuf, startPos, nextPos - startPos);
+
+ // interior OR toplevel nodes
+ // cp ::= choice ..
+ // cp ::= seq ..
+ } else {
+ // collect everything as a separate list, and merge it
+ // into "this" later if we can (SEQUENCE or singleton)
+ ChildrenRecognizer first;
+
+ first = new ChildrenRecognizer (consumer, type);
+ nextPos = first.populate (parseBuf, nextPos);
+ c = parseBuf [nextPos++];
+
+ if (c == ',' || c == '|') {
+ ChildrenRecognizer current = first;
+ char separator = c;
+ Vector v = null;
+
+ if (separator == '|') {
+ v = new Vector ();
+ v.addElement (first);
+ }
+
+ do {
+ ChildrenRecognizer link;
+
+ link = new ChildrenRecognizer (consumer, type);
+ nextPos = link.populate (parseBuf, nextPos);
+
+ if (separator == ',') {
+ current.patchNext (link, null);
+ current = link;
+ } else
+ v.addElement (link);
+
+ c = parseBuf [nextPos++];
+ } while (c == separator);
+
+ // choice ... collect everything into one array.
+ if (separator == '|') {
+ // assert v.size() > 1
+ components = new Recognizer [v.size ()];
+ for (int i = 0; i < components.length; i++) {
+ components [i] = (Recognizer)
+ v.elementAt (i);
+ }
+ // assert flags == 0
+
+ // sequence ... merge into "this" to be smaller.
+ } else
+ copyIn (first);
+
+ // treat singletons like one-node sequences.
+ } else
+ copyIn (first);
+
+ if (c != /*(*/ ')')
+ throw new RuntimeException ("corrupt content model");
+ }
+
+ //
+ // Arity is optional, and the root of all fun. We keep the
+ // FSM state graph simple by only having NAME/SEQUENCE and
+ // CHOICE nodes (or EMPTY to terminate a model), easily
+ // evaluated. So we rewrite each node that has arity, using
+ // those primitives. We create loops here, if needed.
+ //
+ if (nextPos < parseBuf.length) {
+ c = parseBuf [nextPos];
+ if (c == '?' || c == '*' || c == '+') {
+ nextPos++;
+
+ // Rewrite 'zero-or-one' "?" arity to a CHOICE:
+ // - SEQUENCE (clone, what's next)
+ // - or, what's next
+ // Size cost: N --> N + 1
+ if (c == '?') {
+ Recognizer once = shallowClone ();
+
+ components = new Recognizer [2];
+ components [0] = once;
+ // components [1] initted to null
+ name = null;
+ next = null;
+ flags = 0;
+
+
+ // Rewrite 'zero-or-more' "*" arity to a CHOICE.
+ // - LOOP (clone, back to this CHOICE)
+ // - or, what's next
+ // Size cost: N --> N + 1
+ } else if (c == '*') {
+ ChildrenRecognizer loop = shallowClone ();
+
+ loop.patchNext (this, null);
+ loop.flags |= F_LOOPNEXT;
+ flags = F_LOOPHEAD;
+
+ components = new Recognizer [2];
+ components [0] = loop;
+ // components [1] initted to null
+ name = null;
+ next = null;
+
+
+ // Rewrite 'one-or-more' "+" arity to a SEQUENCE.
+ // Basically (a)+ --> ((a),(a)*).
+ // - this
+ // - CHOICE
+ // * LOOP (clone, back to the CHOICE)
+ // * or, whatever's next
+ // Size cost: N --> 2N + 1
+ } else if (c == '+') {
+ ChildrenRecognizer loop = deepClone ();
+ ChildrenRecognizer choice;
+
+ choice = new ChildrenRecognizer (consumer, type);
+ loop.patchNext (choice, null);
+ loop.flags |= F_LOOPNEXT;
+ choice.flags = F_LOOPHEAD;
+
+ choice.components = new Recognizer [2];
+ choice.components [0] = loop;
+ // choice.components [1] initted to null
+ // choice.name, choice.next initted to null
+
+ patchNext (choice, null);
+ }
+ }
+ }
+
+ return nextPos;
+ }
+
+ // VC: Element Valid (second clause)
+ boolean acceptCharacters ()
+ { return false; }
+
+ // VC: Element Valid (second clause)
+ Recognizer acceptElement (String type)
+ throws SAXException
+ {
+ // NAME/SEQUENCE
+ if (name != null) {
+ if (name.equals (type))
+ return next;
+ return null;
+ }
+
+ // CHOICE ... optionally reporting nondeterminism we
+ // run across. we won't check out every transition
+ // for nondeterminism; only the ones we follow.
+ Recognizer retval = null;
+
+ for (int i = 0; i < components.length; i++) {
+ Recognizer temp = components [i].acceptElement (type);
+
+ if (temp == null)
+ continue;
+ else if (!warnNonDeterministic)
+ return temp;
+ else if (retval == null)
+ retval = temp;
+ else if (retval != temp)
+ consumer.error ("Content model " + this.type.model
+ + " is non-deterministic for " + type);
+ }
+ return retval;
+ }
+
+ // VC: Element Valid (second clause)
+ boolean completed ()
+ throws SAXException
+ {
+ // expecting a specific element
+ if (name != null)
+ return false;
+
+ // choice, some sequences
+ for (int i = 0; i < components.length; i++) {
+ if (components [i].completed ())
+ return true;
+ }
+
+ return false;
+ }
/** /
- // FOR DEBUGGING ... flattens the graph for printing.
-
- public String toString ()
- {
- StringBuffer buf = new StringBuffer ();
-
- // only one set of loop labels can be generated
- // at a time...
- synchronized (ANY) {
- nodeCount = 0;
-
- toString (buf, new Hashtable ());
- return buf.toString ();
- }
- }
-
- private void toString (StringBuffer buf, Hashtable table)
- {
- // When we visit a node, label and count it.
- // Nodes are never visited/counted more than once.
- // For small models labels waste space, but if arity
- // mappings were used the savings are substantial.
- // (Plus, the output can be more readily understood.)
- String temp = (String) table.get (this);
-
- if (temp != null) {
- buf.append ('{');
- buf.append (temp);
- buf.append ('}');
- return;
- } else {
- StringBuffer scratch = new StringBuffer (15);
-
- if ((flags & F_LOOPHEAD) != 0)
- scratch.append ("loop");
- else
- scratch.append ("node");
- scratch.append ('-');
- scratch.append (++nodeCount);
- temp = scratch.toString ();
-
- table.put (this, temp);
- buf.append ('[');
- buf.append (temp);
- buf.append (']');
- buf.append (':');
- }
-
- // NAME/SEQUENCE
- if (name != null) {
- // n.b. some output encodings turn some name chars into '?'
- // e.g. with Japanese names and ASCII output
- buf.append (name);
- if (components != null) // bug!
- buf.append ('$');
- if (next == null)
- buf.append (",*");
- else if (next instanceof EmptyRecognizer) // patch-to-next
- buf.append (",{}");
- else if (next instanceof ChildrenRecognizer) {
- buf.append (',');
- ((ChildrenRecognizer)next).toString (buf, table);
- } else // bug!
- buf.append (",+");
- return;
- }
-
- // CHOICE
- buf.append ("<");
- for (int i = 0; i < components.length; i++) {
- if (i != 0)
- buf.append ("|");
- if (components [i] instanceof EmptyRecognizer) {
- buf.append ("{}");
- } else if (components [i] == null) { // patch-to-next
- buf.append ('*');
- } else {
- ChildrenRecognizer r;
-
- r = (ChildrenRecognizer) components [i];
- r.toString (buf, table);
- }
- }
- buf.append (">");
- }
+ // FOR DEBUGGING ... flattens the graph for printing.
+
+ public String toString ()
+ {
+ StringBuffer buf = new StringBuffer ();
+
+ // only one set of loop labels can be generated
+ // at a time...
+ synchronized (ANY) {
+ nodeCount = 0;
+
+ toString (buf, new Hashtable ());
+ return buf.toString ();
+ }
+ }
+
+ private void toString (StringBuffer buf, Hashtable table)
+ {
+ // When we visit a node, label and count it.
+ // Nodes are never visited/counted more than once.
+ // For small models labels waste space, but if arity
+ // mappings were used the savings are substantial.
+ // (Plus, the output can be more readily understood.)
+ String temp = (String) table.get (this);
+
+ if (temp != null) {
+ buf.append ('{');
+ buf.append (temp);
+ buf.append ('}');
+ return;
+ } else {
+ StringBuffer scratch = new StringBuffer (15);
+
+ if ((flags & F_LOOPHEAD) != 0)
+ scratch.append ("loop");
+ else
+ scratch.append ("node");
+ scratch.append ('-');
+ scratch.append (++nodeCount);
+ temp = scratch.toString ();
+
+ table.put (this, temp);
+ buf.append ('[');
+ buf.append (temp);
+ buf.append (']');
+ buf.append (':');
+ }
+
+ // NAME/SEQUENCE
+ if (name != null) {
+ // n.b. some output encodings turn some name chars into '?'
+ // e.g. with Japanese names and ASCII output
+ buf.append (name);
+ if (components != null) // bug!
+ buf.append ('$');
+ if (next == null)
+ buf.append (",*");
+ else if (next instanceof EmptyRecognizer) // patch-to-next
+ buf.append (",{}");
+ else if (next instanceof ChildrenRecognizer) {
+ buf.append (',');
+ ((ChildrenRecognizer)next).toString (buf, table);
+ } else // bug!
+ buf.append (",+");
+ return;
+ }
+
+ // CHOICE
+ buf.append ("<");
+ for (int i = 0; i < components.length; i++) {
+ if (i != 0)
+ buf.append ("|");
+ if (components [i] instanceof EmptyRecognizer) {
+ buf.append ("{}");
+ } else if (components [i] == null) { // patch-to-next
+ buf.append ('*');
+ } else {
+ ChildrenRecognizer r;
+
+ r = (ChildrenRecognizer) components [i];
+ r.toString (buf, table);
+ }
+ }
+ buf.append (">");
+ }
/**/
}
}
diff --git a/libjava/classpath/gnu/xml/pipeline/WellFormednessFilter.java b/libjava/classpath/gnu/xml/pipeline/WellFormednessFilter.java
index ef430165203..7a3db6593fd 100644
--- a/libjava/classpath/gnu/xml/pipeline/WellFormednessFilter.java
+++ b/libjava/classpath/gnu/xml/pipeline/WellFormednessFilter.java
@@ -1,4 +1,4 @@
-/* WellFormednessFilter.java --
+/* WellFormednessFilter.java --
Copyright (C) 1999,2000,2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -50,27 +50,27 @@ import org.xml.sax.SAXParseException;
* This filter reports fatal exceptions in the case of event streams that
* are not well formed. The rules currently tested include: <ul>
*
- * <li>setDocumentLocator ... may be called only before startDocument
+ * <li>setDocumentLocator ... may be called only before startDocument
*
- * <li>startDocument/endDocument ... must be paired, and all other
- * calls (except setDocumentLocator) must be nested within these.
+ * <li>startDocument/endDocument ... must be paired, and all other
+ * calls (except setDocumentLocator) must be nested within these.
*
- * <li>startElement/endElement ... must be correctly paired, and
- * may never appear within CDATA sections.
+ * <li>startElement/endElement ... must be correctly paired, and
+ * may never appear within CDATA sections.
*
- * <li>comment ... can't contain "--"
+ * <li>comment ... can't contain "--"
*
- * <li>character data ... can't contain "]]&gt;"
+ * <li>character data ... can't contain "]]&gt;"
*
- * <li>whitespace ... can't contain CR
+ * <li>whitespace ... can't contain CR
*
- * <li>whitespace and character data must be within an element
+ * <li>whitespace and character data must be within an element
*
- * <li>processing instruction ... can't contain "?&gt;" or CR
+ * <li>processing instruction ... can't contain "?&gt;" or CR
*
- * <li>startCDATA/endCDATA ... must be correctly paired.
+ * <li>startCDATA/endCDATA ... must be correctly paired.
*
- * </ul>
+ * </ul>
*
* <p> Other checks for event stream correctness may be provided in
* the future. For example, insisting that
@@ -84,35 +84,35 @@ import org.xml.sax.SAXParseException;
*/
public final class WellFormednessFilter extends EventFilter
{
- private boolean startedDoc;
- private Stack elementStack = new Stack ();
- private boolean startedCDATA;
- private String dtdState = "before";
+ private boolean startedDoc;
+ private Stack elementStack = new Stack ();
+ private boolean startedCDATA;
+ private String dtdState = "before";
+
-
/**
* Swallows all events after performing well formedness checks.
*/
- // constructor used by PipelineFactory
+ // constructor used by PipelineFactory
public WellFormednessFilter ()
- { this (null); }
+ { this (null); }
/**
* Passes events through to the specified consumer, after first
* processing them.
*/
- // constructor used by PipelineFactory
+ // constructor used by PipelineFactory
public WellFormednessFilter (EventConsumer consumer)
{
- super (consumer);
-
- setContentHandler (this);
- setDTDHandler (this);
-
- try {
- setProperty (LEXICAL_HANDLER, this);
- } catch (SAXException e) { /* can't happen */ }
+ super (consumer);
+
+ setContentHandler (this);
+ setDTDHandler (this);
+
+ try {
+ setProperty (LEXICAL_HANDLER, this);
+ } catch (SAXException e) { /* can't happen */ }
}
/**
@@ -122,123 +122,123 @@ public final class WellFormednessFilter extends EventFilter
*/
public void reset ()
{
- startedDoc = false;
- startedCDATA = false;
- elementStack.removeAllElements ();
+ startedDoc = false;
+ startedCDATA = false;
+ elementStack.removeAllElements ();
}
private SAXParseException getException (String message)
{
- SAXParseException e;
- Locator locator = getDocumentLocator ();
+ SAXParseException e;
+ Locator locator = getDocumentLocator ();
- if (locator == null)
- return new SAXParseException (message, null, null, -1, -1);
- else
- return new SAXParseException (message, locator);
+ if (locator == null)
+ return new SAXParseException (message, null, null, -1, -1);
+ else
+ return new SAXParseException (message, locator);
}
private void fatalError (String message)
throws SAXException
{
- SAXParseException e = getException (message);
- ErrorHandler handler = getErrorHandler ();
+ SAXParseException e = getException (message);
+ ErrorHandler handler = getErrorHandler ();
- if (handler != null)
- handler.fatalError (e);
- throw e;
+ if (handler != null)
+ handler.fatalError (e);
+ throw e;
}
/**
* Throws an exception when called after startDocument.
*
* @param locator the locator, to be used in error reporting or relative
- * URI resolution.
+ * URI resolution.
*
* @exception IllegalStateException when called after the document
- * has already been started
+ * has already been started
*/
public void setDocumentLocator (Locator locator)
{
- if (startedDoc)
- throw new IllegalStateException (
- "setDocumentLocator called after startDocument");
- super.setDocumentLocator (locator);
+ if (startedDoc)
+ throw new IllegalStateException (
+ "setDocumentLocator called after startDocument");
+ super.setDocumentLocator (locator);
}
public void startDocument () throws SAXException
{
- if (startedDoc)
- fatalError ("startDocument called more than once");
- startedDoc = true;
- startedCDATA = false;
- elementStack.removeAllElements ();
- super.startDocument ();
+ if (startedDoc)
+ fatalError ("startDocument called more than once");
+ startedDoc = true;
+ startedCDATA = false;
+ elementStack.removeAllElements ();
+ super.startDocument ();
}
public void startElement (
- String uri, String localName,
- String qName, Attributes atts
+ String uri, String localName,
+ String qName, Attributes atts
) throws SAXException
{
- if (!startedDoc)
- fatalError ("callback outside of document?");
- if ("inside".equals (dtdState))
- fatalError ("element inside DTD?");
- else
- dtdState = "after";
- if (startedCDATA)
- fatalError ("element inside CDATA section");
- if (qName == null || "".equals (qName))
- fatalError ("startElement name missing");
- elementStack.push (qName);
- super.startElement (uri, localName, qName, atts);
+ if (!startedDoc)
+ fatalError ("callback outside of document?");
+ if ("inside".equals (dtdState))
+ fatalError ("element inside DTD?");
+ else
+ dtdState = "after";
+ if (startedCDATA)
+ fatalError ("element inside CDATA section");
+ if (qName == null || "".equals (qName))
+ fatalError ("startElement name missing");
+ elementStack.push (qName);
+ super.startElement (uri, localName, qName, atts);
}
public void endElement (String uri, String localName, String qName)
throws SAXException
{
- if (!startedDoc)
- fatalError ("callback outside of document?");
- if (startedCDATA)
- fatalError ("element inside CDATA section");
- if (qName == null || "".equals (qName))
- fatalError ("endElement name missing");
-
- try {
- String top = (String) elementStack.pop ();
-
- if (!qName.equals (top))
- fatalError ("<" + top + " ...>...</" + qName + ">");
- // XXX could record/test namespace info
- } catch (EmptyStackException e) {
- fatalError ("endElement without startElement: </" + qName + ">");
- }
- super.endElement (uri, localName, qName);
+ if (!startedDoc)
+ fatalError ("callback outside of document?");
+ if (startedCDATA)
+ fatalError ("element inside CDATA section");
+ if (qName == null || "".equals (qName))
+ fatalError ("endElement name missing");
+
+ try {
+ String top = (String) elementStack.pop ();
+
+ if (!qName.equals (top))
+ fatalError ("<" + top + " ...>...</" + qName + ">");
+ // XXX could record/test namespace info
+ } catch (EmptyStackException e) {
+ fatalError ("endElement without startElement: </" + qName + ">");
+ }
+ super.endElement (uri, localName, qName);
}
public void endDocument () throws SAXException
{
- if (!startedDoc)
- fatalError ("callback outside of document?");
- dtdState = "before";
- startedDoc = false;
- super.endDocument ();
+ if (!startedDoc)
+ fatalError ("callback outside of document?");
+ dtdState = "before";
+ startedDoc = false;
+ super.endDocument ();
}
public void startDTD (String root, String publicId, String systemId)
throws SAXException
{
- if (!startedDoc)
- fatalError ("callback outside of document?");
+ if (!startedDoc)
+ fatalError ("callback outside of document?");
if ("before" != dtdState)
- fatalError ("two DTDs?");
- if (!elementStack.empty ())
- fatalError ("DTD must precede root element");
- dtdState = "inside";
- super.startDTD (root, publicId, systemId);
+ fatalError ("two DTDs?");
+ if (!elementStack.empty ())
+ fatalError ("DTD must precede root element");
+ dtdState = "inside";
+ super.startDTD (root, publicId, systemId);
}
public void notationDecl (String name, String publicId, String systemId)
@@ -247,19 +247,19 @@ public final class WellFormednessFilter extends EventFilter
// FIXME: not all parsers will report startDTD() ...
// we'd rather insist we're "inside".
if ("after" == dtdState)
- fatalError ("not inside DTD");
- super.notationDecl (name, publicId, systemId);
+ fatalError ("not inside DTD");
+ super.notationDecl (name, publicId, systemId);
}
public void unparsedEntityDecl (String name,
- String publicId, String systemId, String notationName)
+ String publicId, String systemId, String notationName)
throws SAXException
{
// FIXME: not all parsers will report startDTD() ...
// we'd rather insist we're "inside".
if ("after" == dtdState)
- fatalError ("not inside DTD");
- super.unparsedEntityDecl (name, publicId, systemId, notationName);
+ fatalError ("not inside DTD");
+ super.unparsedEntityDecl (name, publicId, systemId, notationName);
}
// FIXME: add the four DeclHandler calls too
@@ -267,97 +267,97 @@ public final class WellFormednessFilter extends EventFilter
public void endDTD ()
throws SAXException
{
- if (!startedDoc)
- fatalError ("callback outside of document?");
- if ("inside" != dtdState)
- fatalError ("DTD ends without start?");
- dtdState = "after";
- super.endDTD ();
+ if (!startedDoc)
+ fatalError ("callback outside of document?");
+ if ("inside" != dtdState)
+ fatalError ("DTD ends without start?");
+ dtdState = "after";
+ super.endDTD ();
}
public void characters (char ch [], int start, int length)
throws SAXException
{
- int here = start, end = start + length;
- if (elementStack.empty ())
- fatalError ("characters must be in an element");
- while (here < end) {
- if (ch [here++] != ']')
- continue;
- if (here == end) // potential problem ...
- continue;
- if (ch [here++] != ']')
- continue;
- if (here == end) // potential problem ...
- continue;
- if (ch [here++] == '>')
- fatalError ("character data can't contain \"]]>\"");
- }
- super.characters (ch, start, length);
+ int here = start, end = start + length;
+ if (elementStack.empty ())
+ fatalError ("characters must be in an element");
+ while (here < end) {
+ if (ch [here++] != ']')
+ continue;
+ if (here == end) // potential problem ...
+ continue;
+ if (ch [here++] != ']')
+ continue;
+ if (here == end) // potential problem ...
+ continue;
+ if (ch [here++] == '>')
+ fatalError ("character data can't contain \"]]>\"");
+ }
+ super.characters (ch, start, length);
}
public void ignorableWhitespace (char ch [], int start, int length)
throws SAXException
{
- int here = start, end = start + length;
- if (elementStack.empty ())
- fatalError ("characters must be in an element");
- while (here < end) {
- if (ch [here++] == '\r')
- fatalError ("whitespace can't contain CR");
- }
- super.ignorableWhitespace (ch, start, length);
+ int here = start, end = start + length;
+ if (elementStack.empty ())
+ fatalError ("characters must be in an element");
+ while (here < end) {
+ if (ch [here++] == '\r')
+ fatalError ("whitespace can't contain CR");
+ }
+ super.ignorableWhitespace (ch, start, length);
}
public void processingInstruction (String target, String data)
throws SAXException
{
- if (data.indexOf ('\r') > 0)
- fatalError ("PIs can't contain CR");
- if (data.indexOf ("?>") > 0)
- fatalError ("PIs can't contain \"?>\"");
+ if (data.indexOf ('\r') > 0)
+ fatalError ("PIs can't contain CR");
+ if (data.indexOf ("?>") > 0)
+ fatalError ("PIs can't contain \"?>\"");
}
public void comment (char ch [], int start, int length)
throws SAXException
{
- if (!startedDoc)
- fatalError ("callback outside of document?");
- if (startedCDATA)
- fatalError ("comments can't nest in CDATA");
- int here = start, end = start + length;
- while (here < end) {
- if (ch [here] == '\r')
- fatalError ("comments can't contain CR");
- if (ch [here++] != '-')
- continue;
- if (here == end)
- fatalError ("comments can't end with \"--->\"");
- if (ch [here++] == '-')
- fatalError ("comments can't contain \"--\"");
- }
- super.comment (ch, start, length);
+ if (!startedDoc)
+ fatalError ("callback outside of document?");
+ if (startedCDATA)
+ fatalError ("comments can't nest in CDATA");
+ int here = start, end = start + length;
+ while (here < end) {
+ if (ch [here] == '\r')
+ fatalError ("comments can't contain CR");
+ if (ch [here++] != '-')
+ continue;
+ if (here == end)
+ fatalError ("comments can't end with \"--->\"");
+ if (ch [here++] == '-')
+ fatalError ("comments can't contain \"--\"");
+ }
+ super.comment (ch, start, length);
}
public void startCDATA ()
throws SAXException
{
- if (!startedDoc)
- fatalError ("callback outside of document?");
- if (startedCDATA)
- fatalError ("CDATA starts can't nest");
- startedCDATA = true;
- super.startCDATA ();
+ if (!startedDoc)
+ fatalError ("callback outside of document?");
+ if (startedCDATA)
+ fatalError ("CDATA starts can't nest");
+ startedCDATA = true;
+ super.startCDATA ();
}
public void endCDATA ()
throws SAXException
{
- if (!startedDoc)
- fatalError ("callback outside of document?");
- if (!startedCDATA)
- fatalError ("CDATA end without start?");
- startedCDATA = false;
- super.endCDATA ();
+ if (!startedDoc)
+ fatalError ("callback outside of document?");
+ if (!startedCDATA)
+ fatalError ("CDATA end without start?");
+ startedCDATA = false;
+ super.endCDATA ();
}
}
diff --git a/libjava/classpath/gnu/xml/pipeline/XIncludeFilter.java b/libjava/classpath/gnu/xml/pipeline/XIncludeFilter.java
index 02607a4e06d..a1445fa0cc7 100644
--- a/libjava/classpath/gnu/xml/pipeline/XIncludeFilter.java
+++ b/libjava/classpath/gnu/xml/pipeline/XIncludeFilter.java
@@ -1,4 +1,4 @@
-/* XIncludeFilter.java --
+/* XIncludeFilter.java --
Copyright (C) 2001,2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,8 +40,8 @@ package gnu.xml.pipeline;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
-import java.net.URL;
-import java.net.URLConnection;
+import java.net.URL;
+import java.net.URLConnection;
import java.util.Hashtable;
import java.util.Stack;
import java.util.Vector;
@@ -77,7 +77,7 @@ import gnu.xml.util.Resolver;
* currently supported.
*
* <li> DTDs are not supported in included files, since the SAX DTD events
- * must have completely preceded any included file.
+ * must have completely preceded any included file.
* The CR explicitly allows the DTD related portions of the infoset to
* grow as an effect of including XML documents.
*
@@ -101,33 +101,33 @@ import gnu.xml.util.Resolver;
*/
public class XIncludeFilter extends EventFilter implements Locator
{
- private Hashtable extEntities = new Hashtable (5, 5);
- private int ignoreCount;
- private Stack uris = new Stack ();
- private Locator locator;
- private Vector inclusions = new Vector (5, 5);
- private boolean savingPrefixes;
+ private Hashtable extEntities = new Hashtable (5, 5);
+ private int ignoreCount;
+ private Stack uris = new Stack ();
+ private Locator locator;
+ private Vector inclusions = new Vector (5, 5);
+ private boolean savingPrefixes;
/**
*/
public XIncludeFilter (EventConsumer next)
throws SAXException
{
- super (next);
- setContentHandler (this);
- // DTDHandler callbacks pass straight through
- setProperty (DECL_HANDLER, this);
- setProperty (LEXICAL_HANDLER, this);
+ super (next);
+ setContentHandler (this);
+ // DTDHandler callbacks pass straight through
+ setProperty (DECL_HANDLER, this);
+ setProperty (LEXICAL_HANDLER, this);
}
private void fatal (SAXParseException e) throws SAXException
{
- ErrorHandler eh;
-
- eh = getErrorHandler ();
- if (eh != null)
- eh.fatalError (e);
- throw e;
+ ErrorHandler eh;
+
+ eh = getErrorHandler ();
+ if (eh != null)
+ eh.fatalError (e);
+ throw e;
}
/**
@@ -135,29 +135,29 @@ public class XIncludeFilter extends EventFilter implements Locator
*/
public void setDocumentLocator (Locator locator)
{
- this.locator = locator;
- super.setDocumentLocator (this);
+ this.locator = locator;
+ super.setDocumentLocator (this);
}
/** Used for proxy locator; do not call directly. */
public String getSystemId ()
- { return (locator == null) ? null : locator.getSystemId (); }
+ { return (locator == null) ? null : locator.getSystemId (); }
/** Used for proxy locator; do not call directly. */
public String getPublicId ()
- { return (locator == null) ? null : locator.getPublicId (); }
+ { return (locator == null) ? null : locator.getPublicId (); }
/** Used for proxy locator; do not call directly. */
public int getLineNumber ()
- { return (locator == null) ? -1 : locator.getLineNumber (); }
+ { return (locator == null) ? -1 : locator.getLineNumber (); }
/** Used for proxy locator; do not call directly. */
public int getColumnNumber ()
- { return (locator == null) ? -1 : locator.getColumnNumber (); }
+ { return (locator == null) ? -1 : locator.getColumnNumber (); }
/**
* Assigns the flag controlling the setting of the SAX2
* <em>namespace-prefixes</em> flag.
*/
public void setSavingPrefixes (boolean flag)
- { savingPrefixes = flag; }
+ { savingPrefixes = flag; }
/**
* Returns the flag controlling the setting of the SAX2
@@ -166,49 +166,49 @@ public class XIncludeFilter extends EventFilter implements Locator
* information that can be useful.
*/
public boolean isSavingPrefixes ()
- { return savingPrefixes; }
+ { return savingPrefixes; }
//
// Two mechanisms are interacting here.
- //
- // - XML Base implies a stack of base URIs, updated both by
- // "real entity" boundaries and element boundaries.
//
- // - Active "Real Entities" (for document and general entities,
- // and by xincluded files) are tracked to prevent circular
- // inclusions.
+ // - XML Base implies a stack of base URIs, updated both by
+ // "real entity" boundaries and element boundaries.
+ //
+ // - Active "Real Entities" (for document and general entities,
+ // and by xincluded files) are tracked to prevent circular
+ // inclusions.
//
private String addMarker (String uri)
throws SAXException
{
- if (locator != null && locator.getSystemId () != null)
- uri = locator.getSystemId ();
-
- // guard against InputSource objects without system IDs
- if (uri == null)
- fatal (new SAXParseException ("Entity URI is unknown", locator));
-
- try {
- URL url = new URL (uri);
-
- uri = url.toString ();
- if (inclusions.contains (uri))
- fatal (new SAXParseException (
- "XInclude, circular inclusion", locator));
- inclusions.addElement (uri);
- uris.push (url);
- } catch (IOException e) {
- // guard against illegal relative URIs (Xerces)
- fatal (new SAXParseException ("parser bug: relative URI",
- locator, e));
- }
- return uri;
+ if (locator != null && locator.getSystemId () != null)
+ uri = locator.getSystemId ();
+
+ // guard against InputSource objects without system IDs
+ if (uri == null)
+ fatal (new SAXParseException ("Entity URI is unknown", locator));
+
+ try {
+ URL url = new URL (uri);
+
+ uri = url.toString ();
+ if (inclusions.contains (uri))
+ fatal (new SAXParseException (
+ "XInclude, circular inclusion", locator));
+ inclusions.addElement (uri);
+ uris.push (url);
+ } catch (IOException e) {
+ // guard against illegal relative URIs (Xerces)
+ fatal (new SAXParseException ("parser bug: relative URI",
+ locator, e));
+ }
+ return uri;
}
private void pop (String uri)
{
- inclusions.removeElement (uri);
- uris.pop ();
+ inclusions.removeElement (uri);
+ uris.pop ();
}
//
@@ -216,66 +216,66 @@ public class XIncludeFilter extends EventFilter implements Locator
//
public void startDocument () throws SAXException
{
- ignoreCount = 0;
- addMarker (null);
- super.startDocument ();
+ ignoreCount = 0;
+ addMarker (null);
+ super.startDocument ();
}
public void endDocument () throws SAXException
{
- inclusions.setSize (0);
- extEntities.clear ();
- uris.setSize (0);
- super.endDocument ();
+ inclusions.setSize (0);
+ extEntities.clear ();
+ uris.setSize (0);
+ super.endDocument ();
}
//
// External general entity boundaries get both treatments.
//
public void externalEntityDecl (String name,
- String publicId, String systemId)
+ String publicId, String systemId)
throws SAXException
{
- if (name.charAt (0) == '%')
- return;
- try {
- URL url = new URL (locator.getSystemId ());
- systemId = new URL (url, systemId).toString ();
- } catch (IOException e) {
- // what could we do?
- }
- extEntities.put (name, systemId);
+ if (name.charAt (0) == '%')
+ return;
+ try {
+ URL url = new URL (locator.getSystemId ());
+ systemId = new URL (url, systemId).toString ();
+ } catch (IOException e) {
+ // what could we do?
+ }
+ extEntities.put (name, systemId);
}
public void startEntity (String name)
throws SAXException
{
- if (ignoreCount != 0) {
- ignoreCount++;
- return;
- }
-
- String uri = (String) extEntities.get (name);
- if (uri != null)
- addMarker (uri);
- super.startEntity (name);
+ if (ignoreCount != 0) {
+ ignoreCount++;
+ return;
+ }
+
+ String uri = (String) extEntities.get (name);
+ if (uri != null)
+ addMarker (uri);
+ super.startEntity (name);
}
public void endEntity (String name)
throws SAXException
{
- if (ignoreCount != 0) {
- if (--ignoreCount != 0)
- return;
- }
+ if (ignoreCount != 0) {
+ if (--ignoreCount != 0)
+ return;
+ }
- String uri = (String) extEntities.get (name);
+ String uri = (String) extEntities.get (name);
- if (uri != null)
- pop (uri);
- super.endEntity (name);
+ if (uri != null)
+ pop (uri);
+ super.endEntity (name);
}
-
+
//
// element boundaries only affect the base URI stack,
// unless they're XInclude elements.
@@ -284,103 +284,103 @@ public class XIncludeFilter extends EventFilter implements Locator
startElement (String uri, String localName, String qName, Attributes atts)
throws SAXException
{
- if (ignoreCount != 0) {
- ignoreCount++;
- return;
- }
-
- URL baseURI = (URL) uris.peek ();
- String base;
-
- base = atts.getValue ("http://www.w3.org/XML/1998/namespace", "base");
- if (base == null)
- uris.push (baseURI);
- else {
- URL url;
-
- if (base.indexOf ('#') != -1)
- fatal (new SAXParseException (
- "xml:base with fragment: " + base,
- locator));
-
- try {
- baseURI = new URL (baseURI, base);
- uris.push (baseURI);
- } catch (Exception e) {
- fatal (new SAXParseException (
- "xml:base with illegal uri: " + base,
- locator, e));
- }
- }
-
- if (!"http://www.w3.org/2001/XInclude".equals (uri)) {
- super.startElement (uri, localName, qName, atts);
- return;
- }
-
- if ("include".equals (localName)) {
- String href = atts.getValue ("href");
- String parse = atts.getValue ("parse");
- String encoding = atts.getValue ("encoding");
- URL url = (URL) uris.peek ();
- SAXParseException x = null;
-
- if (href == null)
- fatal (new SAXParseException (
- "XInclude missing href",
- locator));
- if (href.indexOf ('#') != -1)
- fatal (new SAXParseException (
- "XInclude with fragment: " + href,
- locator));
-
- if (parse == null || "xml".equals (parse))
- x = xinclude (url, href);
- else if ("text".equals (parse))
- x = readText (url, href, encoding);
- else
- fatal (new SAXParseException (
- "unknown XInclude parsing mode: " + parse,
- locator));
- if (x == null) {
- // strip out all child content
- ignoreCount++;
- return;
- }
-
- // FIXME the 17-Sept-2002 CR of XInclude says we "must"
- // use xi:fallback elements to handle resource errors,
- // if they exist.
- fatal (x);
-
- } else if ("fallback".equals (localName)) {
- fatal (new SAXParseException (
- "illegal top level XInclude 'fallback' element",
- locator));
- } else {
- ErrorHandler eh = getErrorHandler ();
-
- // CR doesn't say this is an error
- if (eh != null)
- eh.warning (new SAXParseException (
- "unrecognized toplevel XInclude element: " + localName,
- locator));
- super.startElement (uri, localName, qName, atts);
- }
+ if (ignoreCount != 0) {
+ ignoreCount++;
+ return;
+ }
+
+ URL baseURI = (URL) uris.peek ();
+ String base;
+
+ base = atts.getValue ("http://www.w3.org/XML/1998/namespace", "base");
+ if (base == null)
+ uris.push (baseURI);
+ else {
+ URL url;
+
+ if (base.indexOf ('#') != -1)
+ fatal (new SAXParseException (
+ "xml:base with fragment: " + base,
+ locator));
+
+ try {
+ baseURI = new URL (baseURI, base);
+ uris.push (baseURI);
+ } catch (Exception e) {
+ fatal (new SAXParseException (
+ "xml:base with illegal uri: " + base,
+ locator, e));
+ }
+ }
+
+ if (!"http://www.w3.org/2001/XInclude".equals (uri)) {
+ super.startElement (uri, localName, qName, atts);
+ return;
+ }
+
+ if ("include".equals (localName)) {
+ String href = atts.getValue ("href");
+ String parse = atts.getValue ("parse");
+ String encoding = atts.getValue ("encoding");
+ URL url = (URL) uris.peek ();
+ SAXParseException x = null;
+
+ if (href == null)
+ fatal (new SAXParseException (
+ "XInclude missing href",
+ locator));
+ if (href.indexOf ('#') != -1)
+ fatal (new SAXParseException (
+ "XInclude with fragment: " + href,
+ locator));
+
+ if (parse == null || "xml".equals (parse))
+ x = xinclude (url, href);
+ else if ("text".equals (parse))
+ x = readText (url, href, encoding);
+ else
+ fatal (new SAXParseException (
+ "unknown XInclude parsing mode: " + parse,
+ locator));
+ if (x == null) {
+ // strip out all child content
+ ignoreCount++;
+ return;
+ }
+
+ // FIXME the 17-Sept-2002 CR of XInclude says we "must"
+ // use xi:fallback elements to handle resource errors,
+ // if they exist.
+ fatal (x);
+
+ } else if ("fallback".equals (localName)) {
+ fatal (new SAXParseException (
+ "illegal top level XInclude 'fallback' element",
+ locator));
+ } else {
+ ErrorHandler eh = getErrorHandler ();
+
+ // CR doesn't say this is an error
+ if (eh != null)
+ eh.warning (new SAXParseException (
+ "unrecognized toplevel XInclude element: " + localName,
+ locator));
+ super.startElement (uri, localName, qName, atts);
+ }
}
public void endElement (String uri, String localName, String qName)
throws SAXException
{
- if (ignoreCount != 0) {
- if (--ignoreCount != 0)
- return;
- }
-
- uris.pop ();
- if (!("http://www.w3.org/2001/XInclude".equals (uri)
- && "include".equals (localName)))
- super.endElement (uri, localName, qName);
+ if (ignoreCount != 0) {
+ if (--ignoreCount != 0)
+ return;
+ }
+
+ uris.pop ();
+ if (!("http://www.w3.org/2001/XInclude".equals (uri)
+ && "include".equals (localName)))
+ super.endElement (uri, localName, qName);
}
//
@@ -389,66 +389,66 @@ public class XIncludeFilter extends EventFilter implements Locator
public void characters (char ch [], int start, int length)
throws SAXException
{
- if (ignoreCount == 0)
- super.characters (ch, start, length);
+ if (ignoreCount == 0)
+ super.characters (ch, start, length);
}
public void processingInstruction (String target, String value)
throws SAXException
{
- if (ignoreCount == 0)
- super.processingInstruction (target, value);
+ if (ignoreCount == 0)
+ super.processingInstruction (target, value);
}
public void ignorableWhitespace (char ch [], int start, int length)
throws SAXException
{
- if (ignoreCount == 0)
- super.ignorableWhitespace (ch, start, length);
+ if (ignoreCount == 0)
+ super.ignorableWhitespace (ch, start, length);
}
public void comment (char ch [], int start, int length)
throws SAXException
{
- if (ignoreCount == 0)
- super.comment (ch, start, length);
+ if (ignoreCount == 0)
+ super.comment (ch, start, length);
}
public void startCDATA () throws SAXException
{
- if (ignoreCount == 0)
- super.startCDATA ();
+ if (ignoreCount == 0)
+ super.startCDATA ();
}
public void endCDATA () throws SAXException
{
- if (ignoreCount == 0)
- super.endCDATA ();
+ if (ignoreCount == 0)
+ super.endCDATA ();
}
public void startPrefixMapping (String prefix, String uri)
throws SAXException
{
- if (ignoreCount == 0)
- super.startPrefixMapping (prefix, uri);
+ if (ignoreCount == 0)
+ super.startPrefixMapping (prefix, uri);
}
public void endPrefixMapping (String prefix) throws SAXException
{
- if (ignoreCount == 0)
- super.endPrefixMapping (prefix);
+ if (ignoreCount == 0)
+ super.endPrefixMapping (prefix);
}
public void skippedEntity (String name) throws SAXException
{
- if (ignoreCount == 0)
- super.skippedEntity (name);
+ if (ignoreCount == 0)
+ super.skippedEntity (name);
}
// JDK 1.1 seems to need it to be done this way, sigh
void setLocator (Locator l) { locator = l; }
Locator getLocator () { return locator; }
-
+
//
// for XIncluded entities, manage the current locator and
@@ -456,45 +456,45 @@ public class XIncludeFilter extends EventFilter implements Locator
//
private class Scrubber extends EventFilter
{
- Scrubber (EventFilter f)
- throws SAXException
- {
- // delegation passes to next in chain
- super (f);
-
- // process all content events
- super.setContentHandler (this);
- super.setProperty (LEXICAL_HANDLER, this);
-
- // drop all DTD events
- super.setDTDHandler (null);
- super.setProperty (DECL_HANDLER, null);
- }
-
- // maintain proxy locator
- // only one startDocument()/endDocument() pair per event stream
- public void setDocumentLocator (Locator l)
- { setLocator (l); }
- public void startDocument ()
- { }
- public void endDocument ()
- { }
-
- private void reject (String message) throws SAXException
- { fatal (new SAXParseException (message, getLocator ())); }
-
- // only the DTD from the "base document" gets reported
- public void startDTD (String root, String publicId, String systemId)
- throws SAXException
- { reject ("XIncluded DTD: " + systemId); }
- public void endDTD ()
- throws SAXException
- { reject ("XIncluded DTD"); }
- // ... so this should never happen
- public void skippedEntity (String name) throws SAXException
- { reject ("XInclude skipped entity: " + name); }
-
- // since we rejected DTDs, only builtin entities can be reported
+ Scrubber (EventFilter f)
+ throws SAXException
+ {
+ // delegation passes to next in chain
+ super (f);
+
+ // process all content events
+ super.setContentHandler (this);
+ super.setProperty (LEXICAL_HANDLER, this);
+
+ // drop all DTD events
+ super.setDTDHandler (null);
+ super.setProperty (DECL_HANDLER, null);
+ }
+
+ // maintain proxy locator
+ // only one startDocument()/endDocument() pair per event stream
+ public void setDocumentLocator (Locator l)
+ { setLocator (l); }
+ public void startDocument ()
+ { }
+ public void endDocument ()
+ { }
+
+ private void reject (String message) throws SAXException
+ { fatal (new SAXParseException (message, getLocator ())); }
+
+ // only the DTD from the "base document" gets reported
+ public void startDTD (String root, String publicId, String systemId)
+ throws SAXException
+ { reject ("XIncluded DTD: " + systemId); }
+ public void endDTD ()
+ throws SAXException
+ { reject ("XIncluded DTD"); }
+ // ... so this should never happen
+ public void skippedEntity (String name) throws SAXException
+ { reject ("XInclude skipped entity: " + name); }
+
+ // since we rejected DTDs, only builtin entities can be reported
}
// <xi:include parse='xml' ...>
@@ -502,40 +502,40 @@ public class XIncludeFilter extends EventFilter implements Locator
private SAXParseException xinclude (URL url, String href)
throws SAXException
{
- XMLReader helper;
- Scrubber scrubber;
- Locator savedLocator = locator;
-
- // start with a parser acting just like our input
- // modulo DTD-ish stuff (validation flag, entity resolver)
- helper = XMLReaderFactory.createXMLReader ();
- helper.setErrorHandler (getErrorHandler ());
- helper.setFeature (FEATURE_URI + "namespace-prefixes", true);
-
- // Set up the proxy locator and event filter.
- scrubber = new Scrubber (this);
- locator = null;
- bind (helper, scrubber);
-
- // Merge the included document, except its DTD
- try {
- url = new URL (url, href);
- href = url.toString ();
-
- if (inclusions.contains (href))
- fatal (new SAXParseException (
- "XInclude, circular inclusion", locator));
-
- inclusions.addElement (href);
- uris.push (url);
- helper.parse (new InputSource (href));
- return null;
- } catch (java.io.IOException e) {
- return new SAXParseException (href, locator, e);
- } finally {
- pop (href);
- locator = savedLocator;
- }
+ XMLReader helper;
+ Scrubber scrubber;
+ Locator savedLocator = locator;
+
+ // start with a parser acting just like our input
+ // modulo DTD-ish stuff (validation flag, entity resolver)
+ helper = XMLReaderFactory.createXMLReader ();
+ helper.setErrorHandler (getErrorHandler ());
+ helper.setFeature (FEATURE_URI + "namespace-prefixes", true);
+
+ // Set up the proxy locator and event filter.
+ scrubber = new Scrubber (this);
+ locator = null;
+ bind (helper, scrubber);
+
+ // Merge the included document, except its DTD
+ try {
+ url = new URL (url, href);
+ href = url.toString ();
+
+ if (inclusions.contains (href))
+ fatal (new SAXParseException (
+ "XInclude, circular inclusion", locator));
+
+ inclusions.addElement (href);
+ uris.push (url);
+ helper.parse (new InputSource (href));
+ return null;
+ } catch (java.io.IOException e) {
+ return new SAXParseException (href, locator, e);
+ } finally {
+ pop (href);
+ locator = savedLocator;
+ }
}
// <xi:include parse='text' ...>
@@ -543,37 +543,37 @@ public class XIncludeFilter extends EventFilter implements Locator
private SAXParseException readText (URL url, String href, String encoding)
throws SAXException
{
- InputStream in = null;
-
- try {
- URLConnection conn;
- InputStreamReader reader;
- char buf [] = new char [4096];
- int count;
-
- url = new URL (url, href);
- conn = url.openConnection ();
- in = conn.getInputStream ();
- if (encoding == null)
- encoding = Resolver.getEncoding (conn.getContentType ());
- if (encoding == null) {
- ErrorHandler eh = getErrorHandler ();
- if (eh != null)
- eh.warning (new SAXParseException (
- "guessing text encoding for URL: " + url,
- locator));
- reader = new InputStreamReader (in);
- } else
- reader = new InputStreamReader (in, encoding);
-
- while ((count = reader.read (buf, 0, buf.length)) != -1)
- super.characters (buf, 0, count);
- in.close ();
- return null;
- } catch (IOException e) {
- return new SAXParseException (
- "can't XInclude text",
- locator, e);
- }
+ InputStream in = null;
+
+ try {
+ URLConnection conn;
+ InputStreamReader reader;
+ char buf [] = new char [4096];
+ int count;
+
+ url = new URL (url, href);
+ conn = url.openConnection ();
+ in = conn.getInputStream ();
+ if (encoding == null)
+ encoding = Resolver.getEncoding (conn.getContentType ());
+ if (encoding == null) {
+ ErrorHandler eh = getErrorHandler ();
+ if (eh != null)
+ eh.warning (new SAXParseException (
+ "guessing text encoding for URL: " + url,
+ locator));
+ reader = new InputStreamReader (in);
+ } else
+ reader = new InputStreamReader (in, encoding);
+
+ while ((count = reader.read (buf, 0, buf.length)) != -1)
+ super.characters (buf, 0, count);
+ in.close ();
+ return null;
+ } catch (IOException e) {
+ return new SAXParseException (
+ "can't XInclude text",
+ locator, e);
+ }
}
}
diff --git a/libjava/classpath/gnu/xml/pipeline/XsltFilter.java b/libjava/classpath/gnu/xml/pipeline/XsltFilter.java
index 0a1872c5a80..86b6190c5bc 100644
--- a/libjava/classpath/gnu/xml/pipeline/XsltFilter.java
+++ b/libjava/classpath/gnu/xml/pipeline/XsltFilter.java
@@ -1,4 +1,4 @@
-/* XsltFilter.java --
+/* XsltFilter.java --
Copyright (C) 2001 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -49,8 +49,8 @@ import org.xml.sax.ext.LexicalHandler;
/**
- * Packages an XSLT transform as a pipeline component.
- * Note that all DTD events (callbacks to DeclHandler and DTDHandler
+ * Packages an XSLT transform as a pipeline component.
+ * Note that all DTD events (callbacks to DeclHandler and DTDHandler
* interfaces) are discarded, although XSLT transforms may be set up to
* use the LexicalHandler to write DTDs with only an external subset.
* Not every XSLT engine will necessarily be usable with this filter,
@@ -72,59 +72,59 @@ final public class XsltFilter extends EventFilter
* or ErrorHandler support.
*
* @param stylesheet URI for the stylesheet specifying the
- * XSLT transform
+ * XSLT transform
* @param next provides the ContentHandler and LexicalHandler
- * to receive XSLT output.
+ * to receive XSLT output.
* @exception SAXException if the stylesheet can't be parsed
* @exception IOException if there are difficulties
- * bootstrapping the XSLT engine, such as it not supporting
- * SAX well enough to use this way.
+ * bootstrapping the XSLT engine, such as it not supporting
+ * SAX well enough to use this way.
*/
public XsltFilter (String stylesheet, EventConsumer next)
throws SAXException, IOException
{
- // First, get a transformer with the stylesheet preloaded
- TransformerFactory tf = null;
- TransformerHandler th;
-
- try {
- SAXTransformerFactory stf;
-
- tf = TransformerFactory.newInstance ();
- if (!tf.getFeature (SAXTransformerFactory.FEATURE) // sax inputs
- || !tf.getFeature (SAXResult.FEATURE) // sax outputs
- || !tf.getFeature (StreamSource.FEATURE) // stylesheet
- )
- throw new IOException ("XSLT factory ("
- + tf.getClass ().getName ()
- + ") does not support SAX");
- stf = (SAXTransformerFactory) tf;
- th = stf.newTransformerHandler (new StreamSource (stylesheet));
- } catch (TransformerConfigurationException e) {
- throw new IOException ("XSLT factory ("
- + (tf == null
- ? "none available"
- : tf.getClass ().getName ())
- + ") configuration error, "
- + e.getMessage ()
- );
- }
-
- // Hook its outputs up to the pipeline ...
- SAXResult out = new SAXResult ();
-
- out.setHandler (next.getContentHandler ());
- try {
- LexicalHandler lh;
- lh = (LexicalHandler) next.getProperty (LEXICAL_HANDLER);
- out.setLexicalHandler (lh);
- } catch (Exception e) {
- // ignore
- }
- th.setResult (out);
-
- // ... and make sure its inputs look like ours.
- setContentHandler (th);
- setProperty (LEXICAL_HANDLER, th);
+ // First, get a transformer with the stylesheet preloaded
+ TransformerFactory tf = null;
+ TransformerHandler th;
+
+ try {
+ SAXTransformerFactory stf;
+
+ tf = TransformerFactory.newInstance ();
+ if (!tf.getFeature (SAXTransformerFactory.FEATURE) // sax inputs
+ || !tf.getFeature (SAXResult.FEATURE) // sax outputs
+ || !tf.getFeature (StreamSource.FEATURE) // stylesheet
+ )
+ throw new IOException ("XSLT factory ("
+ + tf.getClass ().getName ()
+ + ") does not support SAX");
+ stf = (SAXTransformerFactory) tf;
+ th = stf.newTransformerHandler (new StreamSource (stylesheet));
+ } catch (TransformerConfigurationException e) {
+ throw new IOException ("XSLT factory ("
+ + (tf == null
+ ? "none available"
+ : tf.getClass ().getName ())
+ + ") configuration error, "
+ + e.getMessage ()
+ );
+ }
+
+ // Hook its outputs up to the pipeline ...
+ SAXResult out = new SAXResult ();
+
+ out.setHandler (next.getContentHandler ());
+ try {
+ LexicalHandler lh;
+ lh = (LexicalHandler) next.getProperty (LEXICAL_HANDLER);
+ out.setLexicalHandler (lh);
+ } catch (Exception e) {
+ // ignore
+ }
+ th.setResult (out);
+
+ // ... and make sure its inputs look like ours.
+ setContentHandler (th);
+ setProperty (LEXICAL_HANDLER, th);
}
}
OpenPOWER on IntegriCloud