View Javadoc
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  }