Home | History | Annotate | Download | only in data
      1 package com.android.gallery3d.ingest.data;
      2 
      3 import android.annotation.TargetApi;
      4 import android.os.Build;
      5 
      6 /**
      7  * Date bucket for {@link MtpDeviceIndex}.
      8  * See {@link MtpDeviceIndexRunnable} for implementation notes.
      9  */
     10 @TargetApi(Build.VERSION_CODES.HONEYCOMB_MR1)
     11 class DateBucket implements Comparable<DateBucket> {
     12   final SimpleDate date;
     13   final int unifiedStartIndex;
     14   final int unifiedEndIndex;
     15   final int itemsStartIndex;
     16   final int numItems;
     17 
     18   public DateBucket(SimpleDate date, int unifiedStartIndex, int unifiedEndIndex,
     19       int itemsStartIndex, int numItems) {
     20     this.date = date;
     21     this.unifiedStartIndex = unifiedStartIndex;
     22     this.unifiedEndIndex = unifiedEndIndex;
     23     this.itemsStartIndex = itemsStartIndex;
     24     this.numItems = numItems;
     25   }
     26 
     27   @Override
     28   public String toString() {
     29     return date.toString();
     30   }
     31 
     32   @Override
     33   public int hashCode() {
     34     return date.hashCode();
     35   }
     36 
     37   @Override
     38   public boolean equals(Object obj) {
     39     if (this == obj) {
     40       return true;
     41     }
     42     if (obj == null) {
     43       return false;
     44     }
     45     if (!(obj instanceof DateBucket)) {
     46       return false;
     47     }
     48     DateBucket other = (DateBucket) obj;
     49     if (date == null) {
     50       if (other.date != null) {
     51         return false;
     52       }
     53     } else if (!date.equals(other.date)) {
     54       return false;
     55     }
     56     return true;
     57   }
     58 
     59   @Override
     60   public int compareTo(DateBucket another) {
     61     return this.date.compareTo(another.date);
     62   }
     63 }