26#ifndef AI_IPC_IPCFACTORY_H
27#define AI_IPC_IPCFACTORY_H
29#include "IIpcService.h"
35#define IPC_SERVICE_APP_PROCESS "com.sky.ai.app_process"
37namespace packagemanager
39 class IPackageManager;
65std::shared_ptr<IIpcService> createIpcService(
const std::shared_ptr<const AI_DBUS::IDbusServer>& dbusServer,
const std::string& serviceName,
int defaultTimeoutMs = -1);
81std::shared_ptr<IIpcService> createIpcService(
const std::shared_ptr<const AI_DBUS::IDbusServer>& dbusServer,
82 const std::string& serviceName,
83 const std::shared_ptr<packagemanager::IPackageManager> &packageManager,
84 bool dbusEntitlementCheckNeeded =
false,
85 int defaultTimeoutMs = -1);
99std::shared_ptr<IIpcService> createSystemBusIpcService(
const std::string& serviceName,
int defaultTimeoutMs = -1);
100std::shared_ptr<IIpcService> createSessionBusIpcService(
const std::string& serviceName,
int defaultTimeoutMs = -1);
115std::shared_ptr<IIpcService> createIpcService(
const std::string& address,
const std::string& serviceName,
int defaultTimeoutMs = -1);