package org.mozilla.osmdroid.tileprovider;
import org.mozilla.osmdroid.tileprovider.modules.MapTileModuleProviderBase;
import java.util.Collections;
import java.util.LinkedList;
import java.util.Queue;
public class MapTileRequestState {
private final Queue<MapTileModuleProviderBase> mProviderQueue;
private final MapTile mMapTile;
private final IMapTileProviderCallback mCallback;
private MapTileModuleProviderBase mCurrentProvider;
public MapTileRequestState(final MapTile mapTile,
final MapTileModuleProviderBase[] providers,
final IMapTileProviderCallback callback) {
mProviderQueue = new LinkedList<MapTileModuleProviderBase>();
Collections.addAll(mProviderQueue, providers);
mMapTile = mapTile;
mCallback = callback;
}
public MapTile getMapTile() {
return mMapTile;
}
public IMapTileProviderCallback getCallback() {
return mCallback;
}
public boolean isEmpty() {
return mProviderQueue.isEmpty();
}
public MapTileModuleProviderBase getNextProvider() {
mCurrentProvider = mProviderQueue.poll();
return mCurrentProvider;
}
public MapTileModuleProviderBase getCurrentProvider() {
return mCurrentProvider;
}
}