1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
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.
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).
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.
26 ************************************************************************/
27 #ifndef __com_sun_star_embed_XEmbedObjectCreator_idl__
28 #define __com_sun_star_embed_XEmbedObjectCreator_idl__
30 #ifndef __com_sun_star_uno_XInterface_idl__
31 #include
<com
/sun
/star
/uno
/XInterface.idl
>
34 #ifndef __com_sun_star_embed_XStorage_idl__
35 #include
<com
/sun
/star
/embed
/XStorage.idl
>
38 #ifndef __com_sun_star_io_IOException_idl__
39 #include
<com
/sun
/star
/io
/IOException.idl
>
42 #ifndef __com_sun_star_embed_WrongStateException_idl__
43 #include
<com
/sun
/star
/embed
/WrongStateException.idl
>
46 #ifndef __com_sun_star_lang_IllegalArgumentException_idl__
47 #include
<com
/sun
/star
/lang
/IllegalArgumentException.idl
>
50 #ifndef __com_sun_star_beans_PropertyValue_idl__
51 #include
<com
/sun
/star
/beans
/PropertyValue.idl
>
54 //============================================================================
56 module com
{ module sun
{ module star
{ module embed
{
58 //============================================================================
59 /** allows to create and initialize a new embedded object.
62 This interface contains methods that can help to create and initialize
66 published
interface XEmbedObjectCreator
: com
::sun
::star
::uno
::XInterface
68 // -----------------------------------------------------------------------
69 /** creates a new object and initializes it as a new one.
71 <p> In case specified entry exists it's contents are ignored and
72 will be overwritten on storing.
76 the class id of the new object
79 the class name of the new object
82 a parent storage the entry should be created/opened in
88 optional parameters for the object persistence initialization
90 <type>EmbeddedObjectDescriptor</type>
92 @throws ::com::sun::star::lang::IllegalArgumentException
93 one of arguments is illegal
95 @throws com::sun::star::io::IOException
96 in case of io problems during opening\creation
98 @throws com::sun::star::uno::Exception
99 in case of other problems
101 ::com
::sun
::star
::uno
::XInterface createInstanceInitNew
(
102 [in] sequence
< byte > aClassID
,
103 [in] string sClassName
,
104 [in] ::com
::sun
::star
::embed
::XStorage xStorage
,
105 [in] string sEntryName
,
106 [in] sequence
< ::com
::sun
::star
::beans
::PropertyValue
> aObjectArgs
)
107 raises
( ::com
::sun
::star
::lang
::IllegalArgumentException
,
108 ::com
::sun
::star
::io
::IOException
,
109 ::com
::sun
::star
::uno
::Exception
);
112 // -----------------------------------------------------------------------
113 /** creates a new object that should be based on specified storage entry.
115 <p> The specified entry must exists and the object should be loaded
116 from the entry. In case a persistent representation of a link is
117 specified, the result object will be a link.
121 a parent storage the entry should be opened in
126 @param aMediaDescriptor
128 <type scope="com::sun::star::document">MediaDescriptor</type> that
129 specifies document related properties; please remember that target
130 related parameters, for example URL, will be ignored since the
131 object should be loaded from storage entry
134 an object of type <type>EmbeddedObjectDescriptor</type>
135 contains object related properties
137 @thrown ::com::sun::star::lang::IllegalArgumentException
138 one of arguments is illegal
140 @thrown ::com::sun::star::container::NoSuchElementException
141 the specified entry does not exist
143 @throws com::sun::star::io::IOException
144 in case of io problems during opening
146 @throws com::sun::star::uno::Exception
147 in case of other problems
149 ::com
::sun
::star
::uno
::XInterface createInstanceInitFromEntry
(
150 [in] ::com
::sun
::star
::embed
::XStorage xStorage
,
151 [in] string sEntryName
,
152 [in] sequence
< ::com
::sun
::star
::beans
::PropertyValue
> aMediaDescriptor
,
153 [in] sequence
< ::com
::sun
::star
::beans
::PropertyValue
> aObjectArgs
)
154 raises
( ::com
::sun
::star
::lang
::IllegalArgumentException
,
155 ::com
::sun
::star
::container
::NoSuchElementException
,
156 ::com
::sun
::star
::io
::IOException
,
157 ::com
::sun
::star
::uno
::Exception
);
159 // -----------------------------------------------------------------------
160 /** creates a new object and initializes it based on
161 <type scope="com::sun::star::document">MediaDescriptor</type>.
163 <p> In case specified entry exists it's contents are ignored and will
164 be overwritten on storing.
168 a parent storage the entry should be created/opened in
173 @param aMediaDescriptor
175 <type scope="com::sun::star::document">MediaDescriptor</type> that
179 an object of type <type>EmbeddedObjectDescriptor</type>
180 contains object related properties
182 @thrown ::com::sun::star::lang::IllegalArgumentException
183 one of arguments is illegal
185 @throws com::sun::star::io::IOException
186 in case of io problems during opening\creation
188 @throws com::sun::star::uno::Exception
189 in case of other problems
191 ::com
::sun
::star
::uno
::XInterface createInstanceInitFromMediaDescriptor
(
192 [in] ::com
::sun
::star
::embed
::XStorage xStorage
,
193 [in] string sEntryName
,
194 [in] sequence
< ::com
::sun
::star
::beans
::PropertyValue
> aMediaDescriptor
,
195 [in] sequence
< ::com
::sun
::star
::beans
::PropertyValue
> aObjectArgs
)
196 raises
( ::com
::sun
::star
::lang
::IllegalArgumentException
,
197 ::com
::sun
::star
::io
::IOException
,
198 ::com
::sun
::star
::uno
::Exception
);
201 //============================================================================