Migrate to refactored NetworkStats API.

Change-Id: I76452a67b74df873c88cb9092188e5e4ba83b991
diff --git a/src/com/android/settings/DataUsageSummary.java b/src/com/android/settings/DataUsageSummary.java
index bed3be5..4edda7d 100644
--- a/src/com/android/settings/DataUsageSummary.java
+++ b/src/com/android/settings/DataUsageSummary.java
@@ -745,9 +745,13 @@
 
         long start = currentTime;
         long end = currentTime;
-        if (history.bucketCount > 0) {
-            start = history.bucketStart[0];
-            end = history.bucketStart[history.bucketCount - 1];
+
+        NetworkStatsHistory.Entry entry = null;
+        if (history.size() > 0) {
+            entry = history.getValues(0, entry);
+            start = entry.bucketStart;
+            entry = history.getValues(history.size() - 1, entry);
+            end = entry.bucketStart + entry.bucketDuration;
         }
 
         return new long[] { start, end };
@@ -1081,11 +1085,12 @@
             mItems.clear();
 
             if (stats != null) {
-                for (int i = 0; i < stats.size; i++) {
-                    final long total = stats.rx[i] + stats.tx[i];
+                NetworkStats.Entry entry = null;
+                for (int i = 0; i < stats.size(); i++) {
+                    entry = stats.getValues(i, entry);
                     final AppUsageItem item = new AppUsageItem();
-                    item.uid = stats.uid[i];
-                    item.total = total;
+                    item.uid = entry.uid;
+                    item.total = entry.rxBytes + entry.txBytes;
                     mItems.add(item);
                 }
             }
diff --git a/src/com/android/settings/widget/ChartNetworkSeriesView.java b/src/com/android/settings/widget/ChartNetworkSeriesView.java
index 83c10cd..10d8976 100644
--- a/src/com/android/settings/widget/ChartNetworkSeriesView.java
+++ b/src/com/android/settings/widget/ChartNetworkSeriesView.java
@@ -140,7 +140,7 @@
         mPathFill.reset();
 
         // bail when not enough stats to render
-        if (mStats == null || mStats.bucketCount < 2) return;
+        if (mStats == null || mStats.size() < 2) return;
 
         final int width = getWidth();
         final int height = getHeight();
@@ -155,8 +155,11 @@
 
         long totalData = 0;
 
-        for (int i = 0; i < mStats.bucketCount; i++) {
-            final float x = mHoriz.convertToPoint(mStats.bucketStart[i]);
+        NetworkStatsHistory.Entry entry = null;
+        for (int i = 0; i < mStats.size(); i++) {
+            entry = mStats.getValues(i, entry);
+
+            final float x = mHoriz.convertToPoint(entry.bucketStart);
             final float y = mVert.convertToPoint(totalData);
 
             // skip until we find first stats on screen
@@ -170,7 +173,7 @@
             if (started) {
                 mPathStroke.lineTo(x, y);
                 mPathFill.lineTo(x, y);
-                totalData += mStats.rx[i] + mStats.tx[i];
+                totalData += entry.rxBytes + entry.txBytes;
             }
 
             // skip if beyond view