Convert the contact fields cache group to standard cache backend
authorSeamus Lee <seamuslee001@gmail.com>
Tue, 18 Jun 2019 22:46:06 +0000 (08:46 +1000)
committerSeamus Lee <seamuslee001@gmail.com>
Sun, 14 Jul 2019 12:20:30 +0000 (22:20 +1000)
12 files changed:
CRM/ACL/BAO/ACL.php
CRM/ACL/Form/ACL.php
CRM/Admin/Form/Setting/Localization.php
CRM/Contact/BAO/Contact.php
CRM/Core/BAO/Cache/Psr16.php
CRM/Core/BAO/CustomField.php
CRM/Core/BAO/CustomGroup.php
CRM/Custom/Form/ChangeFieldType.php
CRM/Custom/Form/Field.php
CRM/Custom/Form/Group.php
CRM/Utils/System.php
Civi/Core/Container.php

index abf87247bbe8e073e7512bfe08bbc48d0c6be8ff..bc823b97037b03cc0b7b227be7dd0a5e6c6489be 100644 (file)
@@ -688,7 +688,7 @@ SELECT $acl.*
    */
   public static function setIsActive($id, $is_active) {
     // note this also resets any ACL cache
-    CRM_Core_BAO_Cache::deleteGroup('contact fields');
+    Civi::cache('fields')->flush();
 
     return CRM_Core_DAO::setFieldValue('CRM_ACL_DAO_ACL', $id, 'is_active', $is_active);
   }
index b119f7503aedd1435100bd42ade6a72267597037..b0824e56b2a5a2b73ae4fce008eb092986594660 100644 (file)
@@ -254,7 +254,7 @@ class CRM_ACL_Form_ACL extends CRM_Admin_Form {
    */
   public function postProcess() {
     // note this also resets any ACL cache
-    CRM_Core_BAO_Cache::deleteGroup('contact fields');
+    Civi::cache('fields')->flush();
 
     if ($this->_action & CRM_Core_Action::DELETE) {
       CRM_ACL_BAO_ACL::del($this->_id);
index e5c52cd7c335b47b021150de0d2c3391c4bb94ca..2e85c5924a39e05541a30690eac403174d4b9e79 100644 (file)
@@ -184,7 +184,7 @@ class CRM_Admin_Form_Setting_Localization extends CRM_Admin_Form_Setting {
 
     //cache contact fields retaining localized titles
     //though we changed localization, so reseting cache.
-    CRM_Core_BAO_Cache::deleteGroup('contact fields');
+    Civi::cache('fields')->flush();
 
     //CRM-8559, cache navigation do not respect locale if it is changed, so reseting cache.
     Civi::cache('navigation')->flush();
index bd56e2127e43b6622aa65e71e49c99f2b4d75a94..fce78b7affacef83d9395f3a698c39bfcb61872a 100644 (file)
@@ -1351,12 +1351,7 @@ WHERE     civicrm_contact.id = " . CRM_Utils_Type::escape($id, 'Integer');
     $cacheKeyString .= $checkPermission ? '_1' : '_0';
     $cacheKeyString .= '_' . CRM_Core_Config::domainID() . '_';
 
-    $fields = CRM_Utils_Array::value($cacheKeyString, self::$_importableFields);
-
-    if (!$fields) {
-      // check if we can retrieve from database cache
-      $fields = CRM_Core_BAO_Cache::getItem('contact fields', $cacheKeyString);
-    }
+    $fields = CRM_Utils_Array::value($cacheKeyString, self::$_importableFields) ?: Civi::cache('fields')->get($cacheKeyString);
 
     if (!$fields) {
       $fields = CRM_Contact_DAO_Contact::import();
@@ -1494,7 +1489,7 @@ WHERE     civicrm_contact.id = " . CRM_Utils_Type::escape($id, 'Integer');
       //Sorting fields in alphabetical order(CRM-1507)
       $fields = CRM_Utils_Array::crmArraySortByField($fields, 'title');
 
-      CRM_Core_BAO_Cache::setItem($fields, 'contact fields', $cacheKeyString);
+      Civi::cache('fields')->set($cacheKeyString, $fields);
     }
 
     self::$_importableFields[$cacheKeyString] = $fields;
@@ -1552,7 +1547,7 @@ WHERE     civicrm_contact.id = " . CRM_Utils_Type::escape($id, 'Integer');
       }
 
       // check if we can retrieve from database cache
-      $fields = CRM_Core_BAO_Cache::getItem('contact fields', $cacheKeyString);
+      $fields = Civi::cache('fields')->get($cacheKeyString);
 
       if (!$fields) {
         $fields = CRM_Contact_DAO_Contact::export();
@@ -1742,7 +1737,7 @@ WHERE     civicrm_contact.id = " . CRM_Utils_Type::escape($id, 'Integer');
           }
         }
 
-        CRM_Core_BAO_Cache::setItem($fields, 'contact fields', $cacheKeyString);
+        Civi::cache('fields')->set($cacheKeyString, $fields);
       }
       self::$_exportableFields[$cacheKeyString] = $fields;
     }
