Package fr.gouv.vitam.storage.offers.tape.worker

# Class TapeDriveWorkerManager

java.lang.Object
fr.gouv.vitam.storage.offers.tape.worker.TapeDriveWorkerManager

All Implemented Interfaces:
  `TapeDriveOrderConsumer`, `TapeDriveOrderProducer`

public class TapeDriveWorkerManager extends Object implements TapeDriveOrderConsumer, TapeDriveOrderProducer

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `TapeDriveWorkerManager(QueueRepository readWriteQueue, ArchiveReferentialRepository archiveReferentialRepository, AccessRequestManager accessRequestManager, TapeLibraryPool tapeLibraryPool, Map<Integer,TapeCatalog> driveTape, String inputTarPath, boolean forceOverrideNonEmptyCartridges, ArchiveCacheStorage archiveCacheStorage, TapeCatalogService tapeCatalogService, Integer fullCartridgeDetectionThresholdInMB)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Optional<? extends ReadWriteOrder>`
  `consume(TapeDriveWorker driveWorker)`
  `int`
  `getInterruptedWorkerCount()`
  `QueueRepository`
  `getQueue()`
  `int`
  `getTotalWorkerCount()`
  `void`
  `initializeOnBootstrap()`
  `Optional<? extends ReadWriteOrder>`
  `produce(TapeDriveWorker driveWorker)`
  `void`
  `shutdown()`
  `void`
  `shutdown(long timeout, TimeUnit timeUnit)`
  `void`
  `startWorkers()`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### TapeDriveWorkerManager

    public TapeDriveWorkerManager(QueueRepository readWriteQueue, ArchiveReferentialRepository archiveReferentialRepository, AccessRequestManager accessRequestManager, TapeLibraryPool tapeLibraryPool, Map<Integer,TapeCatalog> driveTape, String inputTarPath, boolean forceOverrideNonEmptyCartridges, ArchiveCacheStorage archiveCacheStorage, TapeCatalogService tapeCatalogService, Integer fullCartridgeDetectionThresholdInMB)

- ## Method Details

  - ### startWorkers

    public void startWorkers()

  - ### shutdown

    public void shutdown()

  - ### shutdown

    public void shutdown(long timeout, TimeUnit timeUnit)

  - ### getQueue

    public QueueRepository getQueue()
    Specified by:
      `getQueue` in interface `TapeDriveOrderConsumer`

  - ### consume

    public Optional<? extends ReadWriteOrder> consume(TapeDriveWorker driveWorker) throws QueueException
    Specified by:
      `consume` in interface `TapeDriveOrderConsumer`
    Throws:
      `QueueException`

  - ### produce

    public Optional<? extends ReadWriteOrder> produce(TapeDriveWorker driveWorker) throws QueueException
    Specified by:
      `produce` in interface `TapeDriveOrderProducer`
    Throws:
      `QueueException`

  - ### initializeOnBootstrap

    public void initializeOnBootstrap()

  - ### getTotalWorkerCount

    public int getTotalWorkerCount()

  - ### getInterruptedWorkerCount

    public int getInterruptedWorkerCount()