| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| #ifndef __com_sun_star_ucb_WebDAVContentProvider_idl__ |
| #define __com_sun_star_ucb_WebDAVContentProvider_idl__ |
| |
| #ifndef __com_sun_star_ucb_XContentProvider_idl__ |
| #include <com/sun/star/ucb/XContentProvider.idl> |
| #endif |
| |
| //============================================================================= |
| |
| module com { module sun { module star { module ucb { |
| |
| //============================================================================= |
| /** The WebDAV Content Provider (DCP) implements a <type>ContentProvider</type> |
| for the <type>UniversalContentBroker</type> (UCB). |
| |
| <p>It provides access to WebDAV and standard HTTP servers. The DCP |
| communicates with the server using the WebDAV protocol which is an |
| extention to the HTTP protocol or using the plain HTTP protocol in case |
| the server is not WebDAV enabled. |
| |
| @see com::sun::star::ucb::Content |
| */ |
| published service WebDAVContentProvider |
| { |
| //------------------------------------------------------------------------- |
| /** provides two types of content: a Folder or Document which corresponds |
| to a collection or non-collection (nodes and leafs) in WebDAV |
| respectively. |
| |
| <p> |
| |
| <b>DCP Contents</b> |
| <ol> |
| <li> |
| A DCP Folder (<type>WebDAVFolderContent</type>) is a container for |
| other DCP Folders or Documents. |
| </li> |
| <li> |
| A DCP Document (<type>WebDAVDocumentContent</type>) is a container for |
| Document data/content. The data/content may be anything, a WebDAV |
| server, like an HTTP server, does not necessarily mandate what type of |
| data/content may be contained within Documents. The type of data/content |
| is defined by the MediaType property which is different from the content |
| type returned from the getContentType method. The MediaType property is |
| mapped to the equivalent WebDAV property and the WebDAV server |
| calculates the value. |
| </li> |
| </ol> |
| |
| <p><b>URL Scheme for DCP Contents</b> |
| |
| <p>Each DCP content has an identifier corresponding to the following |
| scheme: |
| |
| <ul> |
| <li> |
| vnd.sun.star.webdav://host:port/<path> where <path> is |
| a hierarchical path of the form <name>/.../<name> and |
| where <name> is a string encoded according to the URL |
| conventions. |
| </li> |
| </ul> |
| |
| <p>It is also possible to use standard HTTP-URLs. In this case the |
| implementation will determine by itself, if the requested resource |
| is DAV enabled. |
| |
| <p>Examples: |
| |
| <ul> |
| <li> |
| vnd.sun.star.webdav://localhost/davhome/ ( a DAV collection ) |
| </li> |
| <li> |
| vnd.sun.star.webdav://dav.foo.com/Documents/report.sdw |
| </li> |
| <li> |
| http://dav.foo.com/Documents/report.sdw |
| </li> |
| </ul> |
| |
| </p> |
| */ |
| interface com::sun::star::ucb::XContentProvider; |
| }; |
| |
| //============================================================================= |
| |
| }; }; }; }; |
| |
| #endif |