2222 */
2323class StatementDeserializer implements DispatchableDeserializer {
2424
25- private $ rankIds = array (
25+ private static $ rankIds = [
2626 'deprecated ' => Statement::RANK_DEPRECATED ,
2727 'normal ' => Statement::RANK_NORMAL ,
2828 'preferred ' => Statement::RANK_PREFERRED
29- ) ;
29+ ] ;
3030
3131 /**
3232 * @var Deserializer
@@ -61,15 +61,18 @@ public function __construct(
6161 * @return bool
6262 */
6363 public function isDeserializerFor ( $ serialization ) {
64- return $ this ->hasType ( $ serialization ) && $ this ->hasCorrectType ( $ serialization );
64+ return is_array ( $ serialization )
65+ && array_key_exists ( 'type ' , $ serialization )
66+ && $ this ->isValidStatementType ( $ serialization ['type ' ] );
6567 }
6668
67- private function hasType ( $ serialization ) {
68- return is_array ( $ serialization ) && array_key_exists ( 'type ' , $ serialization );
69- }
70-
71- private function hasCorrectType ( $ serialization ) {
72- return in_array ( $ serialization ['type ' ], array ( 'claim ' , 'statement ' ) );
69+ /**
70+ * @param string $statementType
71+ *
72+ * @return bool
73+ */
74+ private function isValidStatementType ( $ statementType ) {
75+ return $ statementType === 'statement ' || $ statementType === 'claim ' ;
7376 }
7477
7578 /**
@@ -86,14 +89,12 @@ public function deserialize( $serialization ) {
8689 throw new MissingTypeException ();
8790 }
8891
89- if ( $ serialization [ ' type ' ] !== ' claim ' && $ serialization ['type ' ] !== ' statement ' ) {
92+ if ( ! $ this -> isValidStatementType ( $ serialization ['type ' ] ) ) {
9093 throw new UnsupportedTypeException ( $ serialization ['type ' ] );
9194 }
9295
9396 if ( !array_key_exists ( 'mainsnak ' , $ serialization ) ) {
94- throw new MissingAttributeException (
95- 'mainsnak '
96- );
97+ throw new MissingAttributeException ( 'mainsnak ' );
9798 }
9899
99100 return $ this ->getDeserialized ( $ serialization );
@@ -148,11 +149,11 @@ private function setQualifiersFromSerialization( array $serialization, Statement
148149 }
149150
150151 private function setRankFromSerialization ( array $ serialization , Statement $ statement ) {
151- if ( !array_key_exists ( $ serialization ['rank ' ], $ this -> rankIds ) ) {
152+ if ( !array_key_exists ( $ serialization ['rank ' ], self :: $ rankIds ) ) {
152153 throw new DeserializationException ( 'The rank ' . $ serialization ['rank ' ] . ' is not a valid rank. ' );
153154 }
154155
155- $ statement ->setRank ( $ this -> rankIds [$ serialization ['rank ' ]] );
156+ $ statement ->setRank ( self :: $ rankIds [$ serialization ['rank ' ]] );
156157 }
157158
158159 private function setReferencesFromSerialization ( array $ serialization , Statement $ statement ) {
0 commit comments