package provider;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class MapleDataDirectoryEntry extends MapleDataEntry {
private List<MapleDataDirectoryEntry> subdirs = new ArrayList();
private List<MapleDataFileEntry> files = new ArrayList();
private Map<String, MapleDataEntry> entries = new HashMap();
public MapleDataDirectoryEntry(String name, int size, int checksum, MapleDataEntity parent) {
super(name, size, checksum, parent);
}
public MapleDataDirectoryEntry() {
super(null, 0, 0, null);
}
public void addDirectory(MapleDataDirectoryEntry dir) {
this.subdirs.add(dir);
this.entries.put(dir.getName(), dir);
}
public void addFile(MapleDataFileEntry fileEntry) {
this.files.add(fileEntry);
this.entries.put(fileEntry.getName(), fileEntry);
}
public List<MapleDataDirectoryEntry> getSubdirectories() {
return Collections.unmodifiableList(this.subdirs);
}
public List<MapleDataFileEntry> getFiles() {
return Collections.unmodifiableList(this.files);
}
public MapleDataEntry getEntry(String name) {
return (MapleDataEntry) this.entries.get(name);
}
}