1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
21 module com
{ module sun
{ module star
{ module sdb
{
23 /** simplifies the accessing of data sources and their corresponding database document.
26 The interface can be used to access the data source of the database document.
28 @see OfficeDatabaseDocument
30 interface XDocumentDataSource
32 /** provides access to the one and only OfficeDatabaseDocument
33 which the data source is based on.
35 <p>The component returned by this attribute is an OfficeDatabaseDocument.</p>
37 <p>Though there is a 1-to-1 relationship between database documents and data sources,
38 each of the two can exist without its counterpart, but create this counterpart on request
39 only. As a consequence, the document obtained via this attribute might be newly created,
40 which implies that the caller is now responsible for it. In particular, the caller is
41 responsible for calling com::sun::star::util::XCloseable::close()
42 on the document as soon as it's not needed anymore.</p>
44 <p>Additionally, if the caller does long-lasting processing on the document, it's advised
45 to add itself as com::sun::star::util::XCloseListener to the document,
46 to prevent closing as long as the processing lasts.</p>
48 [readonly, attribute
] XOfficeDatabaseDocument DatabaseDocument
;
54 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */