59 public function processIntegrationConfig(array $integrationNames)
61 if (empty($integrationNames)) {
65 $integrations = $this->integrationConfig->getIntegrations();
66 foreach ($integrationNames as
$name) {
67 $integrationDetails = $integrations[
$name];
87 $this->integrationService->update($integrationData);
89 $this->integrationService->create($integrationData);
92 return $integrationNames;
104 if (empty($integrations)) {
108 foreach (array_keys($integrations) as
$name) {
109 $integrationDetails = $integrations[
$name];
123 if (isset($integrationDetails[
$name][
'resource'])) {
124 $integrationData[
'resource'] = $integrationDetails[
$name][
'resource'];
130 $originalResources = $this->aclRetriever->getAllowedResourcesByUser(
134 $updateData = $integrationData;
136 $integration = $this->integrationService->update($updateData);
139 if ($this->hasDataChanged(
$integration, $originalResources)) {
140 $this->integrationService->delete(
$integration->getId());
146 $this->integrationService->create($integrationData);
148 return $integrations;
166 $commonResources = array_intersect(
171 if (count($commonResources) != count($originalResources) || count($commonResources) != count($newResources)) {
__construct(\Magento\Integration\Api\IntegrationServiceInterface $integrationService, AclRetriever $aclRetriever, Config $integrationConfig)
processConfigBasedIntegrations(array $integrations)
const KEY_IDENTITY_LINKING_URL
const KEY_AUTHENTICATION_ENDPOINT_URL
const USER_TYPE_INTEGRATION
if(!isset($_GET['name'])) $name