diff options
Diffstat (limited to 'java/com/google/android/libraries/mobiledatadownload/internal/logging/NetworkLogger.java')
-rw-r--r-- | java/com/google/android/libraries/mobiledatadownload/internal/logging/NetworkLogger.java | 32 |
1 files changed, 29 insertions, 3 deletions
diff --git a/java/com/google/android/libraries/mobiledatadownload/internal/logging/NetworkLogger.java b/java/com/google/android/libraries/mobiledatadownload/internal/logging/NetworkLogger.java index 9f2ac1f..3109bf2 100644 --- a/java/com/google/android/libraries/mobiledatadownload/internal/logging/NetworkLogger.java +++ b/java/com/google/android/libraries/mobiledatadownload/internal/logging/NetworkLogger.java @@ -19,14 +19,19 @@ import static com.google.common.util.concurrent.Futures.immediateVoidFuture; import static com.google.common.util.concurrent.MoreExecutors.directExecutor; import android.content.Context; + import com.google.android.libraries.mobiledatadownload.Flags; import com.google.android.libraries.mobiledatadownload.annotations.InstanceId; import com.google.android.libraries.mobiledatadownload.internal.ApplicationContext; import com.google.android.libraries.mobiledatadownload.tracing.PropagatedFutures; import com.google.common.base.Optional; import com.google.common.util.concurrent.ListenableFuture; +import com.google.mobiledatadownload.LogProto.DataDownloadFileGroupStats; +import com.google.mobiledatadownload.LogProto.MddNetworkStats; import com.google.mobiledatadownload.internal.MetadataProto.FileGroupLoggingState; + import java.util.List; + import javax.inject.Inject; /** @@ -67,11 +72,32 @@ public class NetworkLogger { allDataUsageFuture, this::buildNetworkStats, directExecutor())); } - private Void buildNetworkStats(List<FileGroupLoggingState> allDataUsage) { + private MddNetworkStats buildNetworkStats(List<FileGroupLoggingState> allDataUsage) { long totalMddWifiCount = 0; long totalMddCellularCount = 0; - Void networkStatsBuilder = null; + MddNetworkStats.Builder networkStatsBuilder = MddNetworkStats.newBuilder(); + + for (FileGroupLoggingState fileGroupLoggingState : allDataUsage) { + networkStatsBuilder.addGroupStats( + MddNetworkStats.GroupStats.newBuilder() + .setDataDownloadFileGroupStats( + DataDownloadFileGroupStats.newBuilder() + .setOwnerPackage(fileGroupLoggingState.getGroupKey().getOwnerPackage()) + .setFileGroupName(fileGroupLoggingState.getGroupKey().getGroupName()) + .setFileGroupVersionNumber(fileGroupLoggingState.getFileGroupVersionNumber()) + .setBuildId(fileGroupLoggingState.getBuildId()) + .setVariantId(fileGroupLoggingState.getVariantId()) + .build()) + .setTotalWifiBytes(fileGroupLoggingState.getWifiUsage()) + .setTotalCellularBytes(fileGroupLoggingState.getCellularUsage())); + + totalMddWifiCount += fileGroupLoggingState.getWifiUsage(); + totalMddCellularCount += fileGroupLoggingState.getCellularUsage(); + } - return networkStatsBuilder; + networkStatsBuilder + .setTotalMddWifiBytes(totalMddWifiCount) + .setTotalMddCellularBytes(totalMddCellularCount); + return networkStatsBuilder.build(); } } |