Class ClientUpdateUtilities


  • @Service(ClientUpdateUtilities.class)
    public class ClientUpdateUtilities
    extends java.lang.Object
    Utility methods to implement the application update.
    • Constructor Detail

      • ClientUpdateUtilities

        public ClientUpdateUtilities()
    • Method Detail

      • isUpdatableJlinkDirectory

        public boolean isUpdatableJlinkDirectory​(java.io.File dir)
        Checks whether given directory an updatable jlink image.
        Parameters:
        dir - the directory to check
        Returns:
        true if updatable jlink structure found
      • isUpdateableJlinkApplication

        public boolean isUpdateableJlinkApplication()
        Checks whether the application is running in an updatable jlink directory.
        Returns:
        true if current workling directory contains an updatable jlink image
      • isUpdatableJPackageApplication

        public boolean isUpdatableJPackageApplication()
        Checks whether
        Returns:
        true if jlink structure and updatable
      • determineJPackageRoot

        public java.io.File determineJPackageRoot()
        Determines the jpackage's root installation directory.
        Returns:
        the installation directory, null if not a jpackage installation
      • determineInstallationType

        public InstallationType determineInstallationType()
        Determines the installation type of the running application.
        Returns:
        the installation type, null if not an updatable installation
      • getUpdateService

        public UpdateService getUpdateService​(java.lang.String serviceName,
                                              java.rmi.server.RMIClientSocketFactory csf)
        Gets the remote update service object.
        Parameters:
        serviceName - the service name, for ex. "rmi://localhost/Update:33002"
        csf - the optional socket factory, null if default
        Returns:
        the update service
      • dowloadZip

        public java.io.File dowloadZip​(UpdateInfo updateInfo,
                                       java.io.File updateDir,
                                       java.util.function.Consumer<java.lang.Double> progressConsumer)
        Downloads the zipfile.
        Parameters:
        updateInfo - the update info
        updateDir - the directory to create for the update process
        progressConsumer - the consumer receiving the progress from 0.0 to 1.0, null if none
        Returns:
        the downloaded ZIP file in the created update directory