AIDL interface for servicetracker

Change-Id: Id1e994a9e748c6548bb9aeaaff1a4ae435872b48
This commit is contained in:
Pooja Singh
2023-02-28 10:08:16 +05:30
parent f00bdc00ca
commit 0a519b2ae4
26 changed files with 766 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
aidl_interface {
name: "vendor.qti.hardware.servicetrackeraidl",
vendor_available: true,
host_supported: true,
system_ext_specific: true,
srcs: ["vendor/qti/hardware/servicetrackeraidl/*.aidl"],
stability: "vintf",
backend: {
cpp: {
enabled: false,
},
ndk: {
enabled: true,
},
java: {
enabled: true,
sdk_version: "module_current",
},
},
versions_with_info: [
{
version: "1",
imports: [],
},
],
frozen: true,
}

View File

@@ -0,0 +1 @@
fd4771abe6e1c694687c871ee5d888b6e9cbf7b0

View File

@@ -0,0 +1,29 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
parcelable ClientConnection {
String serviceName;
int servicePid;
int count;
}

View File

@@ -0,0 +1,28 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
parcelable ClientData {
String processName;
int pid;
}

View File

@@ -0,0 +1,29 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
parcelable ClientRecord {
String processName;
int pid;
vendor.qti.hardware.servicetrackeraidl.ClientConnection[] conn;
}

View File

@@ -0,0 +1,40 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
interface IServicetracker {
oneway void bindService(in vendor.qti.hardware.servicetrackeraidl.ServiceData serviceData, in vendor.qti.hardware.servicetrackeraidl.ClientData clientData);
oneway void destroyService(in vendor.qti.hardware.servicetrackeraidl.ServiceData serviceData);
vendor.qti.hardware.servicetrackeraidl.ClientConnection[] getClientConnections(in String clientName);
int getPid(in String processName);
int[] getPids(in String[] serviceList);
int[] getRunningServicePid();
int getServiceBCount(out vendor.qti.hardware.servicetrackeraidl.ServiceRecord[] bServiceList);
vendor.qti.hardware.servicetrackeraidl.ServiceConnection[] getServiceConnections(in String serviceName);
vendor.qti.hardware.servicetrackeraidl.ClientRecord getclientInfo(in String clientName);
vendor.qti.hardware.servicetrackeraidl.ServiceRecord getserviceInfo(in String serviceName);
boolean isServiceB(in String serviceName);
oneway void killProcess(in int pid);
oneway void startService(in vendor.qti.hardware.servicetrackeraidl.ServiceData serviceData);
oneway void unbindService(in vendor.qti.hardware.servicetrackeraidl.ServiceData serviceData, in vendor.qti.hardware.servicetrackeraidl.ClientData clientData);
}

View File

@@ -0,0 +1,29 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
parcelable ServiceConnection {
String clientName;
int clientPid;
int count;
}

View File

@@ -0,0 +1,31 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
parcelable ServiceData {
String packageName;
String processName;
int pid;
double lastActivity;
boolean serviceB;
}

View File

@@ -0,0 +1,32 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
parcelable ServiceRecord {
String packageName;
String processName;
int pid;
boolean serviceB;
double lastActivity;
vendor.qti.hardware.servicetrackeraidl.ServiceConnection[] conn;
}

View File

@@ -0,0 +1,31 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@Backing(type="int") @VintfStability
enum Status {
SUCCESS = 0,
ERROR_NOT_AVAILABLE = 1,
ERROR_INVALID_ARGS = 2,
ERROR_NOT_SUPPORTED = 3,
ERROR_UNKNOWN = 4,
}

View File

@@ -0,0 +1,29 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
parcelable ClientConnection {
String serviceName;
int servicePid;
int count;
}

View File

@@ -0,0 +1,28 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
parcelable ClientData {
String processName;
int pid;
}

View File

@@ -0,0 +1,29 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
parcelable ClientRecord {
String processName;
int pid;
vendor.qti.hardware.servicetrackeraidl.ClientConnection[] conn;
}

View File

@@ -0,0 +1,40 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
interface IServicetracker {
oneway void bindService(in vendor.qti.hardware.servicetrackeraidl.ServiceData serviceData, in vendor.qti.hardware.servicetrackeraidl.ClientData clientData);
oneway void destroyService(in vendor.qti.hardware.servicetrackeraidl.ServiceData serviceData);
vendor.qti.hardware.servicetrackeraidl.ClientConnection[] getClientConnections(in String clientName);
int getPid(in String processName);
int[] getPids(in String[] serviceList);
int[] getRunningServicePid();
int getServiceBCount(out vendor.qti.hardware.servicetrackeraidl.ServiceRecord[] bServiceList);
vendor.qti.hardware.servicetrackeraidl.ServiceConnection[] getServiceConnections(in String serviceName);
vendor.qti.hardware.servicetrackeraidl.ClientRecord getclientInfo(in String clientName);
vendor.qti.hardware.servicetrackeraidl.ServiceRecord getserviceInfo(in String serviceName);
boolean isServiceB(in String serviceName);
oneway void killProcess(in int pid);
oneway void startService(in vendor.qti.hardware.servicetrackeraidl.ServiceData serviceData);
oneway void unbindService(in vendor.qti.hardware.servicetrackeraidl.ServiceData serviceData, in vendor.qti.hardware.servicetrackeraidl.ClientData clientData);
}

View File

@@ -0,0 +1,29 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
parcelable ServiceConnection {
String clientName;
int clientPid;
int count;
}

View File

@@ -0,0 +1,31 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
parcelable ServiceData {
String packageName;
String processName;
int pid;
double lastActivity;
boolean serviceB;
}

View File

