// Copyright 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. package org.chromium.content.browser; import java.util.ArrayList; /** * {@link NavigationHistory} captures a snapshot of the navigation history of a * {@link ContentView}. It is a copy and will not be updated as navigation * occurs on the source {@link ContentView}. */ public class NavigationHistory { private ArrayList<NavigationEntry> mEntries = new ArrayList<NavigationEntry>(); private int mCurrentEntryIndex; protected void addEntry(NavigationEntry entry) { mEntries.add(entry); } /* package */ void setCurrentEntryIndex(int currentEntryIndex) { mCurrentEntryIndex = currentEntryIndex; } /** * @return The number of entries in the history. */ public int getEntryCount() { return mEntries.size(); } /** * Returns the {@link NavigationEntry} for the given index. */ public NavigationEntry getEntryAtIndex(int index) { return mEntries.get(index); } /** * Returns the index of the entry the {@link ContentView} was navigated to * when the history was fetched. */ public int getCurrentEntryIndex() { return mCurrentEntryIndex; } }