1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
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.
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).
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.
26 ************************************************************************/
27 #ifndef __com_sun_star_container_XNameAccess_idl__
28 #define __com_sun_star_container_XNameAccess_idl__
30 #ifndef __com_sun_star_container_XElementAccess_idl__
31 #include
<com
/sun
/star
/container
/XElementAccess.idl
>
34 #ifndef __com_sun_star_container_NoSuchElementException_idl__
35 #include
<com
/sun
/star
/container
/NoSuchElementException.idl
>
38 #ifndef __com_sun_star_lang_WrappedTargetException_idl__
39 #include
<com
/sun
/star
/lang
/WrappedTargetException.idl
>
42 //=============================================================================
44 module com
{ module sun
{ module star
{ module container
{
46 //=============================================================================
48 /** is used to access named objects within a container.
50 <p>To implement inaccurate name access, support the
51 <type scope="com::sun::star::beans">XExactName</type>
53 @see com::sun::star::beans::XExactName
55 published
interface XNameAccess
: com
::sun
::star
::container
::XElementAccess
57 //-------------------------------------------------------------------------
60 the object with the specified name.
63 the name of the object.
65 @throws NoSuchElementException
66 if an element under Name does not exist.
68 @throws com::sun::star::lang::WrappedTargetException
69 If the implementation has internal reasons for exceptions,
70 then wrap these in a <type scope="com::sun::star::lang">WrappedTargetException</type>
73 any getByName
( [in] string aName
)
74 raises
( com
::sun
::star
::container
::NoSuchElementException
,
75 com
::sun
::star
::lang
::WrappedTargetException
);
77 //-------------------------------------------------------------------------
80 a sequence of all element names in this container.
82 <p>The order of the names is not specified. </p>
84 sequence
<string> getElementNames
();
86 //-------------------------------------------------------------------------
89 <TRUE/> if an element with this name is in
90 the container, <FALSE/> otherwise.
92 <p>In many cases the next call is <member>XNameAccess::getByName</member>.
93 You should optimize this case. </p>
96 the name of the object.
98 boolean hasByName
( [in] string aName
);
102 //=============================================================================