175876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme/**
275876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme * Copyright (c) 2016, The Android Open Source Project
375876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme *
475876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme * Licensed under the Apache License, Version 2.0 (the "License");
575876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme * you may not use this file except in compliance with the License.
675876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme * You may obtain a copy of the License at
775876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme *
875876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme *     http://www.apache.org/licenses/LICENSE-2.0
975876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme *
1075876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme * Unless required by applicable law or agreed to in writing, software
1175876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme * distributed under the License is distributed on an "AS IS" BASIS,
1275876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1375876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme * See the License for the specific language governing permissions and
1475876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme * limitations under the License.
1575876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme */
1675876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme
1775876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Lemepackage android.os;
1875876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme
1975876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Lemeimport android.os.IDumpstateListener;
20009ecbbd3fcfd06735b0102f0342fc7e60166d9bFelipe Lemeimport android.os.IDumpstateToken;
2175876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme
2275876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme/**
2375876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme  * Binder interface for the currently running dumpstate process.
2475876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme  * {@hide}
2575876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme  */
2675876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Lemeinterface IDumpstate {
2775876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme
2875876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme    /*
29009ecbbd3fcfd06735b0102f0342fc7e60166d9bFelipe Leme     * Sets the listener for this dumpstate progress.
3075876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme     *
31009ecbbd3fcfd06735b0102f0342fc7e60166d9bFelipe Leme     * Returns a token used to monitor dumpstate death, or `nullptr` if the listener was already
32009ecbbd3fcfd06735b0102f0342fc7e60166d9bFelipe Leme     * set (the listener behaves like a Highlander: There Can be Only One).
3375876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme     */
34009ecbbd3fcfd06735b0102f0342fc7e60166d9bFelipe Leme    IDumpstateToken setListener(@utf8InCpp String name, IDumpstateListener listener);
3575876a2c0649b8cde36329ca0a1dc6e349af6493Felipe Leme}
36