Interface ILibraryUpdater


  • public interface ILibraryUpdater
    The library updater for workspace dt projects. Allows to update a project library or plug a library to a project from scratch.
    • Method Detail

      • updateLibrary

        CompletableFuture<Boolean> updateLibrary​(IDtProject dtProject,
                                                 LibraryDescriptor libraryDescriptor,
                                                 MatchingStrategy matchingStrategy,
                                                 boolean parseBslModuleStructure,
                                                 String mergeSettingsFileName,
                                                 Consumer<CompareMergeProcessBatch> mergeRunner)
                                          throws LibraryUpdateException
        Updates the project library or plugs the library to the project via running comparison and merge.
        Parameters:
        dtProject - the workspace dt project to update/plug the library for/to, cannot be null
        libraryDescriptor - the library descriptor to update/plug by, cannot be null
        matchingStrategy - the matching strategy for comparison/merge process, cannot be null
        parseBslModuleStructure - tells whether to parse bsl module structure during comparison/merge process
        mergeSettingsFileName - the merge settings file name for comparison/merge process, may be null
        mergeRunner - starts the merge after the comparison is finished, cannot be null
        Returns:
        a library update result, never null; true if the update was successfully fished, false if the update was aborted
        Throws:
        LibraryUpdateException - if failed to update or plug the library
      • updateLibrary

        CompletableFuture<Boolean> updateLibrary​(IDtProject dtProject,
                                                 Path libraryPath,
                                                 MatchingStrategy matchingStrategy,
                                                 boolean parseBslModuleStructure,
                                                 String mergeSettingsFileName,
                                                 Consumer<CompareMergeProcessBatch> mergeRunner,
                                                 org.eclipse.core.runtime.IProgressMonitor monitor)
                                          throws LibraryUpdateException
        Updates the project library or plugs the library to the project via running comparison and merge
        Parameters:
        dtProject - the workspace dt project to update/plug the library for/to, cannot be null
        libraryPath - the library path to update/plug by, cannot be null
        matchingStrategy - the matching strategy for comparison/merge process, cannot be null
        parseBslModuleStructure - tells whether to parse bsl module structure during comparison/merge process
        mergeSettingsFileName - the merge settings file name for comparison/merge process, may be null
        mergeRunner - starts the merge after the comparison is finished, cannot be null
        monitor - the monitor to indicate the progress, may be null
        Returns:
        a library update result, never null; true if the update was successfully fished, false if the update was aborted
        Throws:
        LibraryUpdateException - if failed to update or plug the library