Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ca6486e7 authored by Sasha Levitskiy's avatar Sasha Levitskiy
Browse files

Removed Throttle Manager as obsolete

Change-Id: I63e8514f34c880d0badaab33a347f54a80c84da6
parent 707a71e3
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -123,7 +123,6 @@ LOCAL_SRC_FILES += \
	core/java/android/hardware/usb/IUsbManager.aidl \
	core/java/android/net/IConnectivityManager.aidl \
	core/java/android/net/INetworkManagementEventObserver.aidl \
	core/java/android/net/IThrottleManager.aidl \
	core/java/android/net/INetworkPolicyListener.aidl \
	core/java/android/net/INetworkPolicyManager.aidl \
	core/java/android/net/INetworkStatsService.aidl \
+0 −8
Original line number Diff line number Diff line
@@ -63,8 +63,6 @@ import android.net.ConnectivityManager;
import android.net.IConnectivityManager;
import android.net.INetworkPolicyManager;
import android.net.NetworkPolicyManager;
import android.net.ThrottleManager;
import android.net.IThrottleManager;
import android.net.Uri;
import android.net.nsd.INsdManager;
import android.net.nsd.NsdManager;
@@ -474,12 +472,6 @@ class ContextImpl extends Context {
                    return new TelephonyManager(ctx.getOuterContext());
                }});

        registerService(THROTTLE_SERVICE, new StaticServiceFetcher() {
                public Object createStaticService() {
                    IBinder b = ServiceManager.getService(THROTTLE_SERVICE);
                    return new ThrottleManager(IThrottleManager.Stub.asInterface(b));
                }});

        registerService(UI_MODE_SERVICE, new ServiceFetcher() {
                public Object createService(ContextImpl ctx) {
                    return new UiModeManager();
+0 −11
Original line number Diff line number Diff line
@@ -1991,17 +1991,6 @@ public abstract class Context {
     */
    public static final String CONNECTIVITY_SERVICE = "connectivity";

    /**
     * Use with {@link #getSystemService} to retrieve a {@link
     * android.net.ThrottleManager} for handling management of
     * throttling.
     *
     * @hide
     * @see #getSystemService
     * @see android.net.ThrottleManager
     */
    public static final String THROTTLE_SERVICE = "throttle";

    /**
     * Use with {@link #getSystemService} to retrieve a {@link
     * android.os.IUpdateLock} for managing runtime sequences that
+0 −40
Original line number Diff line number Diff line
/**
 * Copyright (c) 2010, The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.net;

import android.os.IBinder;

/**
 * Interface that answers queries about data transfer amounts and throttling
 */
/** {@hide} */
interface IThrottleManager
{
    long getByteCount(String iface, int dir, int period, int ago);

    int getThrottle(String iface);

    long getResetTime(String iface);

    long getPeriodStartTime(String iface);

    long getCliffThreshold(String iface, int cliff);

    int getCliffLevel(String iface, int cliff);

    String getHelpUri();
}
+0 −214
Original line number Diff line number Diff line
/*
 * Copyright (C) 2008 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.net;

import android.annotation.SdkConstant;
import android.annotation.SdkConstant.SdkConstantType;
import android.os.Binder;
import android.os.RemoteException;

/**
 * Class that handles throttling.  It provides read/write numbers per interface
 * and methods to apply throttled rates.
 * {@hide}
 */
public class ThrottleManager
{
    /**
     * Broadcast each polling period to indicate new data counts.
     *
     * Includes four extras:
     * EXTRA_CYCLE_READ - a long of the read bytecount for the current cycle
     * EXTRA_CYCLE_WRITE -a long of the write bytecount for the current cycle
     * EXTRA_CYLCE_START -a long of MS for the cycle start time
     * EXTRA_CYCLE_END   -a long of MS for the cycle stop time
     * {@hide}
     */
    public static final String THROTTLE_POLL_ACTION = "android.net.thrott.POLL_ACTION";
    /**
     * The lookup key for a long for the read bytecount for this period.  Retrieve with
     * {@link android.content.Intent#getLongExtra(String)}.
     * {@hide}
     */
    public static final String EXTRA_CYCLE_READ = "cycleRead";
    /**
     * contains a long of the number of bytes written in the cycle
     * {@hide}
     */
    public static final String EXTRA_CYCLE_WRITE = "cycleWrite";
    /**
     * contains a long of the number of bytes read in the cycle
     * {@hide}
     */
    public static final String EXTRA_CYCLE_START = "cycleStart";
    /**
     * contains a long of the ms since 1970 used to init a calendar, etc for the end
     * of the cycle
     * {@hide}
     */
    public static final String EXTRA_CYCLE_END = "cycleEnd";

    /**
     * Broadcast when the thottle level changes.
     * {@hide}
     */
    public static final String THROTTLE_ACTION = "android.net.thrott.THROTTLE_ACTION";
    /**
     * int of the current bandwidth in TODO
     * {@hide}
     */
    public static final String EXTRA_THROTTLE_LEVEL = "level";

    /**
     * Broadcast on boot and whenever the settings change.
     * {@hide}
     */
    public static final String POLICY_CHANGED_ACTION = "android.net.thrott.POLICY_CHANGED_ACTION";

    // {@hide}
    public static final int DIRECTION_TX = 0;
    // {@hide}
    public static final int DIRECTION_RX = 1;

    // {@hide}
    public static final int PERIOD_CYCLE  = 0;
    // {@hide}
    public static final int PERIOD_YEAR   = 1;
    // {@hide}
    public static final int PERIOD_MONTH  = 2;
    // {@hide}
    public static final int PERIOD_WEEK   = 3;
    // @hide
    public static final int PERIOD_7DAY   = 4;
    // @hide
    public static final int PERIOD_DAY    = 5;
    // @hide
    public static final int PERIOD_24HOUR = 6;
    // @hide
    public static final int PERIOD_HOUR   = 7;
    // @hide
    public static final int PERIOD_60MIN  = 8;
    // @hide
    public static final int PERIOD_MINUTE = 9;
    // @hide
    public static final int PERIOD_60SEC  = 10;
    // @hide
    public static final int PERIOD_SECOND = 11;

    

    /**
     * returns a long of the ms from the epoch to the time the current cycle ends for the
     * named interface
     * {@hide}
     */
    public long getResetTime(String iface) {
        try {
            return mService.getResetTime(iface);
        } catch (RemoteException e) {
            return -1;
        }
    }

    /**
     * returns a long of the ms from the epoch to the time the current cycle started for the
     * named interface
     * {@hide}
     */
    public long getPeriodStartTime(String iface) {
        try {
            return mService.getPeriodStartTime(iface);
        } catch (RemoteException e) {
            return -1;
        }
    }

    /**
     * returns a long of the byte count either read or written on the named interface
     * for the period described.  Direction is either DIRECTION_RX or DIRECTION_TX and
     * period may only be PERIOD_CYCLE for the current cycle (other periods may be supported
     * in the future).  Ago indicates the number of periods in the past to lookup - 0 means
     * the current period, 1 is the last one, 2 was two periods ago..
     * {@hide}
     */
    public long getByteCount(String iface, int direction, int period, int ago) {
        try {
            return mService.getByteCount(iface, direction, period, ago);
        } catch (RemoteException e) {
            return -1;
        }
    }

    /**
     * returns the number of bytes read+written after which a particular cliff
     * takes effect on the named iface.  Currently only cliff #1 is supported (1 step)
     * {@hide}
     */
    public long getCliffThreshold(String iface, int cliff) {
        try {
            return mService.getCliffThreshold(iface, cliff);
        } catch (RemoteException e) {
            return -1;
        }
    }

    /**
     * returns the thottling bandwidth (bps) for a given cliff # on the named iface.
     * only cliff #1 is currently supported.
     * {@hide}
     */
    public int getCliffLevel(String iface, int cliff) {
        try {
            return mService.getCliffLevel(iface, cliff);
        } catch (RemoteException e) {
            return -1;
        }
    }

    /**
     * returns the help URI for throttling
     * {@hide}
     */
    public String getHelpUri() {
        try {
            return mService.getHelpUri();
        } catch (RemoteException e) {
            return null;
        }
    }


    private IThrottleManager mService;

    /**
     * Don't allow use of default constructor.
     */
    @SuppressWarnings({"UnusedDeclaration"})
    private ThrottleManager() {
    }

    /**
     * {@hide}
     */
    public ThrottleManager(IThrottleManager service) {
        if (service == null) {
            throw new IllegalArgumentException(
                "ThrottleManager() cannot be constructed with null service");
        }
        mService = service;
    }
}
Loading