summaryrefslogtreecommitdiffstats
path: root/src/main/java/de/bwlehrpool/bwlp_guac/JsonLocation.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/de/bwlehrpool/bwlp_guac/JsonLocation.java')
-rw-r--r--src/main/java/de/bwlehrpool/bwlp_guac/JsonLocation.java34
1 files changed, 33 insertions, 1 deletions
diff --git a/src/main/java/de/bwlehrpool/bwlp_guac/JsonLocation.java b/src/main/java/de/bwlehrpool/bwlp_guac/JsonLocation.java
index 6bf9d1c..e6fc1b6 100644
--- a/src/main/java/de/bwlehrpool/bwlp_guac/JsonLocation.java
+++ b/src/main/java/de/bwlehrpool/bwlp_guac/JsonLocation.java
@@ -1,5 +1,10 @@
package de.bwlehrpool.bwlp_guac;
+import org.codehaus.jackson.annotate.JsonIgnore;
+import org.codehaus.jackson.annotate.JsonProperty;
+
+import java.util.ArrayList;
+
public class JsonLocation {
public int id;
@@ -7,7 +12,34 @@ public class JsonLocation {
public int[] locationids;
public String name;
-
+
public String password;
+
+ @JsonProperty("password")
+ public Boolean hasPassword() { return password != null; }
+
+ @JsonProperty("freeCount")
+ public int getFreeCount() {
+ int count = 0;
+ for (AvailableClient client : clientList) {
+ if (client.getState() == JsonClient.State.IDLE) count++;
+ }
+ return count;
+ }
+
+ @JsonProperty("offlineCount")
+ public int getOfflineCount() {
+ int count = 0;
+ for (AvailableClient client : clientList) {
+ if (client.getState() == JsonClient.State.OFFLINE || client.getState() == JsonClient.State.STANDBY) count++;
+ }
+ return count;
+ }
+
+ @JsonIgnore
+ public ArrayList<AvailableClient> clientList = new ArrayList<AvailableClient>();
+
+ @JsonIgnore
+ public boolean checked = false;
}