/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project .
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License , v . 2 . 0 . If a copy of the MPL was not distributed with this
* file , You can obtain one at http : //mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice :
*
* Licensed to the Apache Software Foundation ( ASF ) under one or more
* contributor license agreements . See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership . The ASF licenses this file to you under the Apache
* License , Version 2 . 0 ( the " License " ) ; you may not use this file
* except in compliance with the License . You may obtain a copy of
* the License at http : //www.apache.org/licenses/LICENSE-2.0 .
*/
module com { module sun { module star { module beans {
/** represents the result of an introspection operation done by
the inspect method of XIntrospection .
< p > This interface gives information about an object ' s
properties and methods as detected in the introspection
process . It ' s not possible to access properties or call
methods directly using this interface but it provides
access to other interfaces to do so .
See com : : sun : : star : : beans : : XIntrospectionAccess : : queryAdapter ( ) < / p >
< p > The XExactName interface has to be supported
in order to implement inaccurate name access for all objects
which implement the com : : sun : : star : : container : : XNameAccess interface
or XPropertySet . < / p >
< p > The XMaterialHolder interface has to be
supported to give access to the inspected object . < / p >
@ see XPropertySet
@ see com : : sun : : star : : beans : : XExactName
*/
published interface XIntrospectionAccess: com::sun::star::uno::XInterface
{
/** returns information about which method concepts described in
the MethodConcept constants group are supported
by this XIntrospectionAccess implementation .
< p > The minimum supported concepts should be : < / p >
< ul >
< li > MethodConcept : : PROPERTY , < / li >
< li > MethodConcept : : LISTENER , < / li >
< li > MethodConcept : : ENUMERATION , < / li >
< li > MethodConcept : : NAMECONTAINER < / li >
< li > MethodConcept : : INDEXCONTAINER ; < / li >
< / ul >
@ returns
zero or more constants of the MethodConcept
constants group combined by an arithmetical or - operation .
*/
long getSuppliedMethodConcepts();
/** returns information about which property concepts described in
the PropertyConcept constants group are supported
by this XIntrospectionAccess implementation .
< p > The minimum supported concepts should be : < / p >
< ul >
< li > PropertyConcept : : PROPERTYSET , < / li >
< li > PropertyConcept : : ATTRIBUTES and < / li >
< li > PropertyConcept : : METHODS . < / li >
< / ul >
@ returns
zero or more constants of the PropertyConcept
constants group . combined by an arithmetical or - operation .
*/
long getSuppliedPropertyConcepts();
/** returns information about a property if a property with
the demanded name exists and if it accords to one of the
demanded PropertyConcepts . The information
is provided as Property struct .
@ returns
A Property struct providing
information about the demanded property ,
if a corresponding property exists .
@ param aName
the name of the property .
@ param nPropertyConcepts
zero or more constants of the PropertyConcept
constants group combined by an arithmetical
or - operation .
@ throws NoSuchElementException
when a property with the demanded name doesn ' t exist
or if it accords to a wrong PropertyConcept .
*/
com::sun::star::beans::Property getProperty( [in] string aName,
[in] long nPropertyConcepts )
raises( com::sun::star::container::NoSuchElementException );
/** allows to ask if a property with the demanded name exists
and if it accords to one of the demanded PropertyConcept .
@ returns
` TRUE ` if the property exists and accords to one of
the demanded PropertyConcepts , otherwise
` FALSE ` is returned .
@ param aName
the name of the property .
@ param nPropertyConcepts
zero or more constants of the PropertyConcept
constants group combined by an arithmetical
or - operation .
*/
boolean hasProperty( [in] string aName,
[in] long nPropertyConcepts );
/** returns a sequence of properties of the introspected object
@ returns
all properties of the introspected object which accord
to the demanded PropertyConcepts .
@ param nPropertyConcepts
zero or more constants of the PropertyConcept
constants group combined by an arithmetical
or - operation .
*/
sequence<com::sun::star::beans::Property> getProperties(
[in] long nPropertyConcepts );
/** returns information about a method if a method with
the demanded name exists and if it accords to one of
the demanded MethodConcepts . The information is
provided as com : : sun : : star : : reflection : : XIdlMethod .
@ returns
A com : : sun : : star : : reflection : : XIdlMethod providing
information about and
access to the demanded method if a corresponding
method exists .
@ param aName
the name of the method .
@ param nMethodConcepts
zero or more constants of the MethodConcept
constants group combined by an arithmetical
or - operation .
@ throws NoSuchElementException
when a method with the demanded name doesn ' t exist
or if it accords to a wrong MethodConcept .
*/
com::sun::star::reflection::XIdlMethod getMethod( [in] string aName,
[in] long nMethodConcepts )
raises( com::sun::star::lang::NoSuchMethodException );
/** allows to ask if a method with the demanded name exists
and if it accords to one of the demanded MethodConcept .
@ returns
` TRUE ` if the method exists and accords to one of
the demanded MethodConcepts , otherwise
` FALSE ` is returned .
@ param aName
the name of the method .
@ param nMethodConcepts
zero or more constants of the MethodConcept
constants group combined by an arithmetical
or - operation .
*/
boolean hasMethod( [in] string aName,
[in] long nMethodConcepts );
/** returns a sequence of methods of the introspected object.
@ returns
all methods of the introspected object which accord
to the demanded MethodConcepts .
@ param nMethodConcepts
zero or more constants of the MethodConcept
constants group combined by an arithmetical
or - operation .
*/
sequence<com::sun::star::reflection::XIdlMethod> getMethods(
[in] long nMethodConcepts );
/** returns the listener types supported by the introspected
object .
< p > If the introspected object has the methods
< code > addFooListener ( XFooListener xFoo ) < / code > and
< code > removeFooListener ( XFooListener xFoo ) < / code >
the type of XFooListener will be one of the elements
in the returned sequence .
@ returns
a sequence of the types of listener interfaces
which are supported by the introspected object .
*/
sequence<type> getSupportedListeners();
/** creates an adapter that implements an interface with the
specified type .
< p > To access properties , query for the XPropertySet
interface . If the XPropertySet can
be queried , the XFastPropertySet interface
must be supported too . < / p >
< p > If the introspected object implements a name container ,
the introspection should return the
com : : sun : : star : : container : : XNameAccess and
com : : sun : : star : : container : : XNameContainer interfaces . < / p >
< p > If the introspected object implements an index container ,
the introspection should return the
com : : sun : : star : : container : : XIndexAccess and
com : : sun : : star : : container : : XIndexContainer interfaces . < / p >
< p > If the introspected object implements an enumeration
container , the introspection should return the
com : : sun : : star : : container : : XEnumerationAccess interface . < / p >
< p > If the introspected object implements the
com : : sun : : star : : reflection : : XIdlArray interface ,
the introspection should return this . < / p >
< p > To implement inaccurate name access , at all objects ,
which implement the com : : sun : : star : : container : : XNameAccess or
XPropertySet interface , the XExactName interface has to be supported .
< / p >
@ see com : : sun : : star : : beans : : XExactName
*/
com::sun::star::uno::XInterface queryAdapter( [in] type aInterfaceType )
raises( com::sun::star::beans::IllegalTypeException );
};
}; }; }; };
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Messung V0.5 in Prozent C=95 H=86 G=90
¤ Dauer der Verarbeitung: 0.9 Sekunden
(vorverarbeitet am 2026-10-12)
¤
*© Formatika GbR, Deutschland