1*b1cdbd2cSJim Jagielski/************************************************************** 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski * distributed with this work for additional information 6*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski * 11*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski * under the License. 19*b1cdbd2cSJim Jagielski * 20*b1cdbd2cSJim Jagielski *************************************************************/ 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_beans_XTolerantMultiPropertySet_idl__ 24*b1cdbd2cSJim Jagielski#define __com_sun_star_beans_XTolerantMultiPropertySet_idl__ 25*b1cdbd2cSJim Jagielski 26*b1cdbd2cSJim Jagielski 27*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_uno_XInterface_idl__ 28*b1cdbd2cSJim Jagielski#include <com/sun/star/uno/XInterface.idl> 29*b1cdbd2cSJim Jagielski#endif 30*b1cdbd2cSJim Jagielski 31*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_beans_GetDirectPropertyTolerantResult_idl__ 32*b1cdbd2cSJim Jagielski#include <com/sun/star/beans/GetDirectPropertyTolerantResult.idl> 33*b1cdbd2cSJim Jagielski#endif 34*b1cdbd2cSJim Jagielski 35*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_beans_GetPropertyTolerantResult_idl__ 36*b1cdbd2cSJim Jagielski#include <com/sun/star/beans/GetPropertyTolerantResult.idl> 37*b1cdbd2cSJim Jagielski#endif 38*b1cdbd2cSJim Jagielski 39*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_beans_SetPropertyTolerantFailed_idl__ 40*b1cdbd2cSJim Jagielski#include <com/sun/star/beans/SetPropertyTolerantFailed.idl> 41*b1cdbd2cSJim Jagielski#endif 42*b1cdbd2cSJim Jagielski 43*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ 44*b1cdbd2cSJim Jagielski#include <com/sun/star/lang/IllegalArgumentException.idl> 45*b1cdbd2cSJim Jagielski#endif 46*b1cdbd2cSJim Jagielski 47*b1cdbd2cSJim Jagielski 48*b1cdbd2cSJim Jagielski//============================================================================= 49*b1cdbd2cSJim Jagielski 50*b1cdbd2cSJim Jagielskimodule com { module sun { module star { module beans { 51*b1cdbd2cSJim Jagielski 52*b1cdbd2cSJim Jagielski//============================================================================= 53*b1cdbd2cSJim Jagielski 54*b1cdbd2cSJim Jagielski/** provides access to multiple iformation of 55*b1cdbd2cSJim Jagielski a set of properties with a single call. 56*b1cdbd2cSJim Jagielski 57*b1cdbd2cSJim Jagielski <p>The speciality of this interface is that none of the functions 58*b1cdbd2cSJim Jagielski will throw the usual exceptions associated with setting and retrieving 59*b1cdbd2cSJim Jagielski of property values. Instead the data for the failures is collected and 60*b1cdbd2cSJim Jagielski returned.</p> 61*b1cdbd2cSJim Jagielski 62*b1cdbd2cSJim Jagielski <p>Note: There is no support for property change listeners in this 63*b1cdbd2cSJim Jagielski interface.</p> 64*b1cdbd2cSJim Jagielski 65*b1cdbd2cSJim Jagielski @see com::sun::star::beans::XPropertySet 66*b1cdbd2cSJim Jagielski @see com::sun::star::beans::XMultiPropertySet 67*b1cdbd2cSJim Jagielski */ 68*b1cdbd2cSJim Jagielskipublished interface XTolerantMultiPropertySet : com::sun::star::uno::XInterface 69*b1cdbd2cSJim Jagielski{ 70*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 71*b1cdbd2cSJim Jagielski 72*b1cdbd2cSJim Jagielski /** sets the values to the properties with the specified names. 73*b1cdbd2cSJim Jagielski 74*b1cdbd2cSJim Jagielski @param aPropertyNames 75*b1cdbd2cSJim Jagielski specifies the names of the properties. 76*b1cdbd2cSJim Jagielski The property names must be sorted ascending. 77*b1cdbd2cSJim Jagielski 78*b1cdbd2cSJim Jagielski <p>If the names are not sorted the behaviour of the method 79*b1cdbd2cSJim Jagielski is undefined!</p> 80*b1cdbd2cSJim Jagielski 81*b1cdbd2cSJim Jagielski @param aPropertyValues 82*b1cdbd2cSJim Jagielski specifies the values of the properties. 83*b1cdbd2cSJim Jagielski The order of the values has to be the same as in the 84*b1cdbd2cSJim Jagielski <var>aPropertyNames</var> parameter int order to match 85*b1cdbd2cSJim Jagielski the property name with its value. 86*b1cdbd2cSJim Jagielski 87*b1cdbd2cSJim Jagielski @returns 88*b1cdbd2cSJim Jagielski An empty sequence if all properties are successfull set. 89*b1cdbd2cSJim Jagielski 90*b1cdbd2cSJim Jagielski Otherwise for every property value that could not successfully 91*b1cdbd2cSJim Jagielski be set an entry of the 92*b1cdbd2cSJim Jagielski <type scope="com::sun::star::beans">SetPropertyTolerantFailed</type> 93*b1cdbd2cSJim Jagielski will be present in this sequence. 94*b1cdbd2cSJim Jagielski The order of the properties is also alphabetically ascending. 95*b1cdbd2cSJim Jagielski 96*b1cdbd2cSJim Jagielski @throws IllegalArgumentException 97*b1cdbd2cSJim Jagielski if the number of property names and values do not match. 98*b1cdbd2cSJim Jagielski 99*b1cdbd2cSJim Jagielski */ 100*b1cdbd2cSJim Jagielski sequence< com::sun::star::beans::SetPropertyTolerantFailed > setPropertyValuesTolerant( 101*b1cdbd2cSJim Jagielski [in] sequence< string > aPropertyNames, 102*b1cdbd2cSJim Jagielski [in] sequence< any > aValues ) 103*b1cdbd2cSJim Jagielski raises( com::sun::star::lang::IllegalArgumentException ); 104*b1cdbd2cSJim Jagielski 105*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 106*b1cdbd2cSJim Jagielski 107*b1cdbd2cSJim Jagielski /** retrieve the values of the specified properties 108*b1cdbd2cSJim Jagielski 109*b1cdbd2cSJim Jagielski <p>The count and order of the values in the returned sequence 110*b1cdbd2cSJim Jagielski will be the same as the order of the names in the argument.</p> 111*b1cdbd2cSJim Jagielski 112*b1cdbd2cSJim Jagielski @param aPropertyNames 113*b1cdbd2cSJim Jagielski specifies the names of the properties. 114*b1cdbd2cSJim Jagielski The property names must be sorted ascending. 115*b1cdbd2cSJim Jagielski 116*b1cdbd2cSJim Jagielski <p>If the names are not sorted the behaviour of the method 117*b1cdbd2cSJim Jagielski is undefined!</p> 118*b1cdbd2cSJim Jagielski 119*b1cdbd2cSJim Jagielski @returns 120*b1cdbd2cSJim Jagielski a sequence of type 121*b1cdbd2cSJim Jagielski <type scope="com::sun::star::beans">GetPropertyTolerantResult</type> 122*b1cdbd2cSJim Jagielski for each of the properties listed in <var>aPropertyNames</var>. 123*b1cdbd2cSJim Jagielski */ 124*b1cdbd2cSJim Jagielski sequence< com::sun::star::beans::GetPropertyTolerantResult > getPropertyValuesTolerant( 125*b1cdbd2cSJim Jagielski [in] sequence< string > aPropertyNames ); 126*b1cdbd2cSJim Jagielski 127*b1cdbd2cSJim Jagielski 128*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 129*b1cdbd2cSJim Jagielski 130*b1cdbd2cSJim Jagielski /** retrieve only those values of the specified properties which 131*b1cdbd2cSJim Jagielski are direct values. 132*b1cdbd2cSJim Jagielski 133*b1cdbd2cSJim Jagielski <p>Since the count of returned elements may be different from 134*b1cdbd2cSJim Jagielski the number of supplied property names the returned elements 135*b1cdbd2cSJim Jagielski will also state the name of the property.</p> 136*b1cdbd2cSJim Jagielski 137*b1cdbd2cSJim Jagielski @param aPropertyNames 138*b1cdbd2cSJim Jagielski specifies the names of the properties. 139*b1cdbd2cSJim Jagielski The property names must be sorted ascending. 140*b1cdbd2cSJim Jagielski 141*b1cdbd2cSJim Jagielski <p>If the names are not sorted the behaviour of the method 142*b1cdbd2cSJim Jagielski is undefined!</p> 143*b1cdbd2cSJim Jagielski 144*b1cdbd2cSJim Jagielski @returns 145*b1cdbd2cSJim Jagielski a sequence of type 146*b1cdbd2cSJim Jagielski <type scope="com::sun::star::beans">GetDirectPropertyTolerantResult</type> 147*b1cdbd2cSJim Jagielski but only for those properties supplied whoms state is 148*b1cdbd2cSJim Jagielski <member scope="com::sun::star::beans::PropertyState">DIRECT_VALUE</member>. 149*b1cdbd2cSJim Jagielski */ 150*b1cdbd2cSJim Jagielski sequence< com::sun::star::beans::GetDirectPropertyTolerantResult > getDirectPropertyValuesTolerant( 151*b1cdbd2cSJim Jagielski [in] sequence< string > aPropertyNames ); 152*b1cdbd2cSJim Jagielski 153*b1cdbd2cSJim Jagielski}; 154*b1cdbd2cSJim Jagielski 155*b1cdbd2cSJim Jagielski//============================================================================= 156*b1cdbd2cSJim Jagielski 157*b1cdbd2cSJim Jagielski}; }; }; }; 158*b1cdbd2cSJim Jagielski 159*b1cdbd2cSJim Jagielski#endif 160*b1cdbd2cSJim Jagielski 161