@@ -0,0 +1,32 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@VintfStability
parcelable ServiceRecord {
String packageName;
String processName;
int pid;
boolean serviceB;
double lastActivity;
vendor.qti.hardware.servicetrackeraidl.ServiceConnection[] conn;
}

View File

@@ -0,0 +1,31 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
///////////////////////////////////////////////////////////////////////////////
// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
// the interface (from the latest frozen version), the build system will
// prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
package vendor.qti.hardware.servicetrackeraidl;
@Backing(type="int") @VintfStability
enum Status {
SUCCESS = 0,
ERROR_NOT_AVAILABLE = 1,
ERROR_INVALID_ARGS = 2,
ERROR_NOT_SUPPORTED = 3,
ERROR_UNKNOWN = 4,
}

View File

@@ -0,0 +1,16 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
package vendor.qti.hardware.servicetrackeraidl;
/**
* structure to define client to service connection
*/
@VintfStability
parcelable ClientConnection {
String serviceName;
int servicePid;
int count;
}

View File

@@ -0,0 +1,15 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
package vendor.qti.hardware.servicetrackeraidl;
/**
* Client information recieved by AMS
*/
@VintfStability
parcelable ClientData {
String processName;
int pid;
}

View File

@@ -0,0 +1,18 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
package vendor.qti.hardware.servicetrackeraidl;
import vendor.qti.hardware.servicetrackeraidl.ClientConnection;
/**
* Client information
*/
@VintfStability
parcelable ClientRecord {
String processName;
int pid;
ClientConnection[] conn;
}

View File

@@ -0,0 +1,102 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
package vendor.qti.hardware.servicetrackeraidl;
import vendor.qti.hardware.servicetrackeraidl.ClientConnection;
import vendor.qti.hardware.servicetrackeraidl.ClientData;
import vendor.qti.hardware.servicetrackeraidl.ClientRecord;
import vendor.qti.hardware.servicetrackeraidl.ServiceConnection;
import vendor.qti.hardware.servicetrackeraidl.ServiceData;
import vendor.qti.hardware.servicetrackeraidl.ServiceRecord;
import vendor.qti.hardware.servicetrackeraidl.Status;
// Interface inherits from vendor.qti.hardware.servicetrackeraidl@1.0::IServicetracker but AIDL does not support interface inheritance (methods have been flattened).
@VintfStability
interface IServicetracker {
/**
* Collect and update the information for the service which is just bound to
* @param clientData
* @param serviceData
*/
oneway void bindService(in ServiceData serviceData, in ClientData clientData);
/**
* Update the service information when service specified by
* @param serviceData has been destroyed
*/
oneway void destroyService(in ServiceData serviceData);
/**
* Return the list of services associated with the client
* specified by @param clientName
*/
ClientConnection[] getClientConnections(in String clientName);
/**
* Return the pid of the process specified by @param processName
*/
int getPid(in String processName);
/**
* Return the pid of the services listed in @param serviceList
*/
int[] getPids(in String[] serviceList);
/**
* Return Pids of all the running Android Services.
*/
int[] getRunningServicePid();
/**
* generate the list of b services running in system
*/
int getServiceBCount(out ServiceRecord[] bServiceList);
/**
* Return list of clients associated with the service specified by
* @param serviceName
*/
ServiceConnection[] getServiceConnections(in String serviceName);
/**
* Return all the details related to Client specified by @param
* clientName
*/
ClientRecord getclientInfo(in String clientName);
/**
* Return all the details related to Service specified by @param
* serviceName
*/
ServiceRecord getserviceInfo(in String serviceName);
/**
* Return whether a service specified by @param serviceName is
* B-Service or not
*/
boolean isServiceB(in String serviceName);
/**
* Update the service and client information when process
* specified by @param pid got killed
*/
oneway void killProcess(in int pid);
/**
* Collect the information related to service that is just started
* @param serviceData contains details of the service,@param clientData
* contains the details of client which has started the service
*/
oneway void startService(in ServiceData serviceData);
/**
* Update the bind information of sevice,client pair specified
* by @param serviceData and @param clientData
*/
oneway void unbindService(in ServiceData serviceData, in ClientData clientData);
}

View File

@@ -0,0 +1,16 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
package vendor.qti.hardware.servicetrackeraidl;
/**
* structure to define service to client connection
*/
@VintfStability
parcelable ServiceConnection {
String clientName;
int clientPid;
int count;
}

View File

@@ -0,0 +1,18 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
package vendor.qti.hardware.servicetrackeraidl;
/**
* Service information recieved by AMS
*/
@VintfStability
parcelable ServiceData {
String packageName;
String processName;
int pid;
double lastActivity;
boolean serviceB;
}

View File

@@ -0,0 +1,21 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
package vendor.qti.hardware.servicetrackeraidl;
import vendor.qti.hardware.servicetrackeraidl.ServiceConnection;
/**
* Service information
*/
@VintfStability
parcelable ServiceRecord {
String packageName;
String processName;
int pid;
boolean serviceB;
double lastActivity;
ServiceConnection[] conn;
}

View File

@@ -0,0 +1,33 @@
/*
*Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*SPDX-License-Identifier: BSD-3-Clause-Clear
*/
package vendor.qti.hardware.servicetrackeraidl;
/**
* Enum Values indicating the result of operation
*/
@VintfStability
@Backing(type="int")
enum Status {
/**
* No errors.
*/
SUCCESS,
/**
* the component for which the query is made
* is not yet available
*/
ERROR_NOT_AVAILABLE,
/**
* the arguments passed are invalid
*/
ERROR_INVALID_ARGS,
/**
* the information asked for the componenent
* is not supported
*/
ERROR_NOT_SUPPORTED,
ERROR_UNKNOWN,
}