Line data Source code
1 : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : /*************************************************************************
3 : *
4 : * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 : *
6 : * Copyright 2000, 2010 Oracle and/or its affiliates.
7 : *
8 : * OpenOffice.org - a multi-platform office productivity suite
9 : *
10 : * This file is part of OpenOffice.org.
11 : *
12 : * OpenOffice.org is free software: you can redistribute it and/or modify
13 : * it under the terms of the GNU Lesser General Public License version 3
14 : * only, as published by the Free Software Foundation.
15 : *
16 : * OpenOffice.org is distributed in the hope that it will be useful,
17 : * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 : * GNU Lesser General Public License version 3 for more details
20 : * (a copy is included in the LICENSE file that accompanied this code).
21 : *
22 : * You should have received a copy of the GNU Lesser General Public License
23 : * version 3 along with OpenOffice.org. If not, see
24 : * <http://www.openoffice.org/license.html>
25 : * for a copy of the LGPLv3 License.
26 : *
27 : ************************************************************************/
28 :
29 : #ifndef _DAVTYPES_HXX_
30 : #define _DAVTYPES_HXX_
31 :
32 : #include <rtl/ustring.hxx>
33 : #include <com/sun/star/uno/Any.hxx>
34 :
35 : namespace webdav_ucp
36 : {
37 : /* RFC 2518
38 :
39 : 15.1 Class 1
40 :
41 : A class 1 compliant resource MUST meet all "MUST" requirements in all
42 : sections of this document.
43 :
44 : Class 1 compliant resources MUST return, at minimum, the value "1" in
45 : the DAV header on all responses to the OPTIONS method.
46 :
47 : 15.2 Class 2
48 :
49 : A class 2 compliant resource MUST meet all class 1 requirements and
50 : support the LOCK method, the supportedlock property, the
51 : lockdiscovery property, the Time-Out response header and the Lock-
52 : Token request header. A class "2" compliant resource SHOULD also
53 : support the Time-Out request header and the owner XML element.
54 :
55 : Class 2 compliant resources MUST return, at minimum, the values "1"
56 : and "2" in the DAV header on all responses to the OPTIONS method.
57 : */
58 :
59 : struct DAVCapabilities
60 : {
61 : bool class1;
62 : bool class2;
63 : bool executable; // supports "executable" property (introduced by mod_dav)
64 :
65 : DAVCapabilities() : class1( false ), class2( false ), executable( false ) {}
66 : };
67 :
68 : enum Depth { DAVZERO = 0, DAVONE = 1, DAVINFINITY = -1 };
69 :
70 : enum ProppatchOperation { PROPSET = 0, PROPREMOVE = 1 };
71 :
72 0 : struct ProppatchValue
73 : {
74 : ProppatchOperation operation;
75 : rtl::OUString name;
76 : com::sun::star::uno::Any value;
77 :
78 0 : ProppatchValue( const ProppatchOperation o,
79 : const rtl::OUString & n,
80 : const com::sun::star::uno::Any & v )
81 0 : : operation( o ), name( n ), value( v ) {}
82 : };
83 :
84 : } // namespace webdav_ucp
85 :
86 : #endif // _DAVTYPES_HXX_
87 :
88 : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|