1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23#ifndef __com_sun_star_configuration_backend_xml_LayerParser_idl__
24#define __com_sun_star_configuration_backend_xml_LayerParser_idl__
25
26#ifndef __com_sun_star_configuration_backend_XLayer_idl__
27#include <com/sun/star/configuration/backend/XLayer.idl>
28#endif
29
30#ifndef __com_sun_star_io_XActiveDataSink_idl__
31#include <com/sun/star/io/XActiveDataSink.idl>
32#endif
33
34#ifndef __com_sun_star_lang_XInitialization_idl__
35#include <com/sun/star/lang/XInitialization.idl>
36#endif
37
38//=============================================================================
39
40module com { module sun { module star { module configuration { module backend {
41module xml {
42
43//=============================================================================
44
45/**
46    represents a configuration data layer that is stored in a stream in
47    OOR Update XML format.
48
49    <p> The configuration layer xml from a given stream is parsed and fed to a
50    <type scope="com::sun::star::configuration::backend">XLayerHandler</type>.
51    </p>
52
53    @see com::sun::star::configuration::backend::xml::SchemaParser
54        Service that represents a configuration schema stored in xml.
55
56    @see com::sun::star::configuration::backend::xml::LayerWriter
57        Service that writes OOR Update XML for data described via
58        <type scope="com::sun::star::configuration::backend">XLayerHandler</type>.
59
60    @since OpenOffice 1.1.2
61*/
62published service LayerParser
63{
64	//-------------------------------------------------------------------------
65
66    /** provides access to the parsed layer data.
67      */
68    interface com::sun::star::configuration::backend::XLayer ;
69
70	//-------------------------------------------------------------------------
71
72    /** provides access to the source xml stream.
73      */
74    interface com::sun::star::io::XActiveDataSink ;
75
76	//-------------------------------------------------------------------------
77
78    /** allows initializing the source stream.
79
80        <p> The source can be passed
81            as a <type scope="com::sun::star::io">XInputStream</type> or
82            as a <type scope="com::sun::star::xml::sax">InputSource</type>.
83        </p>
84      */
85    interface com::sun::star::lang::XInitialization ;
86
87	//-------------------------------------------------------------------------
88} ;
89
90//=============================================================================
91} ;
92} ; } ; } ; } ; } ;
93
94#endif
95