/**
  * Check whether integration data or assigned resources were changed
  *
  * @param Integration $integration
  * @param array $originalResources
  * @return bool
  */
 private function hasDataChanged(Integration $integration, $originalResources)
 {
     if (!$integration->getOrigData()) {
         return true;
     }
     // Check if resources have changed
     $newResources = $integration->getData('resource');
     $commonResources = array_intersect($originalResources, $newResources);
     if (count($commonResources) != count($originalResources) || count($commonResources) != count($newResources)) {
         return true;
     }
     // Check if other data has changed
     $fields = [Integration::ID, Integration::NAME, Integration::EMAIL, Integration::ENDPOINT, Integration::IDENTITY_LINK_URL, Integration::SETUP_TYPE, Integration::CONSUMER_ID];
     foreach ($fields as $field) {
         if ($integration->getOrigData($field) != $integration->getData($field)) {
             return true;
         }
     }
     return false;
 }