forked from upstream-mirrors/OpenTracks
b584a95c9c
Introduced in 5b4b54694c
29 lines
589 B
Java
29 lines
589 B
Java
package de.dennisguse.opentracks.util;
|
|
|
|
import androidx.annotation.NonNull;
|
|
|
|
import java.util.Iterator;
|
|
|
|
public abstract class AutoCloseableIterator<T> implements Iterator<T>, AutoCloseable {
|
|
|
|
/**
|
|
* Override: AutoClosable.close() throws Exception.
|
|
*/
|
|
public abstract void close();
|
|
|
|
public abstract int getPosition();
|
|
|
|
public abstract boolean moveToPosition(int position);
|
|
|
|
@NonNull
|
|
public abstract T get();
|
|
|
|
@NonNull
|
|
public T get(int position) {
|
|
moveToPosition(position);
|
|
return get();
|
|
}
|
|
|
|
public abstract int getCount();
|
|
}
|