Skip to content
Snippets Groups Projects
Commit cdfa9dc8 authored by mattwire's avatar mattwire
Browse files

Remove deprecated function to get settings. Regenerate civix

parent 20331e23
No related branches found
No related tags found
1 merge request!53Remove deprecated function to get settings. Regenerate civix
......@@ -9,9 +9,9 @@ use CRM_Dataprocessor_ExtensionUtil as E;
class CRM_Dataprocessor_Upgrader_Base {
/**
* @var varies, subclass of this
* @var CRM_Dataprocessor_Upgrader_Base
*/
static $instance;
public static $instance;
/**
* @var CRM_Queue_TaskContext
......@@ -19,22 +19,25 @@ class CRM_Dataprocessor_Upgrader_Base {
protected $ctx;
/**
* @var string, eg 'com.example.myextension'
* @var string
* eg 'com.example.myextension'
*/
protected $extensionName;
/**
* @var string, full path to the extension's source tree
* @var string
* full path to the extension's source tree
*/
protected $extensionDir;
/**
* @var array(revisionNumber) sorted numerically
* @var revisionNumber[]
* sorted numerically
*/
private $revisions;
/**
* @var boolean
* @var bool
* Flag to clean up extension revision data in civicrm_setting
*/
private $revisionStorageIsDeprecated = FALSE;
......@@ -42,7 +45,7 @@ class CRM_Dataprocessor_Upgrader_Base {
/**
* Obtain a reference to the active upgrade handler.
*/
static public function instance() {
public static function instance() {
if (!self::$instance) {
// FIXME auto-generate
self::$instance = new CRM_Dataprocessor_Upgrader(
......@@ -59,19 +62,25 @@ class CRM_Dataprocessor_Upgrader_Base {
* Note: Each upgrader instance should only be associated with one
* task-context; otherwise, this will be non-reentrant.
*
* @code
* ```
* CRM_Dataprocessor_Upgrader_Base::_queueAdapter($ctx, 'methodName', 'arg1', 'arg2');
* @endcode
* ```
*/
static public function _queueAdapter() {
public static function _queueAdapter() {
$instance = self::instance();
$args = func_get_args();
$instance->ctx = array_shift($args);
$instance->queue = $instance->ctx->queue;
$method = array_shift($args);
return call_user_func_array(array($instance, $method), $args);
return call_user_func_array([$instance, $method], $args);
}
/**
* CRM_Dataprocessor_Upgrader_Base constructor.
*
* @param $extensionName
* @param $extensionDir
*/
public function __construct($extensionName, $extensionDir) {
$this->extensionName = $extensionName;
$this->extensionDir = $extensionDir;
......@@ -82,7 +91,8 @@ class CRM_Dataprocessor_Upgrader_Base {
/**
* Run a CustomData file.
*
* @param string $relativePath the CustomData XML file path (relative to this extension's dir)
* @param string $relativePath
* the CustomData XML file path (relative to this extension's dir)
* @return bool
*/
public function executeCustomDataFile($relativePath) {
......@@ -93,11 +103,12 @@ class CRM_Dataprocessor_Upgrader_Base {
/**
* Run a CustomData file
*
* @param string $xml_file the CustomData XML file path (absolute path)
* @param string $xml_file
* the CustomData XML file path (absolute path)
*
* @return bool
*/
protected static function executeCustomDataFileByAbsPath($xml_file) {
protected function executeCustomDataFileByAbsPath($xml_file) {
$import = new CRM_Utils_Migrate_Import();
$import->run($xml_file);
return TRUE;
......@@ -106,7 +117,8 @@ class CRM_Dataprocessor_Upgrader_Base {
/**
* Run a SQL file.
*
* @param string $relativePath the SQL file path (relative to this extension's dir)
* @param string $relativePath
* the SQL file path (relative to this extension's dir)
*
* @return bool
*/
......@@ -119,10 +131,14 @@ class CRM_Dataprocessor_Upgrader_Base {
}
/**
* Run the sql commands in the specified file.
*
* @param string $tplFile
* The SQL file path (relative to this extension's dir).
* Ex: "sql/mydata.mysql.tpl".
*
* @return bool
* @throws \CRM_Core_Exception
*/
public function executeSqlTemplate($tplFile) {
// Assign multilingual variable to Smarty.
......@@ -141,17 +157,19 @@ class CRM_Dataprocessor_Upgrader_Base {
* Run one SQL query.
*
* This is just a wrapper for CRM_Core_DAO::executeSql, but it
* provides syntatic sugar for queueing several tasks that
* provides syntactic sugar for queueing several tasks that
* run different queries
*
* @return bool
*/
public function executeSql($query, $params = array()) {
public function executeSql($query, $params = []) {
// FIXME verify that we raise an exception on error
CRM_Core_DAO::executeQuery($query, $params);
return TRUE;
}
/**
* Syntatic sugar for enqueuing a task which calls a function in this class.
* Syntactic sugar for enqueuing a task which calls a function in this class.
*
* The task is weighted so that it is processed
* as part of the currently-pending revision.
......@@ -163,11 +181,11 @@ class CRM_Dataprocessor_Upgrader_Base {
$args = func_get_args();
$title = array_shift($args);
$task = new CRM_Queue_Task(
array(get_class($this), '_queueAdapter'),
[get_class($this), '_queueAdapter'],
$args,
$title
);
return $this->queue->createItem($task, array('weight' => -1));
return $this->queue->createItem($task, ['weight' => -1]);
}
// ******** Revision-tracking helpers ********
......@@ -193,6 +211,8 @@ class CRM_Dataprocessor_Upgrader_Base {
/**
* Add any pending revisions to the queue.
*
* @param CRM_Queue_Queue $queue
*/
public function enqueuePendingRevisions(CRM_Queue_Queue $queue) {
$this->queue = $queue;
......@@ -200,23 +220,23 @@ class CRM_Dataprocessor_Upgrader_Base {
$currentRevision = $this->getCurrentRevision();
foreach ($this->getRevisions() as $revision) {
if ($revision > $currentRevision) {
$title = ts('Upgrade %1 to revision %2', array(
$title = E::ts('Upgrade %1 to revision %2', [
1 => $this->extensionName,
2 => $revision,
));
]);
// note: don't use addTask() because it sets weight=-1
$task = new CRM_Queue_Task(
array(get_class($this), '_queueAdapter'),
array('upgrade_' . $revision),
[get_class($this), '_queueAdapter'],
['upgrade_' . $revision],
$title
);
$this->queue->createItem($task);
$task = new CRM_Queue_Task(
array(get_class($this), '_queueAdapter'),
array('setCurrentRevision', $revision),
[get_class($this), '_queueAdapter'],
['setCurrentRevision', $revision],
$title
);
$this->queue->createItem($task);
......@@ -227,11 +247,12 @@ class CRM_Dataprocessor_Upgrader_Base {
/**
* Get a list of revisions.
*
* @return array(revisionNumbers) sorted numerically
* @return array
* revisionNumbers sorted numerically
*/
public function getRevisions() {
if (!is_array($this->revisions)) {
$this->revisions = array();
$this->revisions = [];
$clazz = new ReflectionClass(get_class($this));
$methods = $clazz->getMethods();
......@@ -256,7 +277,7 @@ class CRM_Dataprocessor_Upgrader_Base {
private function getCurrentRevisionDeprecated() {
$key = $this->extensionName . ':version';
if ($revision = CRM_Core_BAO_Setting::getItem('Extension', $key)) {
if ($revision = \Civi::settings()->get($key)) {
$this->revisionStorageIsDeprecated = TRUE;
}
return $revision;
......@@ -302,7 +323,7 @@ class CRM_Dataprocessor_Upgrader_Base {
$this->executeCustomDataFileByAbsPath($file);
}
}
if (is_callable(array($this, 'install'))) {
if (is_callable([$this, 'install'])) {
$this->install();
}
}
......@@ -315,7 +336,7 @@ class CRM_Dataprocessor_Upgrader_Base {
if (!empty($revisions)) {
$this->setCurrentRevision(max($revisions));
}
if (is_callable(array($this, 'postInstall'))) {
if (is_callable([$this, 'postInstall'])) {
$this->postInstall();
}
}
......@@ -330,7 +351,7 @@ class CRM_Dataprocessor_Upgrader_Base {
$this->executeSqlTemplate($file);
}
}
if (is_callable(array($this, 'uninstall'))) {
if (is_callable([$this, 'uninstall'])) {
$this->uninstall();
}
$files = glob($this->extensionDir . '/sql/*_uninstall.sql');
......@@ -346,7 +367,7 @@ class CRM_Dataprocessor_Upgrader_Base {
*/
public function onEnable() {
// stub for possible future use
if (is_callable(array($this, 'enable'))) {
if (is_callable([$this, 'enable'])) {
$this->enable();
}
}
......@@ -356,7 +377,7 @@ class CRM_Dataprocessor_Upgrader_Base {
*/
public function onDisable() {
// stub for possible future use
if (is_callable(array($this, 'disable'))) {
if (is_callable([$this, 'disable'])) {
$this->disable();
}
}
......@@ -364,7 +385,7 @@ class CRM_Dataprocessor_Upgrader_Base {
public function onUpgrade($op, CRM_Queue_Queue $queue = NULL) {
switch ($op) {
case 'check':
return array($this->hasPendingRevisions());
return [$this->hasPendingRevisions()];
case 'enqueue':
return $this->enqueuePendingRevisions($queue);
......
......@@ -53,7 +53,7 @@ class CRM_Dataprocessor_Utils_Cache {
* @return mixed
*/
public function get($key, $default=NULL) {
$environment = CRM_Core_BAO_Setting::getItem('', 'environment');
$environment = \Civi::settings()->get('environment');
if ($environment == 'Production') {
return $this->cache->get($key, $default);
}
......@@ -68,7 +68,7 @@ class CRM_Dataprocessor_Utils_Cache {
* @return bool
*/
public function set($key, $value, $ttl=NULL) {
$environment = CRM_Core_BAO_Setting::getItem('', 'environment');
$environment = \Civi::settings()->get('environment');
if ($environment == 'Production') {
return $this->cache->set($key, $value, $ttl);
}
......
......@@ -193,8 +193,9 @@ function _dataprocessor_civix_civicrm_disable() {
* @param $op string, the type of operation being performed; 'check' or 'enqueue'
* @param $queue CRM_Queue_Queue, (for 'enqueue') the modifiable list of pending up upgrade tasks
*
* @return mixed based on op. for 'check', returns array(boolean) (TRUE if upgrades are pending)
* for 'enqueue', returns void
* @return mixed
* based on op. for 'check', returns array(boolean) (TRUE if upgrades are pending)
* for 'enqueue', returns void
*
* @link https://docs.civicrm.org/dev/en/latest/hooks/hook_civicrm_upgrade
*/
......@@ -225,7 +226,7 @@ function _dataprocessor_civix_upgrader() {
* @param string $dir base dir
* @param string $pattern , glob pattern, eg "*.txt"
*
* @return array(string)
* @return array
*/
function _dataprocessor_civix_find_files($dir, $pattern) {
if (is_callable(['CRM_Utils_File', 'findFiles'])) {
......@@ -244,7 +245,7 @@ function _dataprocessor_civix_find_files($dir, $pattern) {
if ($dh = opendir($subdir)) {
while (FALSE !== ($entry = readdir($dh))) {
$path = $subdir . DIRECTORY_SEPARATOR . $entry;
if ($entry{0} == '.') {
if ($entry[0] == '.') {
}
elseif (is_dir($path)) {
$todos[] = $path;
......@@ -255,6 +256,7 @@ function _dataprocessor_civix_find_files($dir, $pattern) {
}
return $result;
}
/**
* (Delegated) Implements hook_civicrm_managed().
*
......@@ -362,7 +364,7 @@ function _dataprocessor_civix_civicrm_themes(&$themes) {
* @link http://php.net/glob
* @param string $pattern
*
* @return array, possibly empty
* @return array
*/
function _dataprocessor_civix_glob($pattern) {
$result = glob($pattern);
......@@ -470,38 +472,32 @@ function _dataprocessor_civix_civicrm_alterSettingsFolders(&$metaDataFolders = N
*
* @link https://docs.civicrm.org/dev/en/latest/hooks/hook_civicrm_entityTypes
*/
function _dataprocessor_civix_civicrm_entityTypes(&$entityTypes) {
$entityTypes = array_merge($entityTypes, array (
'CRM_Dataprocessor_DAO_DataProcessor' =>
array (
$entityTypes = array_merge($entityTypes, [
'CRM_Dataprocessor_DAO_DataProcessor' => [
'name' => 'DataProcessor',
'class' => 'CRM_Dataprocessor_DAO_DataProcessor',
'table' => 'civicrm_data_processor',
),
'CRM_Dataprocessor_DAO_DataProcessorField' =>
array (
],
'CRM_Dataprocessor_DAO_DataProcessorField' => [
'name' => 'DataProcessorField',
'class' => 'CRM_Dataprocessor_DAO_DataProcessorField',
'table' => 'civicrm_data_processor_field',
),
'CRM_Dataprocessor_DAO_DataProcessorFilter' =>
array (
],
'CRM_Dataprocessor_DAO_DataProcessorFilter' => [
'name' => 'DataProcessorFilter',
'class' => 'CRM_Dataprocessor_DAO_DataProcessorFilter',
'table' => 'civicrm_data_processor_filter',
),
'CRM_Dataprocessor_DAO_DataProcessorOutput' =>
array (
],
'CRM_Dataprocessor_DAO_DataProcessorOutput' => [
'name' => 'DataProcessorOutput',
'class' => 'CRM_Dataprocessor_DAO_DataProcessorOutput',
'table' => 'civicrm_data_processor_output',
),
'CRM_Dataprocessor_DAO_DataProcessorSource' =>
array (
],
'CRM_Dataprocessor_DAO_DataProcessorSource' => [
'name' => 'DataProcessorSource',
'class' => 'CRM_Dataprocessor_DAO_DataProcessorSource',
'table' => 'civicrm_data_processor_source',
),
));
],
]);
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment