IsoLoadOptions

Inheritance: java.lang.Object

public class IsoLoadOptions

Options with which IsoArchive is loaded from a compressed file. Contains event raised on extraction.

Constructors

ConstructorDescription
IsoLoadOptions()

Methods

MethodDescription
getEntryExtractionProgressed()Gets an event that is raised when some bytes have been extracted.
setCancellationFlag(CancellationFlag value)Sets a cancellation flag used to cancel the extraction operation.
setEntryExtractionProgressed(Event<ProgressEventArgs> value)Sets an event that is raised when some bytes have been extracted.

IsoLoadOptions()

public IsoLoadOptions()

getEntryExtractionProgressed()

public final Event<ProgressEventArgs> getEntryExtractionProgressed()

Gets an event that is raised when some bytes have been extracted.


     long length = 10_000_000;
     IsoLoadOptions loadOptions = new IsoLoadOptions();
     loadOptions.setEntryExtractionProgressed((sender, args) -> {
         int percent = (int)((100 * args.getProceededBytes()) / length);
     });
     IsoArchive archive = new IsoArchive("archive.iso", loadOptions);
 

Event sender is the IsoEntry instance which extraction is progressed.

Returns: Event - an event that is raised when some bytes have been extracted

setCancellationFlag(CancellationFlag value)

public void setCancellationFlag(CancellationFlag value)

Sets a cancellation flag used to cancel the extraction operation.

Cancel ISO archive extraction after a certain time.


     try (CancellationFlag cf = new CancellationFlag()) {
         cf.cancelAfter(TimeUnit.SECONDS.toMillis(60));
         IsoLoadOptions options = new IsoLoadOptions();
         options.setCancellationFlag(cf);
         try (IsoArchive a = new IsoArchive("big.iso", options)) {
             try {
                 a.getEntries().get(0).extract("data.bin");
             } catch (OperationCanceledException e) {
                 System.out.println("Extraction was cancelled after 60 seconds");
             }
         }
     }
 

Cancellation mostly results in some data not being extracted.

Parameters:

ParameterTypeDescription
valueCancellationFlaga cancellation flag used to cancel the extraction operation.

setEntryExtractionProgressed(Event<ProgressEventArgs> value)

public final void setEntryExtractionProgressed(Event<ProgressEventArgs> value)

Sets an event that is raised when some bytes have been extracted.


     long length = 10_000_000;
     IsoLoadOptions loadOptions = new IsoLoadOptions();
     loadOptions.setEntryExtractionProgressed((sender, args) -> {
         int percent = (int)((100 * args.getProceededBytes()) / length);
     });
     IsoArchive archive = new IsoArchive("archive.iso", loadOptions);
 

Event sender is the IsoEntry instance which extraction is progressed.

Parameters:

ParameterTypeDescription
valuecom.aspose.zip.Event<com.aspose.zip.ProgressEventArgs>an event that is raised when some bytes have been extracted