1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
21 module com
{ module sun
{ module star
{ module ucb
{
23 /** A DCP Folder is a container for other DCP Folders or Documents.
25 @see com::sun::star::ucb::WebDAVContentProvider
26 @see com::sun::star::ucb::WebDAVDocumentContent
28 published service WebDAVFolderContent
30 /** This interface is implemented according to the specification of
33 interface com
::sun
::star
::lang
::XComponent
;
35 /** This interface is implemented according to the specification of
38 interface com
::sun
::star
::ucb
::XContent
;
40 /** This interface is implemented according to the specification of
45 <b>Supported Commands</b>
60 insert ( makes a newly created folder persistent )
69 transfer ( only transfers from DCP Folders/DCP Documents to other
70 DCP folders. Source and target must reside on the same server. )
74 <b>Supported Properties</b>
77 string ContentType ( read-only, always "application/vnd.sun.star.webdav-collection" )
80 boolean IsDocument ( read-only, always false )
83 boolean IsFolder ( read-only, always true )
86 com::sun::star::util::DateTime DateCreated ( read-only )
89 com::sun::star::util::DateTime DateModified ( read-only )
95 string Size ( read-only, always zero )
104 interface com
::sun
::star
::ucb
::XCommandProcessor
;
106 /** is an enhanced version of XCommandProcessor that has an
107 additional method for releasing command identifiers obtained via
108 XCommandProcessor::createCommandIdentifier() to avoid
109 resource leaks. For a detailed description of the problem refer to
110 XCommandProcessor2::releaseCommandIdentifier().
112 <p>Where many existing Content implementations do not
113 (yet), every new implementation should support this interface.
115 [optional] interface com
::sun
::star
::ucb
::XCommandProcessor2
;
117 /** This interface is implemented according to the specification of
120 interface com
::sun
::star
::beans
::XPropertiesChangeNotifier
;
122 /** This interface is implemented according to the specification of
125 interface com
::sun
::star
::beans
::XPropertyContainer
;
127 /** This interface is implemented according to the specification of
130 interface com
::sun
::star
::beans
::XPropertySetInfoChangeNotifier
;
132 /** This interface is implemented according to the specification of
135 interface com
::sun
::star
::ucb
::XCommandInfoChangeNotifier
;
137 /** This interface is implemented according to the specification of
140 interface com
::sun
::star
::container
::XChild
;
142 /** This interface is implemented according to the specification of
147 A DCP Folder can create other DCP Folders and DCP Documents. To create
148 a new child of a PCP Folder:
152 Let the parent folder create a new content by calling
153 XContentCreator::createNewContent() on it. The content
154 type to use for new folders is
155 "application/vnd.sun.star.webdav-collection". To create a new DCP
156 Document, use the type "application/http-content".
159 Set a title at the new folder / document. ( Let the new child execute
160 the command "setPropertyValues", which sets at least the property
161 "Title" to a non-empty value ).
164 Let the new child ( not the parent! ) execute the command "insert".
165 This will commit the creation process and persist the newly created
166 content on the server. For documents, you need to supply the
167 implementation of a com::sun::star::io::XInputStream
168 with the command's parameters, that provides access to the stream data.
174 interface com
::sun
::star
::ucb
::XContentCreator
;
180 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */