Update ooo320-m1
[ooovba.git] / offapi / com / sun / star / ucb / WebDAVDocumentContent.idl
blobcb9cb9f81b30a1ec1342b09f132d995b2f0d8089
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: WebDAVDocumentContent.idl,v $
10 * $Revision: 1.9 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef __com_sun_star_ucb_WebDAVDocumentContent_idl__
31 #define __com_sun_star_ucb_WebDAVDocumentContent_idl__
33 #ifndef __com_sun_star_lang_XComponent_idl__
34 #include <com/sun/star/lang/XComponent.idl>
35 #endif
37 #ifndef __com_sun_star_ucb_XContent_idl__
38 #include <com/sun/star/ucb/XContent.idl>
39 #endif
41 #ifndef __com_sun_star_ucb_XCommandProcessor_idl__
42 #include <com/sun/star/ucb/XCommandProcessor.idl>
43 #endif
45 #ifndef __com_sun_star_ucb_XCommandProcessor2_idl__
46 #include <com/sun/star/ucb/XCommandProcessor2.idl>
47 #endif
49 #ifndef __com_sun_star_beans_XPropertiesChangeNotifier_idl__
50 #include <com/sun/star/beans/XPropertiesChangeNotifier.idl>
51 #endif
53 #ifndef __com_sun_star_beans_XPropertyContainer_idl__
54 #include <com/sun/star/beans/XPropertyContainer.idl>
55 #endif
57 #ifndef __com_sun_star_beans_XPropertySetInfoChangeNotifier_idl__
58 #include <com/sun/star/beans/XPropertySetInfoChangeNotifier.idl>
59 #endif
61 #ifndef __com_sun_star_ucb_XCommandInfoChangeNotifier_idl__
62 #include <com/sun/star/ucb/XCommandInfoChangeNotifier.idl>
63 #endif
65 #ifndef __com_sun_star_container_XChild_idl__
66 #include <com/sun/star/container/XChild.idl>
67 #endif
69 //=============================================================================
71 module com { module sun { module star { module ucb {
73 //=============================================================================
74 /** A DCP Document is a container for Document data/content.
76 <p>The data/content may be anything, a WebDAV server, like an HTTP server,
77 does not necessarily mandate what type of data/content may be contained
78 within Documents. The type of data/content is defined by the MediaType
79 property which is different from the content type returned from the
80 <member>XContent::getContentType</member> method. The MediaType property
81 is mapped to the equivalent WebDAV property and the WebDAV server calculates
82 the value.
84 @see com::sun::star::ucb::WebDAVContentProvider
85 @see com::sun::star::ucb::WebDAVFolderContent
87 published service WebDAVDocumentContent
89 //-------------------------------------------------------------------------
90 /** This interface is implemented according to the specification of
91 service <type>Content</type>.
93 interface com::sun::star::lang::XComponent;
95 //-------------------------------------------------------------------------
96 /** This interface is implemented according to the specification of
97 service <type>Content</type>.
99 interface com::sun::star::ucb::XContent;
101 //-------------------------------------------------------------------------
102 /** This interface is implemented according to the specification of
103 service <type>Content</type>.
107 <b>Supported Commands</b>
108 <ul>
109 <li>
110 getCommandInfo
111 </li>
112 <li>
113 getPropertySetInfo
114 </li>
115 <li>
116 getPropertyValues
117 </li>
118 <li>
119 setPropertyValues
120 </li>
121 <li>
122 insert ( makes a newly created document persistent )
123 </li>
124 <li>
125 delete
126 </li>
127 <li>
128 open
129 </li>
130 <li>
131 post ( Argument: <type>PostCommandArgument2</type> - does a HTTP POST )
132 </li>
133 </ul>
135 <b>Supported Properties</b>
136 <ul>
137 <li>
138 string ContentType ( read-only, always "application/http-content" )
139 </li>
140 <li>
141 boolean IsDocument ( read-only, always true )
142 </li>
143 <li>
144 boolean IsFolder ( read-only, always false )
145 </li>
146 <li>
147 <type scope="com::sun::star::util">DateTime</type> DateCreated ( read-only )
148 </li>
149 <li>
150 <type scope="com::sun::star::util">DateTime</type> DateModified ( read-only )
151 </li>
152 <li>
153 string MediaType ( read-only, the MIME type - as delivered by the server )
154 </li>
155 <li>
156 string Size ( read-only )
157 </li>
158 <li>
159 string Title
160 </li>
161 </ul>
163 </p>
165 interface com::sun::star::ucb::XCommandProcessor;
167 //-------------------------------------------------------------------------
168 /** is an enhanced version of <type>XCommandProcessor</type> that has an
169 additional method for releasing command identifiers obtained via
170 <member>XCommandProcessor::createCommandIdentifier</member> to avoid
171 resource leaks. For a detailed description of the problem refer to
172 <member>XCommandProcessor2::releaseCommandIdentifier</member>.
174 <p>Where many existing <type>Content</type> implementations do not
175 (yet), every new implementation should support this interface.
177 [optional] interface com::sun::star::ucb::XCommandProcessor2;
179 //-------------------------------------------------------------------------
180 /** This interface is implemented according to the specification of
181 service <type>Content</type>.
183 interface com::sun::star::beans::XPropertiesChangeNotifier;
185 //-------------------------------------------------------------------------
186 /** This interface is implemented according to the specification of
187 service <type>Content</type>.
189 interface com::sun::star::beans::XPropertyContainer;
191 //-------------------------------------------------------------------------
192 /** This interface is implemented according to the specification of
193 service <type>Content</type>.
195 interface com::sun::star::beans::XPropertySetInfoChangeNotifier;
197 //-------------------------------------------------------------------------
198 /** This interface is implemented according to the specification of
199 service <type>Content</type>.
201 interface com::sun::star::ucb::XCommandInfoChangeNotifier;
203 //-------------------------------------------------------------------------
204 /** This interface is implemented according to the specification of
205 service <type>Content</type>.
207 interface com::sun::star::container::XChild;
210 //=============================================================================
212 }; }; }; };
214 #endif