1 package emissary.client.response; 2 3 import jakarta.xml.bind.annotation.XmlAccessType; 4 import jakarta.xml.bind.annotation.XmlAccessorType; 5 import jakarta.xml.bind.annotation.XmlElement; 6 import org.slf4j.Logger; 7 import org.slf4j.LoggerFactory; 8 9 import java.io.Serializable; 10 import java.util.Set; 11 import java.util.SortedSet; 12 import java.util.TreeSet; 13 14 @XmlAccessorType(XmlAccessType.NONE) 15 public class DirectoryList implements Serializable { 16 private static final long serialVersionUID = -6660679929326876133L; 17 18 private static final Logger logger = LoggerFactory.getLogger(DirectoryList.class); 19 20 @XmlElement(name = "directoryPlace") 21 private String directoryPlace; 22 23 @XmlElement(name = "entries") 24 private SortedSet<Directory> entries; 25 26 public DirectoryList() { 27 entries = new TreeSet<>(); 28 } 29 30 public DirectoryList(String directoryPlace, SortedSet<Directory> entries) { 31 this.directoryPlace = directoryPlace; 32 this.entries = entries; 33 } 34 35 public String getDirectoryPlace() { 36 return directoryPlace; 37 } 38 39 public void setDirectoryPlace(String directoryPlace) { 40 this.directoryPlace = directoryPlace; 41 } 42 43 public Set<Directory> getEntries() { 44 return entries; 45 } 46 47 public void setEntries(SortedSet<Directory> entries) { 48 this.entries = entries; 49 } 50 51 public void addEntries(Directory entry) { 52 this.entries.add(entry); 53 } 54 55 public void dumpToConsole() { 56 if (getDirectoryPlace() != null) { 57 StringBuilder sb = new StringBuilder(); 58 sb.append("DirectoryPlace: ").append("\n"); 59 sb.append(" ").append(getDirectoryPlace()).append("\n").append("Entries: "); 60 for (Directory entry : getEntries()) { 61 sb.append("\n ").append(entry).append("$").append(entry.getExpense()); 62 } 63 logger.info("{}", sb); 64 } 65 } 66 }