Mercurial > hg > release > thermostat-0.6
changeset 971:eda9dc44feda
Change BackendInformation to implement Ordered
This simple commit follows up on a TODO I previously placed to sort
Backends using the OrderedComparator, which is done for
InformationServices. This was impossible before due to a cyclic
dependency between common-core and storage-core, but this has since been
resolved.
Reviewed-by: omajid
Review-thread: http://icedtea.classpath.org/pipermail/thermostat/2013-February/005643.html
author | Elliott Baron <ebaron@redhat.com> |
---|---|
date | Tue, 12 Feb 2013 14:01:51 -0500 |
parents | f6fc89409e10 |
children | af7bd0b8070f |
files | storage/core/src/main/java/com/redhat/thermostat/storage/internal/dao/BackendInfoDAOImpl.java storage/core/src/main/java/com/redhat/thermostat/storage/model/BackendInformation.java |
diffstat | 2 files changed, 5 insertions(+), 16 deletions(-) [+] |
line wrap: on
line diff
--- a/storage/core/src/main/java/com/redhat/thermostat/storage/internal/dao/BackendInfoDAOImpl.java Tue Feb 12 18:37:48 2013 +0100 +++ b/storage/core/src/main/java/com/redhat/thermostat/storage/internal/dao/BackendInfoDAOImpl.java Tue Feb 12 14:01:51 2013 -0500 @@ -38,9 +38,9 @@ import java.util.ArrayList; import java.util.Collections; -import java.util.Comparator; import java.util.List; +import com.redhat.thermostat.common.OrderedComparator; import com.redhat.thermostat.storage.core.Cursor; import com.redhat.thermostat.storage.core.HostRef; import com.redhat.thermostat.storage.core.Key; @@ -75,20 +75,7 @@ } // Sort before returning - Collections.sort(results, new Comparator<BackendInformation>() { - - // TODO Use OrderedComparator when common-core - // doesn't depend on storage-core - @Override - public int compare(BackendInformation o1, BackendInformation o2) { - int result = o1.getOrderValue() - o2.getOrderValue(); - // Break ties using class name - if (result == 0) { - result = o1.getClass().getName().compareTo(o2.getClass().getName()); - } - return result; - } - }); + Collections.sort(results, new OrderedComparator<>()); return results; }
--- a/storage/core/src/main/java/com/redhat/thermostat/storage/model/BackendInformation.java Tue Feb 12 18:37:48 2013 +0100 +++ b/storage/core/src/main/java/com/redhat/thermostat/storage/model/BackendInformation.java Tue Feb 12 14:01:51 2013 -0500 @@ -41,11 +41,12 @@ import java.util.Map; import java.util.Objects; +import com.redhat.thermostat.common.Ordered; import com.redhat.thermostat.storage.core.Entity; import com.redhat.thermostat.storage.core.Persist; @Entity -public class BackendInformation extends BasePojo { +public class BackendInformation extends BasePojo implements Ordered { private String name; private String description; @@ -109,6 +110,7 @@ this.isActive = active; } + @Override @Persist public int getOrderValue() { return orderValue;