1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27#ifndef __com_sun_star_xml_sax_XFastSerializer_idl__ 28#define __com_sun_star_xml_sax_XFastSerializer_idl__ 29 30#ifndef __com_sun_star_uno_XInterface_idl__ 31#include <com/sun/star/uno/XInterface.idl> 32#endif 33 34#ifndef __com_sun_star_xml_sax_SAXException_idl__ 35#include <com/sun/star/xml/sax/SAXException.idl> 36#endif 37 38#ifndef __com_sun_star_xml_sax_XFastDocumentHanlder_idl__ 39#include <com/sun/star/xml/sax/XFastDocumentHandler.idl> 40#endif 41 42#ifndef __com_sun_star_io_XOutputStream_idl__ 43#include <com/sun/star/io/XOutputStream.idl> 44#endif 45 46#ifndef __com_sun_star_xml_sax_XFastTokenHandler_idl__ 47#include <com/sun/star/xml/sax/XFastTokenHandler.idl> 48#endif 49 50 51//============================================================================= 52 53module com { module sun { module star { module xml { module sax { 54 55//============================================================================= 56 57/** receives notification of sax document events to write into an XOutputStream. 58 */ 59interface XFastSerializer: com::sun::star::uno::XInterface 60{ 61 //------------------------------------------------------------------------- 62 63 /** called by the parser when parsing of an xml stream is started. 64 */ 65 void startDocument() 66 raises( com::sun::star::xml::sax::SAXException ); 67 68 //------------------------------------------------------------------------- 69 70 /** called by the parser after the last xml element of a stream is processed. 71 */ 72 void endDocument() 73 raises( com::sun::star::xml::sax::SAXException ); 74 75 //------------------------------------------------------------------------- 76 77 /** receives notification of the beginning of an element . 78 79 @param Element 80 contains the integer token from the <type>XFastTokenHandler</type> 81 registered at the <type>XFastParser</type>.<br> 82 83 If the element has a namespace that was registered with the 84 <type>XFastParser</type>, <param>Element</param> contains the integer 85 token of the elements local name from the <type>XFastTokenHandler</type> 86 and the integer token of the namespace combined with an arithmetic 87 <b>or</b> operation. 88 89 @param Attribs 90 Contains a <type>XFastAttrbitueList</type> to access the attributes 91 from the element. 92 93 */ 94 void startFastElement( [in] long Element, [in] XFastAttributeList Attribs ) 95 raises( com::sun::star::xml::sax::SAXException ); 96 97 //------------------------------------------------------------------------- 98 99 /** receives notification of the beginning of an unknown element . 100 101 @param Namespace 102 contains the namespace url (not the prefix!) of this element. 103 @param Name 104 contains the elements local name. 105 @param Attribs 106 Contains a <type>XFastAttrbitueList</type> to access the attributes 107 from the element. 108 */ 109 void startUnknownElement( [in] string Namespace, [in] string Name, [in] XFastAttributeList Attribs ) 110 raises( com::sun::star::xml::sax::SAXException ); 111 112 //------------------------------------------------------------------------- 113 114 /** receives notification of the end of an known element. 115 @see startFastElement 116 */ 117 void endFastElement( [in] long Element ) 118 raises( com::sun::star::xml::sax::SAXException ); 119 120 //------------------------------------------------------------------------- 121 122 /** receives notification of the end of an known element. 123 @see startUnknownElement 124 */ 125 void endUnknownElement( [in] string Namespace, [in] string Name ) 126 raises( com::sun::star::xml::sax::SAXException ); 127 128 //------------------------------------------------------------------------- 129 130 /** receives notification of the beginning of a single element . 131 132 @param Element 133 contains the integer token from the <type>XFastTokenHandler</type> 134 registered at the <type>XFastParser</type>.<br> 135 136 If the element has a namespace that was registered with the 137 <type>XFastParser</type>, <param>Element</param> contains the integer 138 token of the elements local name from the <type>XFastTokenHandler</type> 139 and the integer token of the namespace combined with an arithmetic 140 <b>or</b> operation. 141 142 @param Attribs 143 Contains a <type>XFastAttrbitueList</type> to access the attributes 144 from the element. 145 146 */ 147 void singleFastElement( [in] long Element, [in] XFastAttributeList Attribs ) 148 raises( com::sun::star::xml::sax::SAXException ); 149 150 //------------------------------------------------------------------------- 151 152 /** receives notification of the beginning of a single unknown element . 153 154 @param Namespace 155 contains the namespace url (not the prefix!) of this element. 156 @param Name 157 contains the elements local name. 158 @param Attribs 159 Contains a <type>XFastAttrbitueList</type> to access the attributes 160 from the element. 161 */ 162 void singleUnknownElement( [in] string Namespace, [in] string Name, [in] XFastAttributeList Attribs ) 163 raises( com::sun::star::xml::sax::SAXException ); 164 165 //------------------------------------------------------------------------- 166 167 /** receives notification of character data. 168 */ 169 void characters( [in] string aChars ) 170 raises( com::sun::star::xml::sax::SAXException ); 171 172 //------------------------------------------------------------------------- 173 174 /** 175 */ 176 void setOutputStream ( [in] com::sun::star::io::XOutputStream xOutputStream ) 177 /* raises( com::sun::star::xml::sax::SAXException ) */; 178 179 //------------------------------------------------------------------------- 180 181 /** 182 */ 183 void setFastTokenHandler ( [in] com::sun::star::xml::sax::XFastTokenHandler xFastTokenHandler ) 184 /* raises( com::sun::star::xml::sax::SAXException ) */; 185 }; 186 187//============================================================================= 188 189}; }; }; }; }; 190 191#endif 192