public interface IOOo
Interface for a LibreOffice configuration instance. This can even be implemented as an URE instance.
  • Method Details

    • setHome

      void setHome(String home) throws InvalidConfigException
      Set the home directory.
      Parameters:
      home - the absolute path to the home directory
      Throws:
      InvalidConfigException - is thrown if the path doesn't match the implementation requirement for a LibreOffice instance. The error code will be InvalidConfigException.INVALID_OOO_HOME
    • getHome

      String getHome()
      Returns the path to the LibreOffice home directory. This string could be passed to the Path constructor to get the folder object.
      Returns:
      path to the LibreOffice home directory.
    • getName

      String getName()
      Returns the LibreOffice name. It should be a unique identifier
      Returns:
      LibreOffice name
    • getClassesPath

      String[] getClassesPath()

      Returns the path to the LibreOffice classes directory. These strings could be passed to the Path constructor to get the folder object.

      This method should be used for future compatibility with URE applications

      Returns:
      path to the LibreOffice classes directory
    • getLibsPath

      String[] getLibsPath()

      Returns the path to the LibreOffice shared libraries. This string could be passed to the Path constructor to get the folder object.

      Returns:
      path to the LibreOffice libraries directory
    • getBinPath

      String[] getBinPath()

      Returns the path to any folder containing binaries in the LibreOffice installation. This string could be passed to the Path constructor to get the folder object.

      Returns:
      paths to the LibreOffice binary directories
    • getTypesPath

      String[] getTypesPath()
      Returns:
      the path to the types.rdb file of the LibreOffice or URE instance.
    • getServicesPath

      String[] getServicesPath()
      Returns:
      the path to the services.rdb file of the LibreOffice or URE instance.
    • getUnorcPath

      String getUnorcPath()
      Returns:
      the path to the UNO bootstrap properties file.
    • getUnoPath

      String getUnoPath()
      Returns:
      the path to the UNO executable file
    • getJavaldxPath

      String getJavaldxPath()
      Returns:
      the path to the javaldx executable
    • createUnoCommand

      String createUnoCommand(String implementationName, String libLocation, String[] registriesPaths, String[] args)
      Returns a command to execute a uno component.
      Parameters:
      implementationName - the name of the component implementation to run
      libLocation - the name of the library containing the implementation
      registriesPaths - the path to the additional registries
      args - the argument for the component launch
      Returns:
      the command to execute the uno binary
    • runUno

      void runUno(IUnoidlProject prj, String main, String args, org.eclipse.debug.core.ILaunch launch, org.eclipse.core.runtime.IProgressMonitor monitor)
      Run the uno executable with the given Main implementation, the arguments and the launcher.
      Parameters:
      prj - the project to run
      main - the main implementation
      args - the argument to pass to the main implementation
      launch - the launcher
      monitor - a monitor to follow the progress
    • runOffice

      void runOffice(IUnoidlProject prj, org.eclipse.debug.core.ILaunch launch, org.eclipse.core.runtime.IPath userInstallation, IExtraOptionsProvider extraOptionsProvider, org.eclipse.core.runtime.IProgressMonitor monitor)
      Parameters:
      prj - the project to run
      launch - the launcher to which we'll add our processes
      userInstallation - the userInstallation folder to use. If null we'll go with the default system one.
      extraOptionsProvider - provider for extra env variables to be set before launching.
      monitor - a monitor to follow the progress
    • canManagePackages

      boolean canManagePackages()
      Returns:
      true if the LibreOffice instance has a package manager.
    • updatePackage

      void updatePackage(File packageFile, org.eclipse.core.runtime.IPath userInstallation)
      Update a package in the LibreOffice instance if it can manages packages.
      Parameters:
      packageFile - the package to add or update
      userInstallation - path to the user profile folder.