From 7f6de9d02995ec698cbc34ef1b09ac428cb6ee85 Mon Sep 17 00:00:00 2001 From: Jonathan Cobb Date: Thu, 9 Jul 2020 03:35:28 -0400 Subject: [PATCH] fix device sort --- .../src/main/java/bubble/model/device/Device.java | 3 ++- .../model/device/DeviceStatusFirstComparator.java | 10 +++++----- .../java/bubble/resources/account/DevicesResource.java | 3 +-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/bubble-server/src/main/java/bubble/model/device/Device.java b/bubble-server/src/main/java/bubble/model/device/Device.java index ea2c8c90..dbce006f 100644 --- a/bubble-server/src/main/java/bubble/model/device/Device.java +++ b/bubble-server/src/main/java/bubble/model/device/Device.java @@ -13,6 +13,7 @@ import com.fasterxml.jackson.annotation.JsonProperty; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; +import lombok.ToString; import lombok.experimental.Accessors; import org.cobbzilla.wizard.model.Identifiable; import org.cobbzilla.wizard.model.IdentifiableBase; @@ -34,7 +35,7 @@ import static org.cobbzilla.util.reflect.ReflectionUtil.copy; import static org.cobbzilla.wizard.model.crypto.EncryptedTypes.ENCRYPTED_STRING; import static org.cobbzilla.wizard.model.crypto.EncryptedTypes.ENC_PAD; -@Entity @ECType(root=true) +@Entity @ECType(root=true) @ToString(of={"name"}) @ECTypeURIs(baseURI=EP_DEVICES, listFields={"name", "enabled"}) @NoArgsConstructor @Accessors(chain=true) @ECIndexes({ diff --git a/bubble-server/src/main/java/bubble/model/device/DeviceStatusFirstComparator.java b/bubble-server/src/main/java/bubble/model/device/DeviceStatusFirstComparator.java index 22dd641a..86ce5c96 100644 --- a/bubble-server/src/main/java/bubble/model/device/DeviceStatusFirstComparator.java +++ b/bubble-server/src/main/java/bubble/model/device/DeviceStatusFirstComparator.java @@ -1,6 +1,6 @@ package bubble.model.device; -import java.util.Comparator; +import java.util.*; public class DeviceStatusFirstComparator implements Comparator { @@ -8,11 +8,11 @@ public class DeviceStatusFirstComparator implements Comparator { @Override public int compare(Device d1, Device d2) { if (d1.hasStatus() && d2.hasStatus()) { - return Long.compare(d1.getCtime(), d2.getCtime()); + return Long.compare(d2.getCtime(), d1.getCtime()); } - if (d1.hasStatus()) return -1; - if (d2.hasStatus()) return 1; - return Long.compare(d1.getCtime(), d2.getCtime()); + if (d1.hasStatus()) return 1; + if (d2.hasStatus()) return -1; + return Long.compare(d2.getCtime(), d1.getCtime()); } } diff --git a/bubble-server/src/main/java/bubble/resources/account/DevicesResource.java b/bubble-server/src/main/java/bubble/resources/account/DevicesResource.java index b76afd07..ea078b5e 100644 --- a/bubble-server/src/main/java/bubble/resources/account/DevicesResource.java +++ b/bubble-server/src/main/java/bubble/resources/account/DevicesResource.java @@ -10,7 +10,6 @@ import bubble.model.device.Device; import bubble.model.device.DeviceSecurityLevel; import bubble.server.BubbleConfiguration; import bubble.service.cloud.DeviceIdService; -import edu.emory.mathcs.backport.java.util.Collections; import lombok.extern.slf4j.Slf4j; import org.glassfish.grizzly.http.server.Request; import org.glassfish.jersey.server.ContainerRequest; @@ -58,7 +57,7 @@ public class DevicesResource extends AccountOwnedResource { } @Override protected List sort(List list, Request req, ContainerRequest ctx) { - Collections.sort(list, DEVICE_WITH_STATUS_FIRST); + list.sort(DEVICE_WITH_STATUS_FIRST); return list; }