1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 28#ifndef __com_sun_star_ucb_XCommandProcessor2_idl__ 29#define __com_sun_star_ucb_XCommandProcessor2_idl__ 30 31#ifndef __com_sun_star_ucb_XCommandProcessor_idl__ 32#include <com/sun/star/ucb/XCommandProcessor.idl> 33#endif 34 35module com { module sun { module star { module ucb { 36 37//============================================================================ 38/** An improved version of a 39 <type scope="com::sun::star::ucb">XCommandProcessor</type> that helps avoid 40 ever-increasing resource consumption. 41 */ 42published interface XCommandProcessor2: com::sun::star::ucb::XCommandProcessor 43{ 44 //------------------------------------------------------------------------ 45 /** releases a command identifier obtainded through 46 <member>XCommandProcessor::createCommandIdentifier</member> when it is 47 no longer used. 48 49 <p>After this call the command identifier cannot be used any longer in 50 calls to <member>XCommandProcessor::execute</member> and 51 <member>XCommandProcessor::abort</member>. (But it can happen that a 52 call to <member>XCommandProcessor::createCommandIdentifier</member> 53 reuses this identifier.)</p> 54 55 @param CommandId 56 A command identifier obtained through 57 <member>XCommandProcessor::createCommandIdentifier</member>. If the 58 identifier is zero, the request is silently ignored; but if the 59 identifier is invalid (not obtained via 60 <member>XCommandProcessor::createCommandIdentifier</member> or already 61 handed to <member>XCommandProcessor2::releaseCommandIdentifier</member> 62 before), the behaviour is undefined. 63 */ 64 [oneway] void releaseCommandIdentifier([in] long CommandId); 65}; 66 67}; }; }; }; 68 69#endif 70