LibreOffice LibreOffice 25.8 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:

## 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< XPackageTypeInfo > | getSupportedPackageTypes ()
| 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< XPackage > | getDeployedExtensions ([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< 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. 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< 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. 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 com::sun::star::lang::XComponent

interface to notify disposing

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

interface com::sun::star::util::XModifyBroadcaster

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

## Member Function Documentation

## ◆ addExtension()

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.

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

Parameters

  url | package URL, must be UCB conform
  properties | additional properties, for example, that the license is to be suppressed (if supported by the extension)
  repository | the name of the repository
  xAbortChannel | abort channel to asynchronously abort the adding process, or null
  xCmdEnv | command environment for error and progress handling

Returns
  object representing the extension.

## ◆ checkPrerequisitesAndEnable()

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.

## ◆ createAbortChannel()

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

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

Returns
  abort channel

## ◆ disableExtension()

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.

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

Parameters

  extension | the extension which is to be disabled
  xAbortChannel | abort channel to asynchronously abort the removing process, or null
  xCmdEnv | command environment for error and progress handling

## ◆ enableExtension()

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.

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

Parameters

  extension | the extension which is to be enabled.
  xAbortChannel | abort channel to asynchronously abort the removing process, or null
  xCmdEnv | command environment for error and progress handling

## ◆ getAllExtensions()

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.

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

  repository | the name of the repository
  identifier | extension identifier
  fileName | extension file name
  xCmdEnv | command environment for error and progress handling

Returns
  XPackage object

## ◆ getDeployedExtensions()

sequence< XPackage > getDeployedExtensions | ( | [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.

Parameters

  repository | the repository from which the extensions are returned
  xAbortChannel | abort channel to asynchronously abort the removing process, or null
  xCmdEnv | command 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()

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.

Please keep in mind that all registration status get lost.

Please use this in case of suspected cache inconsistencies only.

Parameters

  force | set to true when called during soffice bootstrap after cleaning old extension cache
  repository | the name of the repository
  xAbortChannel | abort channel to asynchronously abort the adding process
  xCmdEnv | command 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

  identifier | package identifier
  fileName | package file name
  repository | the name of the repository
  xAbortChannel | abort channel to asynchronously abort the removing process, or null
  xCmdEnv | command environment for error and progress handling

## ◆ synchronize()

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.

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:

- com/sun/star/deployment/XExtensionManager.idl