Class DerivedDataBmProvider

java.lang.Object
com._1c.g5.v8.internal.derived.DerivedDataBmProvider
All Implemented Interfaces:
IBmProvider, IDerivedDataBmProvider

public class DerivedDataBmProvider extends Object implements IDerivedDataBmProvider
A component that is responsible for bootstrapping the derived data computation mechanism and providing access to those components which are the parts of the public API.
See Also:
  • Field Details

    • providerId

      public final String providerId
  • Constructor Details

    • DerivedDataBmProvider

      public DerivedDataBmProvider(String projectId, Collection<IDerivedDataConfigurationContributor> contributors, IUserActivityBlockingService userActivityBlockingService, IDerivedDataServiceLockController lockController, Supplier<Boolean> synchronizationActiveStateSupplier, DerivedDataTaskScheduler scheduler, Set<String> filteredSegments, Supplier<IAsyncComputationExecutionContext> executionContextSupplier)
      Constructs a new instance of configuration, instantiates and wires components.
      Parameters:
      projectId - The unique identifier of the owning project. May not be null
      contributors - the configuration contributors
      userActivityBlockingService - the service that allows to manipulate blocking operations, cannot be null.
      lockController - external lock controller provided by integrating infrastructure to control the DD locking, cannot be null.
      synchronizationActiveStateSupplier - The supplier which provides the status of the synchronization. Cannot be null
      scheduler - task scheduling facility, cannot be null.
      filteredSegments - filters defined segments out, cannot be null, can be empty
      executionContextSupplier - Supplies of a client-customized execution context. Cannot be null
  • Method Details

    • close

      public void close(boolean delete)
      Description copied from interface: IDerivedDataBmProvider
      Closes the provider.
      Specified by:
      close in interface IDerivedDataBmProvider
      Parameters:
      delete - The flag showing whether all the stored data must be deleted.
    • getContextManager

      public IDerivedDataContextManager getContextManager()
      Gets the associated context manager.
      Returns:
      Associated instance of the context manager.
    • getDerivedDataManager

      public IDerivedDataManager getDerivedDataManager()
      Description copied from interface: IDerivedDataBmProvider
      Gets the associated derived data manager,
      Specified by:
      getDerivedDataManager in interface IDerivedDataBmProvider
      Returns:
      The derived data manager for this instance of BM model.
    • start

      public void start(IBmModel bmModel, boolean cleanStart)
      Description copied from interface: IDerivedDataBmProvider
      Starts the provider.
      Specified by:
      start in interface IDerivedDataBmProvider
      Parameters:
      bmModel - The target BM model. May not be null
      cleanStart - The flag showing whether all the previously stored data must be cleaned.
    • processUnfinishedCommits

      public void processUnfinishedCommits(List<IBmUnfinishedCommitInfo> commitInfo)
      Description copied from interface: IDerivedDataBmProvider
      Processes unfinished commits in case of EDT failure restoration.
      Specified by:
      processUnfinishedCommits in interface IDerivedDataBmProvider
      Parameters:
      commitInfo - The list of commit data records that need to be processed. Cannot be null
    • getId

      public String getId()
      Description copied from interface: IBmProvider
      Gets the unique identifier of the provider being used to address it within the collection of BM providers being associated with particular model.
      Specified by:
      getId in interface IBmProvider
      Returns:
      ID of this provider.
    • waitProcessing

      public void waitProcessing(long timeout)
      Description copied from interface: IBmProvider
      Waits till all the processing in progress is finished.
      Specified by:
      waitProcessing in interface IBmProvider
      Parameters:
      timeout - The maximum time to wait in milliseconds.