Package org.apache.sysds.runtime.ooc.cache.io

# Interface OOCIOHandler

All Known Implementing Classes:
  `OOCMatrixIOHandler`

public interface OOCIOHandler

## Nested Class Summary

Nested Classes
Modifier and Type
Interface
Description
`static class`
`OOCIOHandler.GroupSourceBlockDescriptor`
`static class`
`OOCIOHandler.SourceBlockDescriptor`
`static interface`
`OOCIOHandler.SourceReadContinuation`
`static class`
`OOCIOHandler.SourceReadRequest`
`static class`
`OOCIOHandler.SourceReadResult`

## Method Summary

Modifier and Type
Method
Description
`CompletableFuture<OOCIOHandler.SourceReadResult>`
`continueSourceRead(OOCIOHandler.SourceReadContinuation continuation, long maxBytesInFlight)`
Continue a previously throttled source read using the provided continuation token.
`void`
`prioritizeRead(BlockKey key, double priority)`
Increase priority for a pending scheduled read if it has not started yet.
`void`
`registerSourceLocation(BlockKey key, OOCIOHandler.SourceBlockDescriptor descriptor)`
Registers the source location of a block for future direct reads.
`CompletableFuture<Boolean>`
`scheduleDeletion(BlockEntry block)`
`CompletableFuture<Void>`
`scheduleEviction(BlockEntry block)`
`OOCFuture<BlockEntry>`
`scheduleRead(BlockEntry block)`
`CompletableFuture<OOCIOHandler.SourceReadResult>`
`scheduleSourceRead(OOCIOHandler.SourceReadRequest request)`
Schedule an asynchronous read from an external source into the provided target stream.
`void`
`shutdown()`

## Method Details

### shutdown

void shutdown()

### scheduleEviction

CompletableFuture<Void> scheduleEviction(BlockEntry block)

### scheduleRead

OOCFuture<BlockEntry> scheduleRead(BlockEntry block)

### prioritizeRead

void prioritizeRead(BlockKey key, double priority)
Increase priority for a pending scheduled read if it has not started yet.

### scheduleDeletion

CompletableFuture<Boolean> scheduleDeletion(BlockEntry block)

### registerSourceLocation

void registerSourceLocation(BlockKey key, OOCIOHandler.SourceBlockDescriptor descriptor)
Registers the source location of a block for future direct reads.

### scheduleSourceRead

CompletableFuture<OOCIOHandler.SourceReadResult> scheduleSourceRead(OOCIOHandler.SourceReadRequest request)
Schedule an asynchronous read from an external source into the provided target stream. The returned future completes when either EOF is reached or the requested byte budget is exhausted. When the budget is reached and keepOpenOnLimit is true, the target stream is kept open and a continuation token is provided so the caller can resume.

### continueSourceRead

CompletableFuture<OOCIOHandler.SourceReadResult> continueSourceRead(OOCIOHandler.SourceReadContinuation continuation, long maxBytesInFlight)
Continue a previously throttled source read using the provided continuation token.