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_PackageStreamContent_idl__ 28#define __com_sun_star_ucb_PackageStreamContent_idl__ 29 30#ifndef __com_sun_star_lang_XComponent_idl__ 31#include <com/sun/star/lang/XComponent.idl> 32#endif 33 34#ifndef __com_sun_star_ucb_XContent_idl__ 35#include <com/sun/star/ucb/XContent.idl> 36#endif 37 38#ifndef __com_sun_star_ucb_XCommandProcessor_idl__ 39#include <com/sun/star/ucb/XCommandProcessor.idl> 40#endif 41 42#ifndef __com_sun_star_ucb_XCommandProcessor2_idl__ 43#include <com/sun/star/ucb/XCommandProcessor2.idl> 44#endif 45 46#ifndef __com_sun_star_beans_XPropertiesChangeNotifier_idl__ 47#include <com/sun/star/beans/XPropertiesChangeNotifier.idl> 48#endif 49 50#ifndef __com_sun_star_beans_XPropertyContainer_idl__ 51#include <com/sun/star/beans/XPropertyContainer.idl> 52#endif 53 54#ifndef __com_sun_star_beans_XPropertySetInfoChangeNotifier_idl__ 55#include <com/sun/star/beans/XPropertySetInfoChangeNotifier.idl> 56#endif 57 58#ifndef __com_sun_star_ucb_XCommandInfoChangeNotifier_idl__ 59#include <com/sun/star/ucb/XCommandInfoChangeNotifier.idl> 60#endif 61 62#ifndef __com_sun_star_container_XChild_idl__ 63#include <com/sun/star/container/XChild.idl> 64#endif 65 66//============================================================================= 67 68module com { module sun { module star { module ucb { 69 70//============================================================================= 71/** A PCP Stream is a content which represents a file inside a package. 72 73 <p>It is always contained in a PCP Folder. A PCP Stream has no children. 74 75 @see com::sun::star::ucb::PackageContentProvider 76 @see com::sun::star::ucb::PackageFolderContent 77*/ 78published service PackageStreamContent 79{ 80 //------------------------------------------------------------------------- 81 /** This interface is implemented according to the specification of 82 service <type>Content</type>. 83 */ 84 interface com::sun::star::lang::XComponent; 85 86 //------------------------------------------------------------------------- 87 /** This interface is implemented according to the specification of 88 service <type>Content</type>. 89 */ 90 interface com::sun::star::ucb::XContent; 91 92 //------------------------------------------------------------------------- 93 /** This interface is implemented according to the specification of 94 service <type>Content</type>. 95 96 <p> 97 98 <b>Supported Commands</b> 99 <ul> 100 <li> 101 getCommandInfo 102 </li> 103 <li> 104 getPropertySetInfo 105 </li> 106 <li> 107 getPropertyValues 108 </li> 109 <li> 110 setPropertyValues 111 </li> 112 <li> 113 insert ( makes a newly created stream persistent ) 114 </li> 115 <li> 116 delete 117 </li> 118 <li> 119 open 120 </li> 121 </ul> 122 123 <b>Supported Properties</b> 124 <ul> 125 <li> 126 string ContentType ( read-only, always "application/vnd.sun.star.pkg-stream" ) 127 </li> 128 <li> 129 boolean IsDocument ( read-only, always true ) 130 </li> 131 <li> 132 boolean IsFolder ( read-only, always false ) 133 </li> 134 <li> 135 string MediaType 136 </li> 137 <li> 138 string Size ( read-only ) 139 </li> 140 <li> 141 string Title 142 </li> 143 <li> 144 boolean Compressed ( allows you to explecitly state whether you want a 145 stream to be compressed or not. The default value of this property 146 will be determined according to the value of the property 'MediaType'. 147 If it is empty or prefixed by "text/", the value of 'Compressed' is set 148 to true. Otherwise the value will be false. ) 149 </li> 150 <li> 151 boolean Encrypted ( are the stream data encrypted or not ). 152 </li> 153 </ul> 154 155 </p> 156 */ 157 interface com::sun::star::ucb::XCommandProcessor; 158 159 //------------------------------------------------------------------------- 160 /** is an enhanced version of <type>XCommandProcessor</type> that has an 161 additional method for releasing command identifiers obtained via 162 <member>XCommandProcessor::createCommandIdentifier</member> to avoid 163 resource leaks. For a detailed description of the problem refer to 164 <member>XCommandProcessor2::releaseCommandIdentifier</member>. 165 166 <p>Where many existing <type>Content</type> implementations do not 167 (yet), every new implementation should support this interface. 168 */ 169 [optional] interface com::sun::star::ucb::XCommandProcessor2; 170 171 //------------------------------------------------------------------------- 172 /** This interface is implemented according to the specification of 173 service <type>Content</type>. 174 */ 175 interface com::sun::star::beans::XPropertiesChangeNotifier; 176 177 //------------------------------------------------------------------------- 178 /** This interface is implemented according to the specification of 179 service <type>Content</type>. 180 */ 181 interface com::sun::star::beans::XPropertyContainer; 182 183 //------------------------------------------------------------------------- 184 /** This interface is implemented according to the specification of 185 service <type>Content</type>. 186 */ 187 interface com::sun::star::beans::XPropertySetInfoChangeNotifier; 188 189 //------------------------------------------------------------------------- 190 /** This interface is implemented according to the specification of 191 service <type>Content</type>. 192 */ 193 interface com::sun::star::ucb::XCommandInfoChangeNotifier; 194 195 //------------------------------------------------------------------------- 196 /** This interface is implemented according to the specification of 197 service <type>Content</type>. 198 */ 199 interface com::sun::star::container::XChild; 200}; 201 202//============================================================================= 203 204}; }; }; }; 205 206#endif 207