merged tag ooo/OOO330_m14
[LibreOffice.git] / offapi / com / sun / star / ucb / WebDAVDocumentContent.idl
blob7fbfd36ebdb9e5dfd2996b583069d7d1c6642922
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
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.
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).
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.
26 ************************************************************************/
27 #ifndef __com_sun_star_ucb_WebDAVDocumentContent_idl__
28 #define __com_sun_star_ucb_WebDAVDocumentContent_idl__
30 #ifndef __com_sun_star_lang_XComponent_idl__
31 #include <com/sun/star/lang/XComponent.idl>
32 #endif
34 #ifndef __com_sun_star_ucb_XContent_idl__
35 #include <com/sun/star/ucb/XContent.idl>
36 #endif
38 #ifndef __com_sun_star_ucb_XCommandProcessor_idl__
39 #include <com/sun/star/ucb/XCommandProcessor.idl>
40 #endif
42 #ifndef __com_sun_star_ucb_XCommandProcessor2_idl__
43 #include <com/sun/star/ucb/XCommandProcessor2.idl>
44 #endif
46 #ifndef __com_sun_star_beans_XPropertiesChangeNotifier_idl__
47 #include <com/sun/star/beans/XPropertiesChangeNotifier.idl>
48 #endif
50 #ifndef __com_sun_star_beans_XPropertyContainer_idl__
51 #include <com/sun/star/beans/XPropertyContainer.idl>
52 #endif
54 #ifndef __com_sun_star_beans_XPropertySetInfoChangeNotifier_idl__
55 #include <com/sun/star/beans/XPropertySetInfoChangeNotifier.idl>
56 #endif
58 #ifndef __com_sun_star_ucb_XCommandInfoChangeNotifier_idl__
59 #include <com/sun/star/ucb/XCommandInfoChangeNotifier.idl>
60 #endif
62 #ifndef __com_sun_star_container_XChild_idl__
63 #include <com/sun/star/container/XChild.idl>
64 #endif
66 //=============================================================================
68 module com { module sun { module star { module ucb {
70 //=============================================================================
71 /** A DCP Document is a container for Document data/content.
73 <p>The data/content may be anything, a WebDAV server, like an HTTP server,
74 does not necessarily mandate what type of data/content may be contained
75 within Documents. The type of data/content is defined by the MediaType
76 property which is different from the content type returned from the
77 <member>XContent::getContentType</member> method. The MediaType property
78 is mapped to the equivalent WebDAV property and the WebDAV server calculates
79 the value.
81 @see com::sun::star::ucb::WebDAVContentProvider
82 @see com::sun::star::ucb::WebDAVFolderContent
84 published service WebDAVDocumentContent
86 //-------------------------------------------------------------------------
87 /** This interface is implemented according to the specification of
88 service <type>Content</type>.
90 interface com::sun::star::lang::XComponent;
92 //-------------------------------------------------------------------------
93 /** This interface is implemented according to the specification of
94 service <type>Content</type>.
96 interface com::sun::star::ucb::XContent;
98 //-------------------------------------------------------------------------
99 /** This interface is implemented according to the specification of
100 service <type>Content</type>.
104 <b>Supported Commands</b>
105 <ul>
106 <li>
107 getCommandInfo
108 </li>
109 <li>
110 getPropertySetInfo
111 </li>
112 <li>
113 getPropertyValues
114 </li>
115 <li>
116 setPropertyValues
117 </li>
118 <li>
119 insert ( makes a newly created document persistent )
120 </li>
121 <li>
122 delete
123 </li>
124 <li>
125 open
126 </li>
127 <li>
128 post ( Argument: <type>PostCommandArgument2</type> - does a HTTP POST )
129 </li>
130 </ul>
132 <b>Supported Properties</b>
133 <ul>
134 <li>
135 string ContentType ( read-only, always "application/http-content" )
136 </li>
137 <li>
138 boolean IsDocument ( read-only, always true )
139 </li>
140 <li>
141 boolean IsFolder ( read-only, always false )
142 </li>
143 <li>
144 <type scope="com::sun::star::util">DateTime</type> DateCreated ( read-only )
145 </li>
146 <li>
147 <type scope="com::sun::star::util">DateTime</type> DateModified ( read-only )
148 </li>
149 <li>
150 string MediaType ( read-only, the MIME type - as delivered by the server )
151 </li>
152 <li>
153 string Size ( read-only )
154 </li>
155 <li>
156 string Title
157 </li>
158 </ul>
160 </p>
162 interface com::sun::star::ucb::XCommandProcessor;
164 //-------------------------------------------------------------------------
165 /** is an enhanced version of <type>XCommandProcessor</type> that has an
166 additional method for releasing command identifiers obtained via
167 <member>XCommandProcessor::createCommandIdentifier</member> to avoid
168 resource leaks. For a detailed description of the problem refer to
169 <member>XCommandProcessor2::releaseCommandIdentifier</member>.
171 <p>Where many existing <type>Content</type> implementations do not
172 (yet), every new implementation should support this interface.
174 [optional] interface com::sun::star::ucb::XCommandProcessor2;
176 //-------------------------------------------------------------------------
177 /** This interface is implemented according to the specification of
178 service <type>Content</type>.
180 interface com::sun::star::beans::XPropertiesChangeNotifier;
182 //-------------------------------------------------------------------------
183 /** This interface is implemented according to the specification of
184 service <type>Content</type>.
186 interface com::sun::star::beans::XPropertyContainer;
188 //-------------------------------------------------------------------------
189 /** This interface is implemented according to the specification of
190 service <type>Content</type>.
192 interface com::sun::star::beans::XPropertySetInfoChangeNotifier;
194 //-------------------------------------------------------------------------
195 /** This interface is implemented according to the specification of
196 service <type>Content</type>.
198 interface com::sun::star::ucb::XCommandInfoChangeNotifier;
200 //-------------------------------------------------------------------------
201 /** This interface is implemented according to the specification of
202 service <type>Content</type>.
204 interface com::sun::star::container::XChild;
207 //=============================================================================
209 }; }; }; };
211 #endif