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_beans_XFastPropertySet_idl__
24#define __com_sun_star_beans_XFastPropertySet_idl__
25
26#ifndef __com_sun_star_uno_XInterface_idl__
27#include <com/sun/star/uno/XInterface.idl>
28#endif
29
30#ifndef __com_sun_star_beans_UnknownPropertyException_idl__
31#include <com/sun/star/beans/UnknownPropertyException.idl>
32#endif
33
34#ifndef __com_sun_star_beans_PropertyVetoException_idl__
35#include <com/sun/star/beans/PropertyVetoException.idl>
36#endif
37
38#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
39#include <com/sun/star/lang/IllegalArgumentException.idl>
40#endif
41
42#ifndef __com_sun_star_lang_WrappedTargetException_idl__
43#include <com/sun/star/lang/WrappedTargetException.idl>
44#endif
45
46
47//=============================================================================
48
49module com {  module sun {  module star {  module beans {
50
51//=============================================================================
52
53/** provides a fast way of accessing and changing property values.
54
55	<p>This interface is an extension to the <type>XPropertySet</type>
56	interface. The get and set methods use handles to access the
57	property values instead of character strings.</p>
58 */
59published interface XFastPropertySet: com::sun::star::uno::XInterface
60{
61	//-------------------------------------------------------------------------
62
63	/** sets the value to the property with the specified name.
64
65		@param nHandle
66			contains the implementation handle of the
67			implementation for the property.
68
69		@param aValue
70			contains the new value of the property.
71
72		@throws UnknownPropertyException
73			if the property does not exist.
74
75		@throws PropertyVetoException
76			if a vetoable listener does not approve the change of
77			a property value.
78
79		@throws IllegalArgumentException
80			if the new value cannot be converted to the type of the
81			underlying property by an identity or widening conversion.
82
83		@throws  stardiv::uno::lang::WrappedTargetException
84			if the implementation has an internal reason for the exception.
85			In this case the original exception is wrapped into this
86			<type scope="com::sun::star::lang">WrappedTargetException</type>.
87
88	 */
89	void setFastPropertyValue( [in] long nHandle,
90			 [in] any aValue )
91			raises( com::sun::star::beans::UnknownPropertyException,
92					com::sun::star::beans::PropertyVetoException,
93					com::sun::star::lang::IllegalArgumentException,
94					com::sun::star::lang::WrappedTargetException );
95
96	//-------------------------------------------------------------------------
97
98	/** @returns
99			the value of the property with the name PropertyName.
100
101		@param nHandle
102			contains the implementation handle of the implementation for the property.
103
104		@throws UnknownPropertyException
105			if the property does not exist.
106
107		@throws  com::sun::star::lang::WrappedTargetException
108			if the implementation has an internal reason for the exception.
109			In this case the original exception is wrapped into that
110			<type scope="com::sun::star::lang">WrappedTargetException</type>.
111	 */
112	any getFastPropertyValue( [in] long nHandle )
113			raises( com::sun::star::beans::UnknownPropertyException,
114					com::sun::star::lang::WrappedTargetException );
115
116};
117
118//=============================================================================
119
120}; }; }; };
121
122#endif
123