index 384629af94270a71c1e6e50bf873991bcd2dd3d4..b4f724195791575de269d3f135ec1dfd14955140 100644 (file)
@@ -181,9 +181,6 @@ class CRM_Core_BAO_Cache_Psr16 {
    */
   public static function getLegacyGroups() {
     $groups = [
-      // Core
-      'contact fields',
-
       // Universe
 
       // be.chiro.civi.atomfeeds
index f6dce2967db19f30d7bed20bfbd6489b8c822273..6b704a2d85eda1aa62bca8661fe41d2d9788452e 100644 (file)
@@ -401,7 +401,7 @@ class CRM_Core_BAO_CustomField extends CRM_Core_DAO_CustomField {
       }
 
       // check if we can retrieve from database cache
-      $fields = CRM_Core_BAO_Cache::getItem('contact fields', "custom importableFields $cacheKey");
+      $fields = Civi::Cache('fields')->get("custom importableFields $cacheKey");
 
       if ($fields === NULL) {
         $cfTable = self::getTableName();
@@ -547,10 +547,7 @@ class CRM_Core_BAO_CustomField extends CRM_Core_DAO_CustomField {
 
         }
 
-        CRM_Core_BAO_Cache::setItem($fields,
-          'contact fields',
-          "custom importableFields $cacheKey"
-        );
+        Civi::cache('fields')->set("custom importableFields $cacheKey", $fields);
       }
       self::$_importFields[$cacheKey] = $fields;
     }
index 036338d853ef48e8f84669a6f62e8b6d07116d8e..b4da3671a14c1c472eef08f335d530c308150b65 100644 (file)
@@ -259,7 +259,7 @@ class CRM_Core_BAO_CustomGroup extends CRM_Core_DAO_CustomGroup {
    */
   public static function setIsActive($id, $is_active) {
     // reset the cache
-    CRM_Core_BAO_Cache::deleteGroup('contact fields');
+    Civi::cache('fields')->flush();
 
     if (!$is_active) {
       CRM_Core_BAO_UFField::setUFFieldStatus($id, $is_active);
index 7e89f123826ba8a7b825b61174a445b68b1f4f77..eb079dff197a959e11abe6b5153a74ff1f7b2ec7 100644 (file)
@@ -187,7 +187,7 @@ class CRM_Custom_Form_ChangeFieldType extends CRM_Core_Form {
     $customField->save();
 
     // Reset cache for custom fields
-    CRM_Core_BAO_Cache::deleteGroup('contact fields');
+    Civi::cache('fields')->flush();
 
     CRM_Core_Session::setStatus(ts('Input type of custom field \'%1\' has been successfully changed to \'%2\'.',
       [1 => $this->_values['label'], 2 => $dstHtmlType]
index 14d407950af546e1d6f4c901e80c03d174ae51a9..3ca131b873bf01c54387e13dc85196a60509b70c 100644 (file)
@@ -1019,7 +1019,7 @@ SELECT id
     $this->_id = $customField->id;
 
     // reset the cache
-    CRM_Core_BAO_Cache::deleteGroup('contact fields');
+    Civi::cache('fields')->flush();
 
     $msg = '<p>' . ts("Custom field '%1' has been saved.", [1 => $customField->label]) . '</p>';
 
index d57e422557da2aea290b1fa943b0b3b47556e794..bdc29294023f8268e5c31a23b39e50c33e3cb68a 100644 (file)
@@ -457,7 +457,7 @@ class CRM_Custom_Form_Group extends CRM_Core_Form {
     $group = CRM_Core_BAO_CustomGroup::create($params);
 
     // reset the cache
-    CRM_Core_BAO_Cache::deleteGroup('contact fields');
+    Civi::cache('fields')->flush();
 
     if ($this->_action & CRM_Core_Action::UPDATE) {
       CRM_Core_Session::setStatus(ts('Your custom field set \'%1 \' has been saved.', [1 => $group->title]), ts('Saved'), 'success');
index fcdb2a1f66af0be5001fb20c18f1673d7bae9c27..622e1aae9acccbcfee615a7fbbefbcddea095c59 100644 (file)
@@ -1449,7 +1449,7 @@ class CRM_Utils_System {
     // also reset the various static memory caches
 
     // reset the memory or array cache
-    CRM_Core_BAO_Cache::deleteGroup('contact fields', NULL, FALSE);
+    Civi::cache('fields')->flush();
 
     // reset ACL cache
     CRM_ACL_BAO_Cache::resetCache();
index c456d3d0d8bbfc122a7aac343ecee5be89483833..9ff7617118c9d7c085dd6342cd35e20b4dac4053 100644 (file)
@@ -159,6 +159,7 @@ class Container {
       'groups' => 'contact groups',
       'navigation' => 'navigation',
       'customData' => 'custom data',
+      'fields' => 'contact fields',
     ];
     foreach ($basicCaches as $cacheSvc => $cacheGrp) {
       $definitionParams = [