public int lastIndexOf(Object o) { if (!checkInitializedRead()) return -1; return getCollection().lastIndexOf(o); }
public int indexOf(Object o) { if (!checkInitializedRead()) return -1; return getCollection().indexOf(o); }
public int indexOf(Object o) { if (!checkInitializedRead()) return -1; return getCollection().indexOf(o); }
public int lastIndexOf(Object o) { if (!checkInitializedRead()) return -1; return getCollection().lastIndexOf(o); }
public int indexOf(Object o) { if (!checkInitializedRead()) return -1; return getCollection().indexOf(o); }
public int lastIndexOf(Object o) { if (!checkInitializedRead()) return -1; return getCollection().lastIndexOf(o); }
public E get(int index) { if (!checkInitializedRead()) return null; return getCollection().get(index); }
public E set(int index, E element) { checkInitializedWrite(); E previousElement = getCollection().set(index, element); if (previousElement == null ? element != null : !previousElement.equals(element)) dirty(); return previousElement; }
public E set(int index, E element) { checkInitializedWrite(); E previousElement = getCollection().set(index, element); if (previousElement == null ? element != null : !previousElement.equals(element)) dirty(); return previousElement; }
public List<E> subList(int fromIndex, int toIndex) { if (!checkInitializedRead()) return null; return new ListProxy<E>(getCollection().subList(fromIndex, toIndex)); }
public E remove(int index) { checkInitializedWrite(); E previousElement = getCollection().remove(index); dirty(); return previousElement; }
public boolean addAll(int index, Collection<? extends E> c) { checkInitializedWrite(); if (getCollection().addAll(index, c)) { dirty(); return true; } return false; }
public void add(int index, E element) { checkInitializedWrite(); getCollection().add(index, element); dirty(); }
public boolean addAll(int index, Collection<? extends E> c) { checkInitializedWrite(); if (getCollection().addAll(index, c)) { dirty(); return true; } return false; }
public List<E> subList(int fromIndex, int toIndex) { if (!checkInitializedRead()) return null; return new ListProxy<E>(getCollection().subList(fromIndex, toIndex)); }
public List<E> subList(int fromIndex, int toIndex) { if (!checkInitializedRead()) return null; return new ListProxy<E>(getCollection().subList(fromIndex, toIndex)); }
public E remove(int index) { checkInitializedWrite(); E previousElement = getCollection().remove(index); dirty(); return previousElement; }
public void add(int index, E element) { checkInitializedWrite(); getCollection().add(index, element); dirty(); }
public boolean addAll(int index, Collection<? extends E> c) { checkInitializedWrite(); if (getCollection().addAll(index, c)) { dirty(); return true; } return false; }
public PersistentList<E> clone(boolean uninitialize) { PersistentList<E> list = new PersistentList<E>(); if (wasInitialized() && !uninitialize) list.init(getCollection(), null, isDirty()); return list; } }