LibreOffice
LibreOffice 7.4 SDK API Reference
Exported Interfaces | Public Member Functions | List of all members
XExtensionManager Interface Reference

The XExtensionManager interface is used to manage extensions in the user, shared and bundled repository. More...

import"XExtensionManager.idl";

Inheritance diagram for XExtensionManager:
XComponent XModifyBroadcaster XInterface XInterface ExtensionManager

Exported Interfaces

interface com::sun::star::lang::XComponent
 interface to notify disposing More...
 
interface com::sun::star::util::XModifyBroadcaster
 interface to notify changes of the set of deployed packages of this manager More...
 

Public Member Functions

sequence< XPackageTypeInfogetSupportedPackageTypes ()
 gets the supported XPackageTypeInfos. More...
 
com::sun::star::task::XAbortChannel createAbortChannel ()
 creates a command channel to be used to asynchronously abort a command. More...
 
XPackage addExtension ([in] string url, [in] sequence< com::sun::star::beans::NamedValue > properties, [in] string repository, [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)
 adds an extension. More...
 
void removeExtension ([in] string identifier, [in] string fileName, [in] string repository, [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 extension. More...
 
void enableExtension ([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)
 enable an extension. More...
 
void disableExtension ([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)
 disable an extension. More...
 
sequence< XPackagegetDeployedExtensions ([in] string repository, [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)
 gets all currently installed extensions, including disabled user extensions. More...
 
XPackage getDeployedExtension ([in] string repository, [in] string identifier, [in] string fileName, [in] com::sun::star::ucb::XCommandEnvironment xCmdEnv) raises (DeploymentException, com::sun::star::ucb::CommandFailedException, com::sun::star::lang::IllegalArgumentException)
 gets an installed extensions. More...
 
sequence< XPackagegetExtensionsWithSameIdentifier ([in] string identifier, [in] string fileName, [in] com::sun::star::ucb::XCommandEnvironment xCmdEnv) raises (DeploymentException, com::sun::star::ucb::CommandFailedException, com::sun::star::lang::IllegalArgumentException)
 gets all extensions with the same identifier from all repositories. More...
 
sequence< sequence< XPackage > > getAllExtensions ([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)
 returns a sequence containing all installed extensions. More...
 
void reinstallDeployedExtensions ([in] boolean force, [in] string repository, [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)
 Expert feature: erases the underlying registry cache and reinstalls all previously added extensions. More...
 
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, com::sun::star::lang::IllegalArgumentException)
 synchronizes the extension database with the contents of the extensions folder of shared and bundled extensions. More...
 
sequence< XPackagegetExtensionsWithUnacceptedLicenses ([in] string repository, [in] com::sun::star::ucb::XCommandEnvironment xCmdEnv) raises (DeploymentException, com::sun::star::lang::IllegalArgumentException)
 returns all extensions which are currently not in use because the user did not accept the license. More...
 
long checkPrerequisitesAndEnable ([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)
 check if all prerequisites for the extension are fulfilled and activates it, if possible. More...
 
boolean isReadOnlyRepository ([in] string repository)
 determines if the current user has write access to the extensions folder of the repository. More...
 
- Public Member Functions inherited from XComponent
void dispose ()
 The owner of an object calls this method to explicitly free all resources kept by this object and thus break cyclic references. More...
 
void addEventListener ([in] XEventListener xListener)
 adds an event listener to the object. More...
 
void removeEventListener ([in] XEventListener aListener)
 removes an event listener from the listener list. More...
 
- Public Member Functions inherited from XInterface
any queryInterface ([in] type aType)
 queries for a new interface to an existing UNO object. More...
 
void acquire ()
 increases the reference counter by one. More...
 
void release ()
 decreases the reference counter by one. More...
 
- Public Member Functions inherited from XModifyBroadcaster
void addModifyListener ([in] com::sun::star::util::XModifyListener aListener)
 adds the specified listener to receive events "modified." More...
 
void removeModifyListener ([in] com::sun::star::util::XModifyListener aListener)
 removes the specified listener. More...
 

Detailed Description

The XExtensionManager interface is used to manage extensions in the user, shared and bundled repository.

See also
ExtensionManager
Since
OOo 3.3

Exported Interfaces

◆ com::sun::star::lang::XComponent

interface to notify disposing

◆ com::sun::star::util::XModifyBroadcaster

interface to notify changes of the set of deployed packages of this manager

Member Function Documentation

◆ addExtension()

adds an extension.

The properties argument is currently only used to suppress the license information for shared extensions.

Parameters
urlpackage URL, must be UCB conform
propertiesadditional properties, for example, that the license is to be suppressed (if supported by the extension)
repositorythe name of the repository
xAbortChannelabort channel to asynchronously abort the adding process, or null
xCmdEnvcommand environment for error and progress handling
Returns
object representing the extension.

◆ checkPrerequisitesAndEnable()

check if all prerequisites for the extension are fulfilled and activates it, if possible.

◆ createAbortChannel()

com::sun::star::task::XAbortChannel createAbortChannel ( )

creates a command channel to be used to asynchronously abort a command.

Returns
abort channel

◆ disableExtension()

disable an extension.

If the extension is not from the user repository then an IllegalArgumentException is thrown.

Parameters
extensionthe extension which is to be disabled
xAbortChannelabort channel to asynchronously abort the removing process, or null
xCmdEnvcommand environment for error and progress handling

◆ enableExtension()

enable an extension.

If the extension is not from the user repository then an IllegalArgumentException is thrown.

Parameters
extensionthe extension which is to be enabled.
xAbortChannelabort channel to asynchronously abort the removing process, or null
xCmdEnvcommand environment for error and progress handling

◆ getAllExtensions()

returns a sequence containing all installed extensions.

The members of the returned sequence correspond to an extension with a particular extension identifier. The members are also sequences which contain as many elements as there are repositories. Those are ordered according to the priority of the repository. That is, the first member is the extension from the user repository, the second is from the shared repository and the last is from the bundled repository.

◆ getDeployedExtension()

XPackage getDeployedExtension ( [in] string  repository,
[in] string  identifier,
[in] string  fileName,
[in] com::sun::star::ucb::XCommandEnvironment  xCmdEnv 
)
raises (DeploymentException,
com::sun::star::ucb::CommandFailedException,
com::sun::star::lang::IllegalArgumentException
)

gets an installed extensions.

Parameters
repositorythe name of the repository
identifierextension identifier
fileNameextension file name
xCmdEnvcommand environment for error and progress handling
Returns
XPackage object

◆ getDeployedExtensions()

gets all currently installed extensions, including disabled user extensions.

Parameters
repositorythe repository from which the extensions are returned
xAbortChannelabort channel to asynchronously abort the removing process, or null
xCmdEnvcommand environment for error and progress handling
Returns
all currently installed packages

◆ getExtensionsWithSameIdentifier()

sequence<XPackage> getExtensionsWithSameIdentifier ( [in] string  identifier,
[in] string  fileName,
[in] com::sun::star::ucb::XCommandEnvironment  xCmdEnv 
)
raises (DeploymentException,
com::sun::star::ucb::CommandFailedException,
com::sun::star::lang::IllegalArgumentException
)

gets all extensions with the same identifier from all repositories.

The extension at the first position in the returned sequence represents the extension from the user repository. The next element is from the shared and the last one is from the bundled repository. If one repository does not contain this extension, then the respective element is a null reference.

◆ getExtensionsWithUnacceptedLicenses()

sequence<XPackage> getExtensionsWithUnacceptedLicenses ( [in] string  repository,
[in] com::sun::star::ucb::XCommandEnvironment  xCmdEnv 
)
raises (DeploymentException,
com::sun::star::lang::IllegalArgumentException
)

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.

Extensions returned by these functions are not returned by XExtensionManager::getDeployedExtension() XExtensionManager::getDeployedExtensions() XExtensionManager::getAllExtensions() XExtensionManager::getExtensionsWithSameIdentifier()

◆ getSupportedPackageTypes()

sequence<XPackageTypeInfo> getSupportedPackageTypes ( )

gets the supported XPackageTypeInfos.

Returns
supported XPackageTypeInfos.

◆ isReadOnlyRepository()

boolean isReadOnlyRepository ( [in] string  repository)

determines if the current user has write access to the extensions folder of the repository.

◆ reinstallDeployedExtensions()

Expert feature: erases the underlying registry cache and reinstalls all previously added extensions.

Please keep in mind that all registration status get lost.

Please use this in case of suspected cache inconsistencies only.

Parameters
forceset to true when called during soffice bootstrap after cleaning old extension cache
repositorythe name of the repository
xAbortChannelabort channel to asynchronously abort the adding process
xCmdEnvcommand environment for error and progress handling

◆ removeExtension()

void removeExtension ( [in] string  identifier,
[in] string  fileName,
[in] string  repository,
[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 extension.

Parameters
identifierpackage identifier
fileNamepackage file name
repositorythe name of the repository
xAbortChannelabort channel to asynchronously abort the removing process, or null
xCmdEnvcommand environment for error and progress handling

◆ synchronize()

synchronizes the extension database with the contents of the extensions folder of shared and bundled extensions.

Added extensions will be added to the database and removed extensions will be removed from the database. The active extensions are determined. That is, shared or bundled extensions are not necessarily registered (XPackage::registerPackage()).

Returns
If true - then at least one extension was removed or added. Otherwise nothing was changed.

The documentation for this interface was generated from the following file: