1 /*
2  * Copyright (C) 2022 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package android.car.occupantconnection;
18 
19 import android.car.CarOccupantZoneManager;
20 import android.car.occupantconnection.IBackendConnectionResponder;
21 import android.car.occupantconnection.IPayloadCallback;
22 import android.car.occupantconnection.Payload;
23 import android.content.pm.SigningInfo;
24 
25 /**
26   * AIDL used by CarOccupantConnectionService to communicate to AbstractReceiverService.
27   *
28   * @hide
29   */
30 oneway interface IBackendReceiver {
31 
registerReceiver(in String receiverEndpointId, in IPayloadCallback callback)32     void registerReceiver(in String receiverEndpointId, in IPayloadCallback callback);
33 
unregisterReceiver(in String receiverEndpointId)34     void unregisterReceiver(in String receiverEndpointId);
35 
registerBackendConnectionResponder(in IBackendConnectionResponder responder)36     void registerBackendConnectionResponder(in IBackendConnectionResponder responder);
37 
onPayloadReceived(in CarOccupantZoneManager.OccupantZoneInfo senderZone, in Payload payload)38     void onPayloadReceived(in CarOccupantZoneManager.OccupantZoneInfo senderZone,
39         in Payload payload);
40 
onConnectionInitiated(in CarOccupantZoneManager.OccupantZoneInfo senderZone, long senderVersion, in SigningInfo senderSigningInfo)41     void onConnectionInitiated(in CarOccupantZoneManager.OccupantZoneInfo senderZone,
42         long senderVersion, in SigningInfo senderSigningInfo);
43 
onConnected(in CarOccupantZoneManager.OccupantZoneInfo senderZone)44     void onConnected(in CarOccupantZoneManager.OccupantZoneInfo senderZone);
45 
onConnectionCanceled(in CarOccupantZoneManager.OccupantZoneInfo senderZone)46     void onConnectionCanceled(in CarOccupantZoneManager.OccupantZoneInfo senderZone);
47 
onDisconnected(in CarOccupantZoneManager.OccupantZoneInfo senderZone)48     void onDisconnected(in CarOccupantZoneManager.OccupantZoneInfo senderZone);
49 }
50