192be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey/*
292be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey * Copyright (C) 2013 The Android Open Source Project
392be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey *
492be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey * Licensed under the Apache License, Version 2.0 (the "License");
592be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey * you may not use this file except in compliance with the License.
692be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey * You may obtain a copy of the License at
792be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey *
892be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey *      http://www.apache.org/licenses/LICENSE-2.0
992be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey *
1092be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey * Unless required by applicable law or agreed to in writing, software
1192be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey * distributed under the License is distributed on an "AS IS" BASIS,
1292be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1392be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey * See the License for the specific language governing permissions and
1492be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey * limitations under the License.
1592be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey */
1692be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey
1792be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkeypackage android.net;
1892be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey
1992be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkeyimport com.google.caliper.SimpleBenchmark;
2092be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey
2192be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkeypublic class TrafficStatsBenchmark extends SimpleBenchmark {
2292be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey    public void timeGetUidRxBytes(int reps) {
2392be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey        for (int i = 0; i < reps; i++) {
2492be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey            TrafficStats.getUidRxBytes(android.os.Process.myUid());
2592be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey        }
2692be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey    }
2792be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey
2892be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey    public void timeGetMobileRxBytes(int reps) {
2992be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey        for (int i = 0; i < reps; i++) {
3092be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey            TrafficStats.getMobileRxBytes();
3192be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey        }
3292be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey    }
3392be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey
3492be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey    public void timeGetTotalRxBytes(int reps) {
3592be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey        for (int i = 0; i < reps; i++) {
3692be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey            TrafficStats.getTotalRxBytes();
3792be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey        }
3892be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey    }
3992be93a94edafb5906e8bc48e6fee9dd07f5049eJeff Sharkey}
40