package com.baselet.control.util;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class RecentlyUsedFilesList implements Iterable<String> {
private static RecentlyUsedFilesList instance = new RecentlyUsedFilesList();
public static RecentlyUsedFilesList getInstance() {
return instance;
}
private static final int LIST_LENGTH = 10;
private final List<String> recentFiles = new ArrayList<String>();
public void add(String filename) {
if (recentFiles.contains(filename)) {
recentFiles.remove(filename);
}
recentFiles.add(0, filename);
if (recentFiles.size() > RecentlyUsedFilesList.LIST_LENGTH) {
recentFiles.remove(RecentlyUsedFilesList.LIST_LENGTH);
}
}
public List<String> getList() {
return recentFiles;
}
@Override
public Iterator<String> iterator() {
return recentFiles.iterator();
}
public void addAll(List<String> items) {
recentFiles.addAll(items);
}
public boolean isEmpty() {
return recentFiles.isEmpty();
}
}