summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/ucb/XCommandProcessor.idl
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/ucb/XCommandProcessor.idl')
-rw-r--r--offapi/com/sun/star/ucb/XCommandProcessor.idl153
1 files changed, 153 insertions, 0 deletions
diff --git a/offapi/com/sun/star/ucb/XCommandProcessor.idl b/offapi/com/sun/star/ucb/XCommandProcessor.idl
new file mode 100644
index 000000000000..09125723d816
--- /dev/null
+++ b/offapi/com/sun/star/ucb/XCommandProcessor.idl
@@ -0,0 +1,153 @@
+/*************************************************************************
+ *
+ * $RCSfile: XCommandProcessor.idl,v $
+ *
+ * $Revision: 1.1 $
+ *
+ * last change: $Author: mi $ $Date: 2000-11-06 09:22:31 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (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.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_ucb_XCommandProcessor_idl__
+#define __com_sun_star_ucb_XCommandProcessor_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_ucb_XCommandEnvironment_idl__
+#include <com/sun/star/ucb/XCommandEnvironment.idl>
+#endif
+
+#ifndef __com_sun_star_ucb_Command_idl__
+#include <com/sun/star/ucb/Command.idl>
+#endif
+
+#ifndef __com_sun_star_ucb_CommandAbortedException_idl__
+#include <com/sun/star/ucb/CommandAbortedException.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module ucb {
+
+//=============================================================================
+/** defines a processor for synchronous commands, which are executed in a
+ specific execution environment.
+
+ @version 1.0
+ @author Kai Sommerfeld
+ @see Command
+ @see XCommandEnvironment
+*/
+[ uik(F4CAAD40-00A5-11d4-9F980050-04526AC8), ident( "XCommandProcessor", 1.0 ) ]
+interface XCommandProcessor : com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** creates a unique identifier for a command, which can be used to
+ abort the execution of the command accociated with that identifier.
+ Note that it is generally not necessary to obtain a new id for each
+ command, because commands are executed synchronously. So the id
+ for a command is valid again after a command previously associated
+ with this id has finished. In fact you only should get one identifier
+ per thread and assign it to every command executed by that thread.
+ */
+ long createCommandIdentifier();
+
+ //-------------------------------------------------------------------------
+ /** executes a command.
+
+ @param aCommand
+ The command to execute.
+
+ @param CommandId
+ A unique id for the command. This identifier was obtained by calling
+ <type>XCommandProcessor::createCommandIdentifier</type>. A value of
+ Zero can be used, if the command never shall be aborted.
+
+ @param Environment
+ The execution environment.
+
+ @return
+ The result according to the specification of the command.
+
+ @exception CommandAbortedException
+ thrown to indicate that the command was aborted.
+
+ @exception Exception
+ Different exceptions are thrown to indicate errors during
+ execution of the command.
+
+ */
+ any execute( [in] Command aCommand,
+ [in] long CommandId,
+ [in] XCommandEnvironment Environment )
+ raises ( com::sun::star::uno::Exception, CommandAbortedException );
+
+ //-------------------------------------------------------------------------
+ /** ends the command associated with the given id.
+
+ @param CommandId
+ A unique id for the command to abort. This must be the identifier
+ passed to <type>XCommandProcessor::execute</type> for the command
+ to abort.
+ */
+ [oneway] void abort( [in] long CommandId );
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif