193da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn/*
293da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn * Copyright (C) 2016 The Android Open Source Project
393da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn *
493da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn * Licensed under the Apache License, Version 2.0 (the "License");
593da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn * you may not use this file except in compliance with the License.
693da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn * You may obtain a copy of the License at
793da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn *
893da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn *      http://www.apache.org/licenses/LICENSE-2.0
993da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn *
1093da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn * Unless required by applicable law or agreed to in writing, software
1193da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn * distributed under the License is distributed on an "AS IS" BASIS,
1293da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1393da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn * See the License for the specific language governing permissions and
1493da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn * limitations under the License
1593da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn */
1693da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn
1793da8529345711fd1a5617f3c8b15c0921eececbTyler Gunnpackage com.android.internal.telephony.imsphone;
1893da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn
1993da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn/**
2093da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn * Interface implemented by modules which are capable of performing a pull of an external call.
2193da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn * This is used to break the dependency between {@link ImsExternalCallTracker} and
2293da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn * {@link ImsPhoneCallTracker}.
2393da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn *
2493da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn * @hide
2593da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn */
2693da8529345711fd1a5617f3c8b15c0921eececbTyler Gunnpublic interface ImsPullCall {
2793da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn    /**
2893da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn     * Initiate a pull of a call which has the specified phone number.
2993da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn     *
3093da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn     * @param number The phone number of the call to be pulled.
3193da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn     * @param videoState The video state of the call to be pulled.
323de018282cd7dae66d4dfff41303e81419d2004dTyler Gunn     * @param dialogId The {@link ImsExternalConnection#getCallId()} dialog Id associated with the
333de018282cd7dae66d4dfff41303e81419d2004dTyler Gunn     *                 call to be pulled.
3493da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn     */
353de018282cd7dae66d4dfff41303e81419d2004dTyler Gunn    void pullExternalCall(String number, int videoState, int dialogId);
3693da8529345711fd1a5617f3c8b15c0921eececbTyler Gunn}
37