diff options
author | Kai Sommerfeld <kso@openoffice.org> | 2009-11-12 15:22:00 +0100 |
---|---|---|
committer | Kai Sommerfeld <kso@openoffice.org> | 2009-11-12 15:22:00 +0100 |
commit | b4caf963700645e0cf9c1a77461929f0887708f2 (patch) | |
tree | 9ec45d67b59f0593b5b00c781e00e49090111365 /offapi/com/sun/star/ucb | |
parent | 71d19002cdca4723f8dc523532c25a003fbab8b4 (diff) |
#i106830# WebDAV locking support for UCB
Diffstat (limited to 'offapi/com/sun/star/ucb')
6 files changed, 267 insertions, 4 deletions
diff --git a/offapi/com/sun/star/ucb/Content.idl b/offapi/com/sun/star/ucb/Content.idl index 2e8f68067883..5d363f9d880a 100644 --- a/offapi/com/sun/star/ucb/Content.idl +++ b/offapi/com/sun/star/ucb/Content.idl @@ -137,7 +137,7 @@ published service Content [parameter type and name] ----------------------------------------------------------------------- - Requiered commands: + Mandatory commands: ----------------------------------------------------------------------- // This command obtains an interface which allows to query @@ -218,7 +218,7 @@ published service Content // sequence is the same as the order of result set // columns. First element of sequence will be row // number one, second will be row number two, ... - // SortingInfo : contains sort criteria, if result set shall + // SortingInfo : contains sort criteria, if result set shall // be sorted, otherwise it can be left empty. // // The exceution must be aborted by the implementation of this command @@ -236,12 +236,12 @@ published service Content // // Mode : DOCUMENT or DOCUMENT_SHARE_DENY_NONE or // DOCUMENT_SHARE_DENY_WRITE. Support for DOCUMENT - // is mandatory, all others are optional. + // is mandatory, all others are optional. // Priority : can be set, but implementation may ignore the value // Sink : a sink, where the implementation can put the // document data into. // Properties : empty ( ignored ) - // SortingInfo : empty ( ignored ) + // SortingInfo : empty ( ignored ) // // The exceution must be aborted by the implementation of this command // (by throwing a <type>CommandAbortedException</type>), if an @@ -366,6 +366,27 @@ published service Content <B>transfer</B> <type>TransferInfo</type> aTransferInfo + // This command obtains an exlusive write lock for the resource. The + // lock is active until command "unlock" is executed or the OOo + // session that obtained the lock ends or until the lock is released by + // a third party (e.g. a system administrator). + void + <B>lock</B> + void + Exceptions: <type>InteractiveLockingLockedException</type> + <type>InteractiveLockingLockExpiredException</type> + + // This command removes a lock obtained by executing the command "lock" + // from the resource. + void + <B>unlock</B> + void + Exceptions: <type>InteractiveLockingNotLockedException</type> + <type>InteractiveLockingLockExpiredException</type> + + // Note that <type>InteractiveLockingLockExpiredException</type> might + // be raised by any command that requires a previously obtained lock. + ======================================================================= Properties: ======================================================================= diff --git a/offapi/com/sun/star/ucb/InteractiveLockingException.idl b/offapi/com/sun/star/ucb/InteractiveLockingException.idl new file mode 100644 index 000000000000..8d96358566fa --- /dev/null +++ b/offapi/com/sun/star/ucb/InteractiveLockingException.idl @@ -0,0 +1,61 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: $ + * $Revision: $ + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org 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 version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_ucb_InteractiveLockingException_idl__ +#define __com_sun_star_ucb_InteractiveLockingException_idl__ + +#ifndef __com_sun_star_task_ClassifiedInteractionRequest_idl__ +#include <com/sun/star/task/ClassifiedInteractionRequest.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module ucb { + +//============================================================================= +/** An error related to locking operations. + + <p> Various meaningful errors are derived from this exception. </p> + + @since OOo 3.3 +*/ +/*published*/ exception InteractiveLockingException : com::sun::star::task::ClassifiedInteractionRequest +{ + //------------------------------------------------------------------------- + /** The Url of the resource this exception is related to. + */ + string Url; +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/ucb/InteractiveLockingLockExpiredException.idl b/offapi/com/sun/star/ucb/InteractiveLockingLockExpiredException.idl new file mode 100644 index 000000000000..63ddfa58bf2f --- /dev/null +++ b/offapi/com/sun/star/ucb/InteractiveLockingLockExpiredException.idl @@ -0,0 +1,56 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: $ + * $Revision: $ + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org 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 version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_ucb_InteractiveLockingLockExpiredException_idl__ +#define __com_sun_star_ucb_InteractiveLockingLockExpiredException_idl__ + +#ifndef __com_sun_star_ucb_InteractiveLockingException_idl__ +#include <com/sun/star/ucb/InteractiveLockingException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module ucb { + +//============================================================================= +/** An error indicating that a lock that has been previously obtained by this + OOo session has expired. + + @since OOo 3.3 +*/ +/*published*/ exception InteractiveLockingLockExpiredException : com::sun::star::ucb::InteractiveLockingException +{ +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/ucb/InteractiveLockingLockedException.idl b/offapi/com/sun/star/ucb/InteractiveLockingLockedException.idl new file mode 100644 index 000000000000..33f309ec0b81 --- /dev/null +++ b/offapi/com/sun/star/ucb/InteractiveLockingLockedException.idl @@ -0,0 +1,62 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: $ + * $Revision: $ + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org 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 version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_ucb_InteractiveLockingLockedException_idl__ +#define __com_sun_star_ucb_InteractiveLockingLockedException_idl__ + +#ifndef __com_sun_star_ucb_InteractiveLockingException_idl__ +#include <com/sun/star/ucb/InteractiveLockingException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module ucb { + +//============================================================================= +/** An error indicating that the resource is locked. + + @since OOo 3.3 +*/ +/*published*/ exception InteractiveLockingLockedException : com::sun::star::ucb::InteractiveLockingException +{ + //------------------------------------------------------------------------- + /** The owner of the lock. + + <true/>, the lock has been obtained by this OOo session. + <false/> the lock has been obtained by another principal. + */ + boolean SelfOwned; +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/ucb/InteractiveLockingNotLockedException.idl b/offapi/com/sun/star/ucb/InteractiveLockingNotLockedException.idl new file mode 100644 index 000000000000..88d587b4cb24 --- /dev/null +++ b/offapi/com/sun/star/ucb/InteractiveLockingNotLockedException.idl @@ -0,0 +1,59 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2008 by Sun Microsystems, Inc. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * $RCSfile: $ + * $Revision: $ + * + * This file is part of OpenOffice.org. + * + * OpenOffice.org is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 3 + * only, as published by the Free Software Foundation. + * + * OpenOffice.org 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 version 3 for more details + * (a copy is included in the LICENSE file that accompanied this code). + * + * You should have received a copy of the GNU Lesser General Public License + * version 3 along with OpenOffice.org. If not, see + * <http://www.openoffice.org/license.html> + * for a copy of the LGPLv3 License. + * + ************************************************************************/ +#ifndef __com_sun_star_ucb_InteractiveLockingNotLockedException_idl__ +#define __com_sun_star_ucb_InteractiveLockingNotLockedException_idl__ + +#ifndef __com_sun_star_ucb_InteractiveLockingException_idl__ +#include <com/sun/star/ucb/InteractiveLockingException.idl> +#endif + + +//============================================================================= + +module com { module sun { module star { module ucb { + +//============================================================================= +/** An error indicating that the resource is not locked. + + <p>This error for instance can occure when trying to unlock a resource + that is not locked. + </p> + + @since OOo 3.3 +*/ +/*published*/ exception InteractiveLockingNotLockedException : com::sun::star::ucb::InteractiveLockingException +{ +}; + +//============================================================================= + +}; }; }; }; + +#endif diff --git a/offapi/com/sun/star/ucb/makefile.mk b/offapi/com/sun/star/ucb/makefile.mk index fc6aed3640a4..573453e554e5 100644 --- a/offapi/com/sun/star/ucb/makefile.mk +++ b/offapi/com/sun/star/ucb/makefile.mk @@ -124,6 +124,10 @@ IDLFILES=\ InteractiveCHAOSException.idl\ InteractiveFileIOException.idl\ InteractiveIOException.idl\ + InteractiveLockingException.idl\ + InteractiveLockingLockedException.idl\ + InteractiveLockingLockExpiredException.idl\ + InteractiveLockingNotLockedException.idl\ InteractiveNetworkConnectException.idl\ InteractiveNetworkException.idl\ InteractiveNetworkGeneralException.idl\ |