/************************************************************** * * 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 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. * *************************************************************/ #ifndef __com_sun_star_beans_MethodConcept_idl__ #define __com_sun_star_beans_MethodConcept_idl__ //============================================================================= module com { module sun { module star { module beans { //============================================================================= /** These constants are used to specify concepts of the introspection which apply to methods.

This list is not necessarily complete; new constants may be added.

@see Introspection @see XIntrospection @see XIntrospectionAccess */ published constants MethodConcept { //------------------------------------------------------------------------- /** This value is used to query for all methods, see XIntrospectionAccess::getMethod() and XIntrospectionAccess::getMethods() */ const long ALL = -1; //------------------------------------------------------------------------- /** specifies methods which can result in an unstable state (i.e. deadlock, application crash, security hole, etc.) when called directly by the user. */ const long DANGEROUS = 1; //------------------------------------------------------------------------- /** specifies methods which are used to set and get the value of properties/attributes.

These methods have the signature type get...() , void set...() or boolean is...() .

*/ const long PROPERTY = 2; //------------------------------------------------------------------------- /** specifies methods of the listener concept.

These methods have the signature add...Listener() or remove...Listener().

*/ const long LISTENER = 4; //------------------------------------------------------------------------- /** specifies methods of the enumeration concept.

These methods have the signature create...Enumeration and return an interface that is derived from XEnumeration Additionally, the method XEnumerationAccess::getElementType belongs to this concept.

*/ const long ENUMERATION = 8; //------------------------------------------------------------------------- /** specifies methods of the name container concept.

These methods have the signature get...ByName(), set...ByName(), replace...ByName(), remove...ByName(), has...ByName(), or get...Names. In addition, the method XEnumerationAccess::getElementType belongs to this concept.

*/ const long NAMECONTAINER = 16; //------------------------------------------------------------------------- /** specifies methods of the index container concept.

These methods have the signature get...ByIndex(), insert...ByIndex(), replace...ByIndex(), or remove...ByIndex(). The method XIndexAccess::getCount() also belongs to this concept.

*/ const long INDEXCONTAINER = 32; }; //============================================================================= }; }; }; }; #endif