org.eclipse.jgit.lib

## Interface AsyncObjectSizeQueue<T extends ObjectId>

Type Parameters:
  `T` - type of identifier supplied to the call that made the queue.

All Superinterfaces:
  AsyncOperation

    public interface AsyncObjectSizeQueue<T extends ObjectId>
    extends AsyncOperation

Queue to examine object sizes asynchronously. A queue may perform background lookup of object sizes and supply them (possibly out-of-order) to the application.

### Method Summary

Methods
`T` `getCurrent()`
`ObjectId` `getObjectId()`
`long` `getSize()`
`boolean` `next()` Position this queue onto the next available result.

### Methods inherited from interface org.eclipse.jgit.lib.AsyncOperation

`cancel, release`

### Method Detail

#### next

    boolean next()
                 throws MissingObjectException,
                        IOException

Position this queue onto the next available result.

Returns:
  true if there is a result available; false if the queue has finished its input iteration.
Throws:
  `MissingObjectException` - the object does not exist. If the implementation is retaining the application's objects `getCurrent()` will be the current object that is missing. There may be more results still available, so the caller should continue invoking next to examine another result.
  `IOException` - the object store cannot be accessed.

#### getCurrent

    T getCurrent()

Returns:
  the current object, null if the implementation lost track. Implementations may for performance reasons discard the caller's ObjectId and provider their own through `getObjectId()`.

#### getObjectId

    ObjectId getObjectId()

Returns:
  the ObjectId of the current object. Never null.

#### getSize

    long getSize()

Returns:
  the size of the current object.