1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 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. 14 * 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). 20 * 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. 25 * 26 ************************************************************************/ 27#ifndef __com_sun_star_ucb_HierarchyContentProvider_idl__ 28#define __com_sun_star_ucb_HierarchyContentProvider_idl__ 29 30#ifndef __com_sun_star_ucb_XContentProvider_idl__ 31#include <com/sun/star/ucb/XContentProvider.idl> 32#endif 33 34//============================================================================= 35 36module com { module sun { module star { module ucb { 37 38//============================================================================= 39/** The Hierarchy Content Provider (HCP) implements a 40 <type>ContentProvider</type> for the <type>UniversalContentBroker</type> 41 (UCB). 42 43 <p>It provides access to a persistent, customizable hierarchy of contents 44 (folders and links). 45 46 @see com::sun::star::ucb::Content 47*/ 48published service HierarchyContentProvider 49{ 50 //------------------------------------------------------------------------- 51 /** provides three types of contents: Link, Folder and Root Folder. 52 53 <p> 54 55 <b>HCP Contents</b> 56 <ol> 57 <li> 58 A HCP Link (<type>HierarchyLinkContent</type>) is a content which 59 points to another (UCB) content. It is always contained in HCP Folder. 60 A HCP Link has no children. 61 </li> 62 <li> 63 A HCP Folder (<type>HierarchyFolderContent</type>) is a container for 64 other HCP Folders and HCP Links. 65 </li> 66 <li> 67 There is at most one instance of a HCP Root Folder 68 ( <type>HierarchyRootFolderContent</type> ) at a time. 69 All other HCP contents are children of this folder. The HCP Root 70 Folder can contain HCP Folders and HCP Links. It has the URL 71 "vnd.sun.star.hier:/". 72 </li> 73 </ol> 74 75 <p><b>URL Scheme for HCP Contents</b> 76 77 <p>Each HCP content has an identifier corresponding to the following 78 scheme: 79 80 <ul> 81 <li> 82 vnd.sun.star.hier:/<path>, where <path> is a 83 hierarchical path of the form <name>/.../<name> and 84 where <name> is a string encoded according to the URL 85 conventions. 86 </li> 87 </ul> 88 89 <p>Examples: 90 91 <ul> 92 <li> 93 vnd.sun.star.hier:/ (The URL of the HCP Root Folder) 94 </li> 95 <li> 96 vnd.sun.star.hier:/Bookmarks/Sun%20Microsystems%20Home%20Page 97 </li> 98 <li> 99 vnd.sun.star.hier:/Workplace/Printers 100 </li> 101 </ul> 102 103 </p> 104 */ 105 interface com::sun::star::ucb::XContentProvider; 106}; 107 108//============================================================================= 109 110}; }; }; }; 111 112#endif 113