summaryrefslogtreecommitdiff
path: root/bin/reevotech/vendor/addwiki/mediawiki-datamodel/src/Redirect.php
diff options
context:
space:
mode:
Diffstat (limited to 'bin/reevotech/vendor/addwiki/mediawiki-datamodel/src/Redirect.php')
-rw-r--r--bin/reevotech/vendor/addwiki/mediawiki-datamodel/src/Redirect.php53
1 files changed, 53 insertions, 0 deletions
diff --git a/bin/reevotech/vendor/addwiki/mediawiki-datamodel/src/Redirect.php b/bin/reevotech/vendor/addwiki/mediawiki-datamodel/src/Redirect.php
new file mode 100644
index 00000000..55b8b607
--- /dev/null
+++ b/bin/reevotech/vendor/addwiki/mediawiki-datamodel/src/Redirect.php
@@ -0,0 +1,53 @@
+<?php
+
+namespace Mediawiki\DataModel;
+
+use JsonSerializable;
+
+class Redirect implements JsonSerializable {
+
+ private $from;
+ private $to;
+
+ public function __construct( Title $from, Title $to ) {
+ $this->from = $from;
+ $this->to = $to;
+ }
+
+ /**
+ * @return Title
+ */
+ public function getFrom() {
+ return $this->from;
+ }
+
+ /**
+ * @return Title
+ */
+ public function getTo() {
+ return $this->to;
+ }
+
+ /**
+ * @link http://php.net/manual/en/jsonserializable.jsonserialize.php
+ */
+ public function jsonSerialize() {
+ return array(
+ 'from' => $this->from->jsonSerialize(),
+ 'to' => $this->to->jsonSerialize(),
+ );
+ }
+
+ /**
+ * @param array $json
+ *
+ * @return self
+ */
+ public static function jsonDeserialize( $json ) {
+ return new self(
+ Title::jsonDeserialize( $json['from'] ),
+ Title::jsonDeserialize( $json['to'] )
+ );
+ }
+
+}