de.esprit.netsuite.server.chxfer

## Class ParallelTransfersList

- java.lang.Object
- - de.esprit.common.util.DumpableObject
  - - de.esprit.appsuite.launch.AbstractApplicationObject<S>
    - - de.esprit.netsuite.server.AbstractServerObject<ServerContext>
      - - de.esprit.netsuite.server.chxfer.ParallelTransfersList

- All Implemented Interfaces:
    ApplicationObject<ServerContext>, SimpleLogSupport, Dumpable, ServerObject<ServerContext>

      public class ParallelTransfersList
      extends AbstractServerObject<ServerContext>

  This list contains the file transfer jobs that are currently running on the server. It also ensures that the max number of allowed parallel file transfers cannot be exceeded.

  Note that each file transfer is a stateless connection just for transferring one particular file. The entries of this list span all file transfers defined in a `FileTransferJobList`. If the last file is successfully transferred then the entry is removed. If the transfer failed or was cancelled by the user then the already transferred files are removed from the target directory if rollback is enabled on the job-list.

  Author:
    Rainer Buesch

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ParallelTransfersList(ServerContext serverCtx)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `FileTransferEntry` | `addJob(FileTransferJobList jobs)`
    `JobId[]` | `getRunningJobIds()`
    `void` | `removeJob(FileTransferEntry entry)`
    `FileTransferEntry` | `setTransferRunning(TransferServiceTask task, FileTransferJob job)`

    - ### Methods inherited from class de.esprit.netsuite.server.AbstractServerObject

      `checkPermission, getServerConfig, getServerContext, getStatisticManager, toString`

    - ### Methods inherited from class de.esprit.appsuite.launch.AbstractApplicationObject

      `getApplicationContext, getLogChannel, isLogDebug, isLogVerbose, logDebug, logDump, logError, logError, logFatal, logInfo, logVerbose, logWarning, setLogChannel`

    - ### Methods inherited from class de.esprit.common.util.DumpableObject

      `configureDumpHeadlineLength, configureDumpMaxElementsPrinted, copyDumpStringValues, copyToStringValues, createDumpHeader, toDumpString, toDumpString, toString`

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

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

- - ### Constructor Detail

    - #### ParallelTransfersList

          public ParallelTransfersList(ServerContext serverCtx)

  - ### Method Detail

    - #### addJob

          public FileTransferEntry addJob(FileTransferJobList jobs)
                                   throws TransferAlreadyRunningException,
                                          TooManyTransfersException

      Throws:
        `TransferAlreadyRunningException`
        `TooManyTransfersException`

    - #### removeJob

          public void removeJob(FileTransferEntry entry)

    - #### setTransferRunning

          public FileTransferEntry setTransferRunning(TransferServiceTask task,
                                             FileTransferJob job)
                                               throws NoSuchTransferJobException

      Throws:
        `NoSuchTransferJobException`

    - #### getRunningJobIds

          public JobId[] getRunningJobIds()

Copyright © 2014 EsprIT-Systems. All Rights Reserved.