[MediaWiki-commits] [Gerrit] Added LogEntryBase::extractParams/makeParamBlob - change (mediawiki/core)

2015-04-08 Thread jenkins-bot (Code Review)
jenkins-bot has submitted this change and it was merged.

Change subject: Added LogEntryBase::extractParams/makeParamBlob
..


Added LogEntryBase::extractParams/makeParamBlob

Centralize the serialize and unserialize call in the new logging system
into two functions to allow reuse by tests.

Change-Id: Ibedca39558cbd51b20e7ebb9d2b6537e4f24
---
M includes/logging/LogEntry.php
1 file changed, 26 insertions(+), 4 deletions(-)

Approvals:
  Legoktm: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/includes/logging/LogEntry.php b/includes/logging/LogEntry.php
index 66c2bde..b391be3 100644
--- a/includes/logging/LogEntry.php
+++ b/includes/logging/LogEntry.php
@@ -115,6 +115,28 @@
public function isLegacy() {
return false;
}
+
+   /**
+* Create a blob from a parameter array
+*
+* @param array $params
+* @return string
+* @since 1.26
+*/
+   public static function makeParamBlob( $params ) {
+   return serialize( (array)$params );
+   }
+
+   /**
+* Extract a parameter array from a blob
+*
+* @param string $blob
+* @return array
+* @since 1.26
+*/
+   public static function extractParams( $blob ) {
+   return unserialize( $blob );
+   }
 }
 
 /**
@@ -225,13 +247,13 @@
if ( !isset( $this-params ) ) {
$blob = $this-getRawParameters();
wfSuppressWarnings();
-   $params = unserialize( $blob );
+   $params = LogEntryBase::extractParams( $blob );
wfRestoreWarnings();
if ( $params !== false ) {
$this-params = $params;
$this-legacy = false;
} else {
-   $this-params = $blob === '' ? array() : 
explode( \n, $blob );
+   $this-params = LogPage::extractParams( $blob );
$this-legacy = true;
}
}
@@ -516,7 +538,7 @@
'log_title' = $this-getTarget()-getDBkey(),
'log_page' = $this-getTarget()-getArticleID(),
'log_comment' = $comment,
-   'log_params' = serialize( 
(array)$this-getParameters() ),
+   'log_params' = LogEntryBase::makeParamBlob( 
$this-getParameters() ),
);
if ( isset( $this-deleted ) ) {
$data['log_deleted'] = $this-deleted;
@@ -584,7 +606,7 @@
$this-getSubtype(),
$this-getTarget(),
$this-getComment(),
-   serialize( (array)$this-getParameters() ),
+   LogEntryBase::makeParamBlob( $this-getParameters() ),
$newId,
$formatter-getIRCActionComment() // Used for IRC feeds
);

-- 
To view, visit https://gerrit.wikimedia.org/r/200317
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Ibedca39558cbd51b20e7ebb9d2b6537e4f24
Gerrit-PatchSet: 4
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Umherirrender umherirrender_de...@web.de
Gerrit-Reviewer: Legoktm legoktm.wikipe...@gmail.com
Gerrit-Reviewer: Umherirrender umherirrender_de...@web.de
Gerrit-Reviewer: jenkins-bot 

___
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits


[MediaWiki-commits] [Gerrit] Added LogEntryBase::extractParams/makeParamBlob - change (mediawiki/core)

2015-03-28 Thread Umherirrender (Code Review)
Umherirrender has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/200317

Change subject: Added LogEntryBase::extractParams/makeParamBlob
..

Added LogEntryBase::extractParams/makeParamBlob

Centralize the serialize and unserialize call in the new logging system
into two functions to allow reuse by tests.

Change-Id: Ibedca39558cbd51b20e7ebb9d2b6537e4f24
---
M includes/logging/LogEntry.php
1 file changed, 26 insertions(+), 4 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core 
refs/changes/17/200317/1

diff --git a/includes/logging/LogEntry.php b/includes/logging/LogEntry.php
index e9b479b..73eeb80 100644
--- a/includes/logging/LogEntry.php
+++ b/includes/logging/LogEntry.php
@@ -115,6 +115,28 @@
public function isLegacy() {
return false;
}
+
+   /**
+* Create a blob from a parameter array
+*
+* @param array $params
+* @return string
+* @since 1.25
+*/
+   public static function makeParamBlob( $params ) {
+   return serialize( (array)$params );
+   }
+
+   /**
+* Extract a parameter array from a blob
+*
+* @param string $blob
+* @return array
+* @since 1.25
+*/
+   public static function extractParams( $blob ) {
+   return unserialize( $blob );
+   }
 }
 
 /**
@@ -225,13 +247,13 @@
if ( !isset( $this-params ) ) {
$blob = $this-getRawParameters();
wfSuppressWarnings();
-   $params = unserialize( $blob );
+   $params = LogEntryBase::extractParams( $blob );
wfRestoreWarnings();
if ( $params !== false ) {
$this-params = $params;
$this-legacy = false;
} else {
-   $this-params = $blob === '' ? array() : 
explode( \n, $blob );
+   $this-params = LogPage::extractParams( $blob );
$this-legacy = true;
}
}
@@ -516,7 +538,7 @@
'log_title' = $this-getTarget()-getDBkey(),
'log_page' = $this-getTarget()-getArticleID(),
'log_comment' = $comment,
-   'log_params' = serialize( 
(array)$this-getParameters() ),
+   'log_params' = LogEntryBase::makeParamBlob( 
$this-getParameters() ),
);
if ( isset( $this-deleted ) ) {
$data['log_deleted'] = $this-deleted;
@@ -588,7 +610,7 @@
$this-getSubtype(),
$this-getTarget(),
$this-getComment(),
-   serialize( (array)$this-getParameters() ),
+   LogEntryBase::makeParamBlob( $this-getParameters() ),
$newId,
$formatter-getIRCActionComment() // Used for IRC feeds
);

-- 
To view, visit https://gerrit.wikimedia.org/r/200317
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ibedca39558cbd51b20e7ebb9d2b6537e4f24
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Umherirrender umherirrender_de...@web.de

___
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits