1d1766043SAndrew Rist/**************************************************************
2cdf0e10cSrcweir *
3d1766043SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4d1766043SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5d1766043SAndrew Rist * distributed with this work for additional information
6d1766043SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7d1766043SAndrew Rist * to you under the Apache License, Version 2.0 (the
8d1766043SAndrew Rist * "License"); you may not use this file except in compliance
9d1766043SAndrew Rist * with the License.  You may obtain a copy of the License at
10d1766043SAndrew Rist *
11d1766043SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12d1766043SAndrew Rist *
13d1766043SAndrew Rist * Unless required by applicable law or agreed to in writing,
14d1766043SAndrew Rist * software distributed under the License is distributed on an
15d1766043SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16d1766043SAndrew Rist * KIND, either express or implied.  See the License for the
17d1766043SAndrew Rist * specific language governing permissions and limitations
18d1766043SAndrew Rist * under the License.
19d1766043SAndrew Rist *
20d1766043SAndrew Rist *************************************************************/
21d1766043SAndrew Rist
22d1766043SAndrew Rist
23cdf0e10cSrcweir
24cdf0e10cSrcweir#if ! defined INCLUDED_com_sun_star_deployment_XPackageManagerFactory_idl
25cdf0e10cSrcweir#define INCLUDED_com_sun_star_deployment_XPackageManagerFactory_idl
26cdf0e10cSrcweir
27cdf0e10cSrcweir#include <com/sun/star/lang/IllegalArgumentException.idl>
28cdf0e10cSrcweir#include <com/sun/star/deployment/XPackageManager.idl>
29cdf0e10cSrcweir
30cdf0e10cSrcweir
31cdf0e10cSrcweirmodule com { module sun { module star { module deployment {
32cdf0e10cSrcweir
33cdf0e10cSrcweir/** The <type>XPackageManagerFactory</type> interface is used to obtain
34cdf0e10cSrcweir    <type>XPackageManager</type> instances.
35cdf0e10cSrcweir    <p>
36cdf0e10cSrcweir    You have to use the singleton
37cdf0e10cSrcweir    <code>
38cdf0e10cSrcweir    /singletons/com.sun.star.deployment.thePackageManagerFactory
39cdf0e10cSrcweir    </code>
40cdf0e10cSrcweir    exclusively.
41cdf0e10cSrcweir    </p>
42cdf0e10cSrcweir
43*34c958abSJürgen Schmidt    @since OpenOffice 2.0
44cdf0e10cSrcweir    @deprecated
45cdf0e10cSrcweir    Use <type>XExtensionManager</type>.
46cdf0e10cSrcweir*/
47cdf0e10cSrcweirinterface XPackageManagerFactory
48cdf0e10cSrcweir{
49cdf0e10cSrcweir    /** Method to create (or reusing and already existing)
50cdf0e10cSrcweir        <type>XPackageManager</type> object to add or remove UNO packages
51cdf0e10cSrcweir        persistently.
52cdf0e10cSrcweir        <p>
53cdf0e10cSrcweir        Packages for context strings <code>"user"</code> and
54cdf0e10cSrcweir        <code>"shared"</code> will be registered and
55cdf0e10cSrcweir        revoked persistently.
56cdf0e10cSrcweir        </p>
57cdf0e10cSrcweir        <!-- p>
58cdf0e10cSrcweir        Document contexts (<code>"vnd.sun.star.tdoc:..."</code>) will get a
59cdf0e10cSrcweir        <type>XPackageManager</type> object that stores packages
60cdf0e10cSrcweir        in the given document and modify the manifest.
61cdf0e10cSrcweir        </p -->
62cdf0e10cSrcweir        <p>
63cdf0e10cSrcweir        Context strings other than <code>"user"</code>, <code>"shared"</code>
64cdf0e10cSrcweir        <!-- or <code>vnd.sun.star.tdoc</code --> will last in an
65cdf0e10cSrcweir        <type scope="com::sun::star::lang">IllegalArgumentException</type>.
66cdf0e10cSrcweir        </p>
67cdf0e10cSrcweir
68cdf0e10cSrcweir        @param context
69cdf0e10cSrcweir               context string, e.g.
70cdf0e10cSrcweir               <ul>
71cdf0e10cSrcweir               <li><code>"user"</code>
72cdf0e10cSrcweir                   => persistent storage and registration into installation's
73cdf0e10cSrcweir                      user layer
74cdf0e10cSrcweir               </li>
75cdf0e10cSrcweir               <li><code>"shared"</code>
76cdf0e10cSrcweir                   => persistent storage and registration into installation's
77cdf0e10cSrcweir                      shared layer
78cdf0e10cSrcweir               </li>
79cdf0e10cSrcweir               <!-- li><code>"vnd.sun.star.tdoc:///4711/uno_packages"</code>
80cdf0e10cSrcweir                        (open document)
81cdf0e10cSrcweir                   => transient storage in folder uno_packages
82cdf0e10cSrcweir                      and transient registration
83cdf0e10cSrcweir               </li -->
84cdf0e10cSrcweir               </ul>
85cdf0e10cSrcweir        @return
86cdf0e10cSrcweir               <type>XPackageManager</type> object
87cdf0e10cSrcweir        @throws ::com::sun::star::lang::IllegalArgumentException
88cdf0e10cSrcweir                in case of an invalid context
89cdf0e10cSrcweir    */
90cdf0e10cSrcweir    XPackageManager getPackageManager( [in] string context )
91cdf0e10cSrcweir        raises (com::sun::star::lang::IllegalArgumentException);
92cdf0e10cSrcweir};
93cdf0e10cSrcweir
94cdf0e10cSrcweir}; }; }; };
95cdf0e10cSrcweir
96cdf0e10cSrcweir#endif
97