lib: sort fixes
[nikiroo-utils.git] / src / be / nikiroo / fanfix / data / MetaData.java
index 67fedbd35627a5da59968fe92e13b21533cae869..586196a663fea88aa39fe45111445d76df0d5651 100644 (file)
@@ -5,6 +5,7 @@ import java.util.ArrayList;
 import java.util.List;
 
 import be.nikiroo.utils.Image;
+import be.nikiroo.utils.StringUtils;
 
 /**
  * The meta data associated to a {@link Story} object.
@@ -111,6 +112,8 @@ public class MetaData implements Cloneable, Comparable<MetaData>, Serializable {
 
        /**
         * The story resume (a.k.a. description).
+        * <p>
+        * This can be NULL if we don't have a resume for this {@link Story}.
         * 
         * @return the resume
         */
@@ -387,12 +390,14 @@ public class MetaData implements Cloneable, Comparable<MetaData>, Serializable {
                        return 1;
                }
 
-               String id = (getUuid() == null ? "" : getUuid())
+               String id = (getTitle() == null ? "" : getTitle())
+                               + (getUuid() == null ? "" : getUuid())
                                + (getLuid() == null ? "" : getLuid());
-               String oId = (getUuid() == null ? "" : o.getUuid())
+               String oId = (getTitle() == null ? "" : o.getTitle())
+                               + (getUuid() == null ? "" : o.getUuid())
                                + (o.getLuid() == null ? "" : o.getLuid());
 
-               return id.compareTo(oId);
+               return id.compareToIgnoreCase(oId);
        }
 
        @Override
@@ -469,19 +474,8 @@ public class MetaData implements Cloneable, Comparable<MetaData>, Serializable {
 
                String cover = "none";
                if (getCover() != null) {
-                       cover = " bytes";
-
-                       int size = getCover().getData().length;
-                       if (size > 1000) {
-                               size /= 1000;
-                               cover = " kb";
-                               if (size > 1000) {
-                                       size /= 1000;
-                                       cover = " mb";
-                               }
-                       }
-
-                       cover = size + cover;
+                       cover = StringUtils.formatNumber(getCover().getSize())
+                                       + "bytes";
                }
 
                return String.format(