Revision created by MOE tool push_codebase.
[gae.git] / java / src / main / com / google / appengine / api / datastore / QueryResultIteratorDelegator.java
blob3c23c6b3c6e75aba8dbd0151fcb9ce515433d97b
1 // Copyright 2011 Google Inc. All Rights Reserved.
3 package com.google.appengine.api.datastore;
5 import java.util.Iterator;
6 import java.util.List;
8 /**
9 * A class that simply forwards {@link Iterator} methods to one delegate
10 * and forwards {@link List} to another.
12 * @param <T> the type of result returned by the query
15 class QueryResultIteratorDelegator<T> implements QueryResultIterator<T> {
17 private final QueryResult queryResultDelegate;
18 private final Iterator<T> iteratorDelegate;
20 QueryResultIteratorDelegator(QueryResult queryResultDelegate,
21 Iterator<T> iteratorDelegate) {
22 this.queryResultDelegate = queryResultDelegate;
23 this.iteratorDelegate = iteratorDelegate;
26 @Override
27 public List<Index> getIndexList() {
28 return queryResultDelegate.getIndexList();
31 @Override
32 public Cursor getCursor() {
33 return queryResultDelegate.getCursor();
36 @Override
37 public boolean hasNext() {
38 return iteratorDelegate.hasNext();
41 @Override
42 public T next() {
43 return iteratorDelegate.next();
46 @Override
47 public void remove() {
48 iteratorDelegate.remove();