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_XTolerantMultiPropertySet_idl__ 24#define __com_sun_star_beans_XTolerantMultiPropertySet_idl__ 25 26 27#ifndef __com_sun_star_uno_XInterface_idl__ 28#include <com/sun/star/uno/XInterface.idl> 29#endif 30 31#ifndef __com_sun_star_beans_GetDirectPropertyTolerantResult_idl__ 32#include <com/sun/star/beans/GetDirectPropertyTolerantResult.idl> 33#endif 34 35#ifndef __com_sun_star_beans_GetPropertyTolerantResult_idl__ 36#include <com/sun/star/beans/GetPropertyTolerantResult.idl> 37#endif 38 39#ifndef __com_sun_star_beans_SetPropertyTolerantFailed_idl__ 40#include <com/sun/star/beans/SetPropertyTolerantFailed.idl> 41#endif 42 43#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ 44#include <com/sun/star/lang/IllegalArgumentException.idl> 45#endif 46 47 48//============================================================================= 49 50module com { module sun { module star { module beans { 51 52//============================================================================= 53 54/** provides access to multiple iformation of 55 a set of properties with a single call. 56 57 <p>The speciality of this interface is that none of the functions 58 will throw the usual exceptions associated with setting and retrieving 59 of property values. Instead the data for the failures is collected and 60 returned.</p> 61 62 <p>Note: There is no support for property change listeners in this 63 interface.</p> 64 65 @see com::sun::star::beans::XPropertySet 66 @see com::sun::star::beans::XMultiPropertySet 67 */ 68published interface XTolerantMultiPropertySet : com::sun::star::uno::XInterface 69{ 70 //------------------------------------------------------------------------- 71 72 /** sets the values to the properties with the specified names. 73 74 @param aPropertyNames 75 specifies the names of the properties. 76 The property names must be sorted ascending. 77 78 <p>If the names are not sorted the behaviour of the method 79 is undefined!</p> 80 81 @param aPropertyValues 82 specifies the values of the properties. 83 The order of the values has to be the same as in the 84 <var>aPropertyNames</var> parameter int order to match 85 the property name with its value. 86 87 @returns 88 An empty sequence if all properties are successful set. 89 90 Otherwise for every property value that could not successfully 91 be set an entry of the 92 <type scope="com::sun::star::beans">SetPropertyTolerantFailed</type> 93 will be present in this sequence. 94 The order of the properties is also alphabetically ascending. 95 96 @throws IllegalArgumentException 97 if the number of property names and values do not match. 98 99 */ 100 sequence< com::sun::star::beans::SetPropertyTolerantFailed > setPropertyValuesTolerant( 101 [in] sequence< string > aPropertyNames, 102 [in] sequence< any > aValues ) 103 raises( com::sun::star::lang::IllegalArgumentException ); 104 105 //------------------------------------------------------------------------- 106 107 /** retrieve the values of the specified properties 108 109 <p>The count and order of the values in the returned sequence 110 will be the same as the order of the names in the argument.</p> 111 112 @param aPropertyNames 113 specifies the names of the properties. 114 The property names must be sorted ascending. 115 116 <p>If the names are not sorted the behaviour of the method 117 is undefined!</p> 118 119 @returns 120 a sequence of type 121 <type scope="com::sun::star::beans">GetPropertyTolerantResult</type> 122 for each of the properties listed in <var>aPropertyNames</var>. 123 */ 124 sequence< com::sun::star::beans::GetPropertyTolerantResult > getPropertyValuesTolerant( 125 [in] sequence< string > aPropertyNames ); 126 127 128 //------------------------------------------------------------------------- 129 130 /** retrieve only those values of the specified properties which 131 are direct values. 132 133 <p>Since the count of returned elements may be different from 134 the number of supplied property names the returned elements 135 will also state the name of the property.</p> 136 137 @param aPropertyNames 138 specifies the names of the properties. 139 The property names must be sorted ascending. 140 141 <p>If the names are not sorted the behaviour of the method 142 is undefined!</p> 143 144 @returns 145 a sequence of type 146 <type scope="com::sun::star::beans">GetDirectPropertyTolerantResult</type> 147 but only for those properties supplied whoms state is 148 <member scope="com::sun::star::beans::PropertyState">DIRECT_VALUE</member>. 149 */ 150 sequence< com::sun::star::beans::GetDirectPropertyTolerantResult > getDirectPropertyValuesTolerant( 151 [in] sequence< string > aPropertyNames ); 152 153}; 154 155//============================================================================= 156 157}; }; }; }; 158 159#endif 160 161