jenkins-bot has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/365069 )
Change subject: Update SmashPig and DonationInterface ...................................................................... Update SmashPig and DonationInterface Use all-purpose testing configurations and QueueWrapper, getting rid of some boilerplate. Update DonationInterface usage for new standardized field names. Still need to determine if we want to initialize SmashPig for all requests, or only where needed. Would be cool if we could get https://gerrit.wikimedia.org/r/355453 merged and we could get rid of the extra DonationInterface queue settings in Civi. Change-Id: I26d89875f7fbd1adf9d2c51de973f99761200032 --- M composer.lock M sites/all/modules/globalcollect_audit/globalcollect_audit.drush.inc M sites/all/modules/queue2civicrm/banner_history/banner_history.module M sites/all/modules/queue2civicrm/fredge/wmf_fredge_qc.module M sites/all/modules/queue2civicrm/queue2civicrm.module M sites/all/modules/queue2civicrm/recurring/recurring.module M sites/all/modules/queue2civicrm/refund/wmf_refund_qc.module M sites/all/modules/queue2civicrm/tests/phpunit/AntifraudQueueTest.php M sites/all/modules/queue2civicrm/tests/phpunit/BannerHistoryTest.php M sites/all/modules/queue2civicrm/tests/phpunit/DonationQueueTest.php M sites/all/modules/queue2civicrm/tests/phpunit/PaymentsInitQueueTest.php M sites/all/modules/queue2civicrm/tests/phpunit/RecurringQueueTest.php M sites/all/modules/queue2civicrm/tests/phpunit/RefundQueueTest.php M sites/all/modules/queue2civicrm/unsubscribe/wmf_unsubscribe_qc.module M sites/all/modules/recurring_globalcollect/recurring_globalcollect.module M sites/all/modules/recurring_globalcollect/tests/RecurringGlobalCollectTest.php M sites/all/modules/wmf_audit/ingenico/orphan_rectify.drush.inc M sites/all/modules/wmf_audit/tests/AmazonAuditTest.php M sites/all/modules/wmf_audit/wmf_audit.module M sites/all/modules/wmf_civicrm/tests/phpunit/DonationInterfaceFactoryTest.php M sites/all/modules/wmf_common/tests/includes/BaseWmfDrupalPhpUnitTestCase.php M sites/all/modules/wmf_common/wmf_common.module 22 files changed, 108 insertions(+), 91 deletions(-) Approvals: Mepps: Looks good to me, approved jenkins-bot: Verified diff --git a/composer.lock b/composer.lock index b89b1ac..eb004f2 100644 --- a/composer.lock +++ b/composer.lock @@ -88,7 +88,7 @@ "payment", "payments" ], - "time": "2016-02-17 00:53:20" + "time": "2016-02-17T00:44:20+00:00" }, { "name": "clio/clio", @@ -198,7 +198,7 @@ "queue", "transaction" ], - "time": "2017-04-17 14:11:55" + "time": "2017-04-17T14:11:55+00:00" }, { "name": "cogpowered/finediff", @@ -250,6 +250,48 @@ "text" ], "time": "2014-05-19T10:25:02+00:00" + }, + { + "name": "corneltek/getoptionkit", + "version": "2.6.0", + "source": { + "type": "git", + "url": "https://github.com/c9s/GetOptionKit.git", + "reference": "995607ddf4fc90ebdb4a7d58fe972d581ad8495f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/c9s/GetOptionKit/zipball/995607ddf4fc90ebdb4a7d58fe972d581ad8495f", + "reference": "995607ddf4fc90ebdb4a7d58fe972d581ad8495f", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6.x-dev" + } + }, + "autoload": { + "psr-4": { + "GetOptionKit\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Yo-An Lin", + "email": "yoanli...@gmail.com" + } + ], + "description": "Powerful command-line option toolkit", + "homepage": "http://github.com/c9s/GetOptionKit", + "time": "2017-06-30T14:54:48+00:00" }, { "name": "guzzlehttp/guzzle", @@ -691,7 +733,7 @@ "keywords": [ "Silverpop" ], - "time": "2017-07-24 07:31:30" + "time": "2017-07-06T03:06:53+00:00" }, { "name": "neitanod/forceutf8", @@ -797,7 +839,7 @@ "sendgrid", "sendinblue" ], - "time": "2017-05-15 13:50:56" + "time": "2017-05-15T13:50:56+00:00" }, { "name": "paragonie/random_compat", @@ -1751,7 +1793,7 @@ "source": { "type": "git", "url": "https://gerrit.wikimedia.org/r/mediawiki/extensions/DonationInterface.git", - "reference": "417df8110ab71a3cf3b34a2630a4cf6c3a441f80" + "reference": "b6eb7d3c689fd2a612f522d43cfd7d6b68218d02" }, "require": { "addshore/psr-6-mediawiki-bagostuff-adapter": "0.1", @@ -1767,7 +1809,8 @@ "zordius/lightncandy": "0.23" }, "require-dev": { - "jakub-onderka/php-parallel-lint": "0.9.2" + "jakub-onderka/php-parallel-lint": "0.9.2", + "wikimedia/testing-access-wrapper": "~1.0" }, "type": "library", "autoload": { @@ -1791,7 +1834,7 @@ "GPL-2.0" ], "description": "Wikimedia Foundation payment processing library", - "time": "2017-04-13 00:15:19" + "time": "2017-07-12T20:59:10+00:00" }, { "name": "wikimedia/omnimail-silverpop", @@ -1838,7 +1881,7 @@ "omnimail", "silverpop" ], - "time": "2017-07-09 22:55:21" + "time": "2017-07-09T22:55:21+00:00" }, { "name": "wikimedia/smash-pig", @@ -1846,11 +1889,12 @@ "source": { "type": "git", "url": "https://gerrit.wikimedia.org/r/wikimedia/fundraising/SmashPig.git", - "reference": "3b81aba0abe619bed038c8d31c7f36cae5b041cb" + "reference": "28035b9795b5cb70689a142a08377c2d03574956" }, "require": { "amzn/login-and-pay-with-amazon-sdk-php": "dev-master", "coderkungfu/php-queue": "dev-master", + "corneltek/getoptionkit": "^2.5", "php": ">=5.3.3", "phpmailer/phpmailer": "^5.2", "predis/predis": "^1.1", @@ -1897,7 +1941,7 @@ "donations", "payments" ], - "time": "2017-04-22 00:12:45" + "time": "2017-07-17T14:48:07+00:00" }, { "name": "zordius/lightncandy", diff --git a/sites/all/modules/globalcollect_audit/globalcollect_audit.drush.inc b/sites/all/modules/globalcollect_audit/globalcollect_audit.drush.inc index fb0759c..3deb547 100644 --- a/sites/all/modules/globalcollect_audit/globalcollect_audit.drush.inc +++ b/sites/all/modules/globalcollect_audit/globalcollect_audit.drush.inc @@ -72,8 +72,7 @@ * TODO: More comments here-ish. */ function drush_globalcollect_audit() { - $config = Configuration::createForView( 'globalcollect' ); - Context::initWithLogger( $config, 'globalcollect_audit' ); + wmf_common_create_smashpig_context( 'ingenico_audit', 'ingenico' ); //$args = drush_get_arguments(); diff --git a/sites/all/modules/queue2civicrm/banner_history/banner_history.module b/sites/all/modules/queue2civicrm/banner_history/banner_history.module index 07f5752..9f0255c 100644 --- a/sites/all/modules/queue2civicrm/banner_history/banner_history.module +++ b/sites/all/modules/queue2civicrm/banner_history/banner_history.module @@ -65,8 +65,8 @@ watchdog( 'banner_history', 'Executing: banner_history_queue_consume' ); civicrm_initialize(); - $config = Configuration::createForView(); - Context::initWithLogger( $config, 'banner_history' ); + + wmf_common_create_smashpig_context( 'banner_history' ); $qc = new BannerHistoryQueueConsumer( 'banner-history', diff --git a/sites/all/modules/queue2civicrm/fredge/wmf_fredge_qc.module b/sites/all/modules/queue2civicrm/fredge/wmf_fredge_qc.module index a12c1d1..8bc47d7 100644 --- a/sites/all/modules/queue2civicrm/fredge/wmf_fredge_qc.module +++ b/sites/all/modules/queue2civicrm/fredge/wmf_fredge_qc.module @@ -53,8 +53,7 @@ watchdog('fredge', 'Executing: fredge_batch_process'); civicrm_initialize(); - $config = Configuration::createForView('default'); - Context::initWithLogger($config, 'fredge_batch_process'); + wmf_common_create_smashpig_context( 'fredge_batch_process'); //Let's start with the simplest possible division of labor $cycle_time = variable_get('fredge_batch_time', 0) / 2; diff --git a/sites/all/modules/queue2civicrm/queue2civicrm.module b/sites/all/modules/queue2civicrm/queue2civicrm.module index ad629c1..50d424a 100644 --- a/sites/all/modules/queue2civicrm/queue2civicrm.module +++ b/sites/all/modules/queue2civicrm/queue2civicrm.module @@ -128,8 +128,7 @@ // We only want to initialize the SmashPig stuff once, so we use the default // config section rather than a processor-specific section. This means all // processors have to use the same database for pending donation info. - $config = Configuration::createForView( 'default' ); - Context::initWithLogger( $config, 'queue2civicrm' ); + wmf_common_create_smashpig_context( 'queue2civicrm' ); wmf_civicrm_boost_performance(); if ( variable_get( 'queue2civicrm_disable', false ) ) { diff --git a/sites/all/modules/queue2civicrm/recurring/recurring.module b/sites/all/modules/queue2civicrm/recurring/recurring.module index 19f062c..5a37e07 100644 --- a/sites/all/modules/queue2civicrm/recurring/recurring.module +++ b/sites/all/modules/queue2civicrm/recurring/recurring.module @@ -82,8 +82,7 @@ function recurring_batch_process() { civicrm_initialize(); - $config = Configuration::createForView(); - Context::initWithLogger( $config, 'recurring' ); + wmf_common_create_smashpig_context( 'recurring' ); if (variable_get( "recurring_disable", false )){ watchdog('recurring', 'Recurring is disabled. No contributions processed.'); diff --git a/sites/all/modules/queue2civicrm/refund/wmf_refund_qc.module b/sites/all/modules/queue2civicrm/refund/wmf_refund_qc.module index a61ce62..3e55e89 100644 --- a/sites/all/modules/queue2civicrm/refund/wmf_refund_qc.module +++ b/sites/all/modules/queue2civicrm/refund/wmf_refund_qc.module @@ -79,8 +79,7 @@ * @ref drush_refund_queue_consume */ function refund_batch_process() { - $config = Configuration::createForView( 'default' ); - Context::initWithLogger( $config, 'refund' ); + wmf_common_create_smashpig_context( 'refund' ); if ( variable_get('refund_disable', false) ) { watchdog( 'wmf_refund_qc', 'Job is disabled. Exiting.', NULL, WATCHDOG_INFO ); diff --git a/sites/all/modules/queue2civicrm/tests/phpunit/AntifraudQueueTest.php b/sites/all/modules/queue2civicrm/tests/phpunit/AntifraudQueueTest.php index d070b30..ea63274 100644 --- a/sites/all/modules/queue2civicrm/tests/phpunit/AntifraudQueueTest.php +++ b/sites/all/modules/queue2civicrm/tests/phpunit/AntifraudQueueTest.php @@ -1,7 +1,5 @@ <?php use queue2civicrm\fredge\AntifraudQueueConsumer; -use SmashPig\Core\Context; -use SmashPig\Core\QueueConsumers\BaseQueueConsumer; /** * @group Queue2Civicrm @@ -15,12 +13,8 @@ public function setUp() { parent::setUp(); - $config = TestingSmashPigDbQueueConfiguration::instance(); - Context::initWithLogger( $config ); - $queue = BaseQueueConsumer::getQueue( 'test' ); - $queue->createTable( 'test' ); $this->consumer = new AntifraudQueueConsumer( - 'test' + 'payments-antifraud' ); } diff --git a/sites/all/modules/queue2civicrm/tests/phpunit/BannerHistoryTest.php b/sites/all/modules/queue2civicrm/tests/phpunit/BannerHistoryTest.php index 5005d6a..39123ed 100644 --- a/sites/all/modules/queue2civicrm/tests/phpunit/BannerHistoryTest.php +++ b/sites/all/modules/queue2civicrm/tests/phpunit/BannerHistoryTest.php @@ -1,9 +1,6 @@ <?php use queue2civicrm\banner_history\BannerHistoryQueueConsumer; -use SmashPig\Core\Context; -use SmashPig\Core\QueueConsumers\BaseQueueConsumer; - /** * @group Queue2Civicrm */ @@ -16,10 +13,6 @@ public function setUp() { parent::setUp(); - $config = TestingSmashPigDbQueueConfiguration::instance(); - Context::initWithLogger( $config ); - $queue = BaseQueueConsumer::getQueue( 'test' ); - $queue->createTable( 'test' ); $this->consumer = new BannerHistoryQueueConsumer( 'test' ); diff --git a/sites/all/modules/queue2civicrm/tests/phpunit/DonationQueueTest.php b/sites/all/modules/queue2civicrm/tests/phpunit/DonationQueueTest.php index 6028af3..6059718 100644 --- a/sites/all/modules/queue2civicrm/tests/phpunit/DonationQueueTest.php +++ b/sites/all/modules/queue2civicrm/tests/phpunit/DonationQueueTest.php @@ -22,10 +22,7 @@ public function setUp() { parent::setUp(); - $config = TestingSmashPigDbQueueConfiguration::instance(); - Context::initWithLogger( $config ); $this->pendingDb = PendingDatabase::get(); - $this->pendingDb->createTable(); $this->queueConsumer = new DonationQueueConsumer( 'test' ); } diff --git a/sites/all/modules/queue2civicrm/tests/phpunit/PaymentsInitQueueTest.php b/sites/all/modules/queue2civicrm/tests/phpunit/PaymentsInitQueueTest.php index 0bbd9c1..4ddf3fa 100644 --- a/sites/all/modules/queue2civicrm/tests/phpunit/PaymentsInitQueueTest.php +++ b/sites/all/modules/queue2civicrm/tests/phpunit/PaymentsInitQueueTest.php @@ -1,7 +1,5 @@ <?php use queue2civicrm\fredge\PaymentsInitQueueConsumer; -use SmashPig\Core\Context; -use SmashPig\Core\QueueConsumers\BaseQueueConsumer; /** * @group Queue2Civicrm @@ -15,12 +13,8 @@ public function setUp() { parent::setUp(); - $config = TestingSmashPigDbQueueConfiguration::instance(); - Context::initWithLogger( $config ); - $queue = BaseQueueConsumer::getQueue( 'test' ); - $queue->createTable( 'test' ); $this->consumer = new PaymentsInitQueueConsumer( - 'test' + 'payments-init' ); } diff --git a/sites/all/modules/queue2civicrm/tests/phpunit/RecurringQueueTest.php b/sites/all/modules/queue2civicrm/tests/phpunit/RecurringQueueTest.php index c234ae4..d6327d5 100644 --- a/sites/all/modules/queue2civicrm/tests/phpunit/RecurringQueueTest.php +++ b/sites/all/modules/queue2civicrm/tests/phpunit/RecurringQueueTest.php @@ -1,7 +1,5 @@ <?php use queue2civicrm\recurring\RecurringQueueConsumer; -use SmashPig\Core\Context; -use SmashPig\Core\QueueConsumers\BaseQueueConsumer; /** * @group Queue2Civicrm @@ -18,12 +16,8 @@ public function setUp() { parent::setUp(); - $config = TestingSmashPigDbQueueConfiguration::instance(); - Context::initWithLogger( $config ); - $queue = BaseQueueConsumer::getQueue( 'test' ); - $queue->createTable( 'test' ); $this->consumer = new RecurringQueueConsumer( - 'test' + 'recurring' ); } diff --git a/sites/all/modules/queue2civicrm/tests/phpunit/RefundQueueTest.php b/sites/all/modules/queue2civicrm/tests/phpunit/RefundQueueTest.php index 618b94e..991101f 100644 --- a/sites/all/modules/queue2civicrm/tests/phpunit/RefundQueueTest.php +++ b/sites/all/modules/queue2civicrm/tests/phpunit/RefundQueueTest.php @@ -1,7 +1,5 @@ <?php use queue2civicrm\refund\RefundQueueConsumer; -use SmashPig\Core\Context; -use SmashPig\Core\QueueConsumers\BaseQueueConsumer; /** * @group Queue2Civicrm @@ -15,12 +13,8 @@ public function setUp() { parent::setUp(); - $config = TestingSmashPigDbQueueConfiguration::instance(); - Context::initWithLogger( $config ); - $queue = BaseQueueConsumer::getQueue( 'test' ); - $queue->createTable( 'test' ); $this->consumer = new RefundQueueConsumer( - 'test' + 'refund' ); } diff --git a/sites/all/modules/queue2civicrm/unsubscribe/wmf_unsubscribe_qc.module b/sites/all/modules/queue2civicrm/unsubscribe/wmf_unsubscribe_qc.module index acea526..bcb20d1 100644 --- a/sites/all/modules/queue2civicrm/unsubscribe/wmf_unsubscribe_qc.module +++ b/sites/all/modules/queue2civicrm/unsubscribe/wmf_unsubscribe_qc.module @@ -76,8 +76,7 @@ * @ref drush_unsubscribe_queue_consume */ function unsubscribe_batch_process() { - $config = Configuration::createForView( 'default' ); - Context::initWithLogger( $config, 'unsubscribe' ); + wmf_common_create_smashpig_context('unsubscribe'); watchdog('unsubscribe', 'Executing: unsubscribe_batch_process'); civicrm_initialize(); diff --git a/sites/all/modules/recurring_globalcollect/recurring_globalcollect.module b/sites/all/modules/recurring_globalcollect/recurring_globalcollect.module index 543d4c4..83a0758 100644 --- a/sites/all/modules/recurring_globalcollect/recurring_globalcollect.module +++ b/sites/all/modules/recurring_globalcollect/recurring_globalcollect.module @@ -315,7 +315,7 @@ 'amount' => $subscription->amount, 'effort_id' => $subscription->processor_id + 1, 'order_id' => $transaction->gateway_txn_id, - 'currency_code' => $subscription->currency, + 'currency' => $subscription->currency, 'payment_product' => '', 'language' => 'en', 'contribution_tracking_id' => $contribution_tracking_id, diff --git a/sites/all/modules/recurring_globalcollect/tests/RecurringGlobalCollectTest.php b/sites/all/modules/recurring_globalcollect/tests/RecurringGlobalCollectTest.php index fcc4d59..c60ce38 100644 --- a/sites/all/modules/recurring_globalcollect/tests/RecurringGlobalCollectTest.php +++ b/sites/all/modules/recurring_globalcollect/tests/RecurringGlobalCollectTest.php @@ -97,8 +97,8 @@ 'amount' => '2345', 'effort_id' => 2, 'order_id' => '9998890004', - 'currency_code' => 'EUR', - 'payment_product' => '', + 'currency' => 'EUR', + 'payment_method' => 'cc', ); $gateway = DonationInterfaceFactory::createAdapter( 'globalcollect', $init ); @@ -121,8 +121,8 @@ 'amount' => '2345', 'effort_id' => 2, 'order_id' => '9998890004', - 'currency_code' => 'EUR', - 'payment_product' => '', + 'currency' => 'EUR', + 'payment_method' => 'cc', ); $gateway = DonationInterfaceFactory::createAdapter( 'globalcollect', $init ); @@ -148,8 +148,8 @@ 'amount' => '2345', 'effort_id' => 2, 'order_id' => '9998890004', - 'currency_code' => 'EUR', - 'payment_product' => '', + 'currency' => 'EUR', + 'payment_method' => 'cc', ); $gateway = DonationInterfaceFactory::createAdapter( 'globalcollect', $init ); @@ -174,8 +174,8 @@ 'amount' => '2345', 'effort_id' => 2, 'order_id' => '9998890004', - 'currency_code' => 'EUR', - 'payment_product' => '', + 'currency' => 'EUR', + 'payment_method' => 'cc', ); $gateway = DonationInterfaceFactory::createAdapter( 'globalcollect', $init ); diff --git a/sites/all/modules/wmf_audit/ingenico/orphan_rectify.drush.inc b/sites/all/modules/wmf_audit/ingenico/orphan_rectify.drush.inc index dad2e63..f1eda7b 100644 --- a/sites/all/modules/wmf_audit/ingenico/orphan_rectify.drush.inc +++ b/sites/all/modules/wmf_audit/ingenico/orphan_rectify.drush.inc @@ -57,8 +57,7 @@ function drush_orphan_rectify() { // TODO: SmashPig and DI initialization should be reused from a higher // level and integrated with app config - $config = Configuration::createForView( 'globalcollect' ); - Context::init( $config ); + wmf_common_create_smashpig_context( 'ingenico_orphan_rectifier', 'ingenico' ); $rectifier = new GlobalCollectOrphanRectifier(); $rectifier->processOrphans(); diff --git a/sites/all/modules/wmf_audit/tests/AmazonAuditTest.php b/sites/all/modules/wmf_audit/tests/AmazonAuditTest.php index 9b90bb5..6b12440 100644 --- a/sites/all/modules/wmf_audit/tests/AmazonAuditTest.php +++ b/sites/all/modules/wmf_audit/tests/AmazonAuditTest.php @@ -18,8 +18,9 @@ self::$messages = array(); // Use the test configuration for SmashPig - $config = AmazonTestConfiguration::instance(); - Context::initWithLogger( $config ); + $ctx = Context::get(); + $config = AmazonTestConfiguration::instance( $ctx->getGlobalConfiguration() ); + $ctx->setProviderConfiguration( $config ); $dirs = array( 'wmf_audit_log_archive_dir' => __DIR__ . '/data/logs/', diff --git a/sites/all/modules/wmf_audit/wmf_audit.module b/sites/all/modules/wmf_audit/wmf_audit.module index 865491b..fbf34d0 100644 --- a/sites/all/modules/wmf_audit/wmf_audit.module +++ b/sites/all/modules/wmf_audit/wmf_audit.module @@ -37,10 +37,7 @@ * @param array $options Runtime parameters */ function wmf_audit_main( $gateway, $options ) { - Context::initWithLogger( - Configuration::createForView( $gateway ), - "{$gateway}_audit" - ); + wmf_common_create_smashpig_context( "{$gateway}_audit", $gateway ); $audit = module_invoke( "{$gateway}_audit", 'create_processor', $options ); if ( !$audit ) { diff --git a/sites/all/modules/wmf_civicrm/tests/phpunit/DonationInterfaceFactoryTest.php b/sites/all/modules/wmf_civicrm/tests/phpunit/DonationInterfaceFactoryTest.php index e6f27cb..e7648f0 100644 --- a/sites/all/modules/wmf_civicrm/tests/phpunit/DonationInterfaceFactoryTest.php +++ b/sites/all/modules/wmf_civicrm/tests/phpunit/DonationInterfaceFactoryTest.php @@ -15,8 +15,8 @@ 'amount' => 9.99, 'effort_id' => 1, 'order_id' => mt_rand(), - 'currency_code' => 'USD', - 'payment_product' => '', + 'currency' => 'USD', + 'payment_method' => 'cc', 'language' => 'en', 'contribution_tracking_id' => mt_rand(), 'referrer' => 'dummy', diff --git a/sites/all/modules/wmf_common/tests/includes/BaseWmfDrupalPhpUnitTestCase.php b/sites/all/modules/wmf_common/tests/includes/BaseWmfDrupalPhpUnitTestCase.php index 7f8ccaa..31ef281 100644 --- a/sites/all/modules/wmf_common/tests/includes/BaseWmfDrupalPhpUnitTestCase.php +++ b/sites/all/modules/wmf_common/tests/includes/BaseWmfDrupalPhpUnitTestCase.php @@ -1,11 +1,17 @@ <?php use SmashPig\Core\Context; +use SmashPig\Tests\TestingContext; +use SmashPig\Tests\TestingGlobalConfiguration; class BaseWmfDrupalPhpUnitTestCase extends PHPUnit_Framework_TestCase { public function setUp() { parent::setUp(); + // Initialize SmashPig with a fake context object + $config = TestingGlobalConfiguration::create(); + TestingContext::init( $config ); + if ( !defined( 'DRUPAL_ROOT' ) ) { throw new Exception( "Define DRUPAL_ROOT somewhere before running unit tests." ); } diff --git a/sites/all/modules/wmf_common/wmf_common.module b/sites/all/modules/wmf_common/wmf_common.module index a772413..f54d23d 100644 --- a/sites/all/modules/wmf_common/wmf_common.module +++ b/sites/all/modules/wmf_common/wmf_common.module @@ -1,9 +1,11 @@ <?php -use SmashPig\Core\Configuration; use SmashPig\Core\Context; use SmashPig\Core\DataStores\DamagedDatabase; -use SmashPig\Core\QueueConsumers\BaseQueueConsumer; +use SmashPig\Core\DataStores\QueueWrapper; +use SmashPig\Core\GlobalConfiguration; +use SmashPig\Core\Logging\Logger; +use SmashPig\Core\ProviderConfiguration; use wmf_common\WmfQueueConsumer; require_once 'failmail.php'; @@ -305,7 +307,7 @@ } function wmf_common_damaged_confirm_delete_submit( $form, &$form_state ) { - wmf_common_create_smashpig_context(); + wmf_common_create_smashpig_context( 'damaged_message_form' ); $ids = explode( ',', $form['#ids'] ); $ddb = DamagedDatabase::get(); foreach( $ids as $id ) { @@ -398,7 +400,7 @@ function wmf_common_damaged_item_submit( $form, &$form_state ) { $delete = false; $id = $form_state['values']['damaged_id']; - wmf_common_create_smashpig_context(); + wmf_common_create_smashpig_context( 'damaged_message_form' ); switch ( $form_state['values']['op'] ) { case $form_state['values']['resend']: @@ -410,8 +412,7 @@ } } $queueName = $form_state['values']['original_queue']; - $queue = BaseQueueConsumer::getQueue( $queueName ); - $queue->push( $message ); + QueueWrapper::push( $queueName, $message ); drupal_set_message( t( 'Message %id resent for processing.', array( '%id' => $id ) ) ); @@ -435,8 +436,17 @@ } } -function wmf_common_create_smashpig_context() { - // Initialize SmashPig - $config = Configuration::createForView(); - Context::initWithLogger( $config, 'wmf_common' ); +function wmf_common_create_smashpig_context( $logPrefix, $provider = ProviderConfiguration::NO_PROVIDER ) { + // Initialize SmashPig, or set provider configuration if already initialized + $ctx = Context::get(); + if ( $ctx ) { + $globalConfig = $ctx->getGlobalConfiguration(); + $config = ProviderConfiguration::createForProvider( $provider, $globalConfig ); + $ctx->setProviderConfiguration( $config ); + } else { + $globalConfig = GlobalConfiguration::create(); + $config = ProviderConfiguration::createForProvider( $provider, $globalConfig ); + Context::init( $globalConfig, $config ); + } + Logger::setPrefix( $logPrefix ); } -- To view, visit https://gerrit.wikimedia.org/r/365069 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: I26d89875f7fbd1adf9d2c51de973f99761200032 Gerrit-PatchSet: 7 Gerrit-Project: wikimedia/fundraising/crm Gerrit-Branch: master Gerrit-Owner: Ejegg <ej...@ejegg.com> Gerrit-Reviewer: Cdentinger <cdentin...@wikimedia.org> Gerrit-Reviewer: Mepps <me...@wikimedia.org> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits