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

Commit 46c49ed4 authored by Sameer's avatar Sameer
Browse files

Add TvWatchdogManager helper AIDL files

Bug: 335423167
Test: m
Flag: android.media.tv.flags.enable_tv_watchdog_emmc_protection
Change-Id: I7b69fa83be7630ab19d5c1eeda0f933c50298007
parent 8daf35d8
Loading
Loading
Loading
Loading
+24 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2025 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.media.tv.watchdogmanager;

import android.media.tv.watchdogmanager.ResourceOveruseStats;

/** @hide */
oneway interface IResourceOveruseListener {
    void onOveruse(in ResourceOveruseStats resourceOveruseStats);
}
+54 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2025 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.media.tv.watchdogmanager;

import android.media.tv.watchdogmanager.IResourceOveruseListener;
import android.media.tv.watchdogmanager.PackageKillableState;
import android.media.tv.watchdogmanager.ResourceOveruseConfiguration;
import android.media.tv.watchdogmanager.ResourceOveruseStats;
import android.os.UserHandle;

/** @hide */
interface ITvWatchdogService {

    ResourceOveruseStats getResourceOveruseStats(
        in int resourceOveruseFlag, in int maxStatsPeriod);
    List<ResourceOveruseStats> getAllResourceOveruseStats(
        in int resourceOveruseFlag, in int minimumStatsFlag, in int maxStatsPeriod);
    ResourceOveruseStats getResourceOveruseStatsForUserPackage(
        in String packageName, in UserHandle userHandle, in int resourceOveruseFlag,
            in int maxStatsPeriod);

    // addResourceOveruseListener needs to get callingUid, so cannot be oneway.
    void addResourceOveruseListener(
        in int resourceOveruseFlag, in IResourceOveruseListener listener);
    oneway void removeResourceOveruseListener(in IResourceOveruseListener listener);

    // Following APIs need to get calling pid/uid for permission checking, so cannot be oneway.
    void addResourceOveruseListenerForSystem(
        in int resourceOveruseFlag, in IResourceOveruseListener listener);
    void removeResourceOveruseListenerForSystem(in IResourceOveruseListener listener);

    void setKillablePackageAsUser(in String packageName, in UserHandle userHandle,
        in boolean isKillable);
    List<PackageKillableState> getPackageKillableStatesAsUser(in UserHandle user);

    int setResourceOveruseConfigurations(
        in List<ResourceOveruseConfiguration> configurations, in int resourceOveruseFlag);
    List<ResourceOveruseConfiguration> getResourceOveruseConfigurations(
        in int resourceOveruseFlag);
}
 No newline at end of file
+19 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2025 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.media.tv.watchdogmanager;

parcelable IoOveruseAlertThreshold;
+19 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2025 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.media.tv.watchdogmanager;

parcelable IoOveruseConfiguration;
+19 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2025 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.media.tv.watchdogmanager;

parcelable IoOveruseStats;
Loading