summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/deployment/XPackageManager.idl
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/deployment/XPackageManager.idl')
-rw-r--r--offapi/com/sun/star/deployment/XPackageManager.idl107
1 files changed, 101 insertions, 6 deletions
diff --git a/offapi/com/sun/star/deployment/XPackageManager.idl b/offapi/com/sun/star/deployment/XPackageManager.idl
index 544cd7758eb0..da329bb9367f 100644
--- a/offapi/com/sun/star/deployment/XPackageManager.idl
+++ b/offapi/com/sun/star/deployment/XPackageManager.idl
@@ -37,21 +37,26 @@
#include <com/sun/star/deployment/DeploymentException.idl>
#include <com/sun/star/container/NoSuchElementException.idl>
#include <com/sun/star/lang/IllegalArgumentException.idl>
+#include <com/sun/star/beans/NamedValue.idl>
module com { module sun { module star { module deployment {
/** The <type>XPackageManager</type> interface is used to add or remove
- packages to a specific deployment context.
+ packages to a specific repository. This interface represents a particular
+ repository.
Packages are deployable files, e.g. scripts or UNO components.
<p>
Adding an UNO package means that a copy of the package is stored
- with respect to the context of the manager and the package is registered,
- thus activated.
+ in the repository.
</p>
<p>
- Removing an UNO package means that the previously added package is revoked,
- thus deactivated, first and then removed from the context.
+ Removing an UNO package means that the previously added package is
+ removed from the repository.
+ </p>
+ <p>
+ All interface methods do neither register nor revoke an extension.
+ This happens exclusively by <type>XExtensionManager</type>.
</p>
<p>
Objects of this interface are created using the
@@ -63,6 +68,8 @@ module com { module sun { module star { module deployment {
@see thePackageManagerFactory
@since OOo 2.0.0
+ @deprecated
+ Use <type>XExtensionManager</type>.
*/
interface XPackageManager
{
@@ -75,7 +82,8 @@ interface XPackageManager
*/
interface com::sun::star::util::XModifyBroadcaster;
- /** returns the underlying deployment context.
+ /** returns the underlying deployment context, that is,
+ the name of the repository..
@return
underlying deployment context
@@ -98,8 +106,15 @@ interface XPackageManager
/** adds an UNO package.
+ The properties argument is currently only used to suppress the license information
+ for shared extensions.
+
+
@param url
package URL, must be UCB conform
+ @param properties
+ additional properties, for example, that the license is to be
+ suppressed (if supported by the extension)
@param mediaType
media-type of package, empty string if to be detected
@param xAbortChannel
@@ -111,6 +126,7 @@ interface XPackageManager
<type>XPackage</type> handle
*/
XPackage addPackage( [in] string url,
+ [in] sequence<com::sun::star::beans::NamedValue> properties,
[in] string mediaType,
[in] com::sun::star::task::XAbortChannel xAbortChannel,
[in] com::sun::star::ucb::XCommandEnvironment xCmdEnv )
@@ -119,6 +135,30 @@ interface XPackageManager
com::sun::star::ucb::CommandAbortedException,
com::sun::star::lang::IllegalArgumentException);
+ /** adds an extension.
+
+ This copies the extension. If it was from the same repository,
+ which is represented by this XPackageManager insterface, then
+ nothing happens.
+
+ @param extension
+
+ @param xAbortChannel
+ abort channel to asynchronously abort the adding process,
+ or null
+ @param xCmdEnv
+ command environment for error and progress handling
+ @return
+ <type>XPackage</type> handle
+ */
+ XPackage importExtension( [in] XPackage extension,
+ [in] com::sun::star::task::XAbortChannel xAbortChannel,
+ [in] com::sun::star::ucb::XCommandEnvironment xCmdEnv )
+ raises (DeploymentException,
+ com::sun::star::ucb::CommandFailedException,
+ com::sun::star::ucb::CommandAbortedException,
+ com::sun::star::lang::IllegalArgumentException);
+
/** removes an UNO package.
@param identifier
@@ -212,6 +252,61 @@ interface XPackageManager
*/
boolean isReadOnly();
+ /** synchronizes the extension database with the contents of the extensions
+ folder.
+
+ Added extensions will be added to the database and removed extensions
+ will be removed from the database.
+
+ @param xAddedExtension
+ new extensions which may need to be registered.
+
+ @param
+ removed extensions which must be revoked
+ @return
+ If true - then at least one extension was removed or added. Otherwise
+ nothing was chaned.
+ */
+ boolean synchronize([in] com::sun::star::task::XAbortChannel xAbortChannel,
+ [in] com::sun::star::ucb::XCommandEnvironment xCmdEnv )
+ raises (DeploymentException,
+ com::sun::star::ucb::CommandFailedException,
+ com::sun::star::ucb::CommandAbortedException);
+
+
+ /** returns all extensions which are currently not in use
+ because the user did not accept the license.
+
+ The function will not return any object for the user repository, because
+ a user extension will not be kept in the user repository if its license
+ is declined. Only extensions which are registered at start-up of OOo,
+ that is, shared and bundled extensions, can be returned.
+
+ Extensions which allow the license to be suppressed, that is, it does not
+ need to be displayed, and which are installed with the corresponding option,
+ are also not returned.
+ */
+ sequence<XPackage> getExtensionsWithUnacceptedLicenses(
+ [in] com::sun::star::ucb::XCommandEnvironment xCmdEnv )
+ raises (DeploymentException);
+
+ /** checks if the extension can be used.
+
+ The extension must be managed by this package manager, that is, it must
+ be recorded in its database. The package manager calls
+ XPackage::checkPrerequisites and updates its data base with the
+ result. The result, which is from <type>Prerequisites</type> will be
+ returned.
+ */
+ long checkPrerequisites(
+ [in] XPackage extension,
+ [in] com::sun::star::task::XAbortChannel xAbortChannel,
+ [in] com::sun::star::ucb::XCommandEnvironment xCmdEnv )
+ raises (DeploymentException,
+ com::sun::star::ucb::CommandFailedException,
+ com::sun::star::ucb::CommandAbortedException,
+ com::sun::star::lang::IllegalArgumentException);
+
};
}; }; }; };