1cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann/*
2cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann * Copyright (C) 2016 The Android Open Source Project
3cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann *
4cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann *  Licensed under the Apache License, Version 2.0 (the "License");
5cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann *  you may not use this file except in compliance with the License.
6cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann *  You may obtain a copy of the License at
7cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann *
8cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann *       http://www.apache.org/licenses/LICENSE-2.0
9cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann *
10cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann *  Unless required by applicable law or agreed to in writing, software
11cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann *  distributed under the License is distributed on an "AS IS" BASIS,
12cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann *  See the License for the specific language governing permissions and
14cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann *  limitations under the License.
15cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann */
16cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
17cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmannpackage com.android.printspooler.outofprocess.tests.mockservice;
18cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
19cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmannimport android.os.CancellationSignal;
20cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmannimport android.print.PrinterId;
21cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmannimport android.printservice.CustomPrinterIconCallback;
22cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
23cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmannimport java.util.List;
24cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
25cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmannpublic abstract class PrinterDiscoverySessionCallbacks {
26cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
27cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann    private StubbablePrinterDiscoverySession mSession;
28cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
29cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann    public void setSession(StubbablePrinterDiscoverySession session) {
30cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann        mSession = session;
31cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann    }
32cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
33cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann    public StubbablePrinterDiscoverySession getSession() {
34cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann        return mSession;
35cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann    }
36cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
37cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann    public abstract void onStartPrinterDiscovery(List<PrinterId> priorityList);
38cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
39cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann    public abstract void onStopPrinterDiscovery();
40cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
41cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann    public abstract void onValidatePrinters(List<PrinterId> printerIds);
42cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
43cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann    public abstract void onStartPrinterStateTracking(PrinterId printerId);
44cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
45cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann    public abstract void onRequestCustomPrinterIcon(PrinterId printerId,
46cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann            CancellationSignal cancellationSignal, CustomPrinterIconCallback callback);
47cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
48cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann    public abstract void onStopPrinterStateTracking(PrinterId printerId);
49cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann
50cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann    public abstract void onDestroy();
51cc021c9a204a17109c9ddf4cb03fc5b174f748b0Philip P. Moltmann}
52