@@ -20,7 +20,7 @@ discard block |
||
20 | 20 | * @return DumpMetaInformation[] |
21 | 21 | * @throws \InvalidArgumentException |
22 | 22 | */ |
23 | - public function getWithIds( array $dumpIds ); |
|
23 | + public function getWithIds(array $dumpIds); |
|
24 | 24 | |
25 | 25 | /** |
26 | 26 | * Gets DumpMetaInformation for specific identifier properties from database |
@@ -30,7 +30,7 @@ discard block |
||
30 | 30 | * |
31 | 31 | * @return DumpMetaInformation[] |
32 | 32 | */ |
33 | - public function getWithIdentifierProperties( array $identifierPropertyIds ); |
|
33 | + public function getWithIdentifierProperties(array $identifierPropertyIds); |
|
34 | 34 | |
35 | 35 | /** |
36 | 36 | * Gets all DumpMetaInformation from database |
@@ -65,7 +65,7 @@ discard block |
||
65 | 65 | * |
66 | 66 | * @return self |
67 | 67 | */ |
68 | - public static function newFromGlobalState( ApiMain $main, $name, $prefix = '' ) { |
|
68 | + public static function newFromGlobalState(ApiMain $main, $name, $prefix = '') { |
|
69 | 69 | $repo = WikibaseRepo::getDefaultInstance(); |
70 | 70 | $externalValidationServices = ExternalValidationServices::getDefaultInstance(); |
71 | 71 | |
@@ -77,7 +77,7 @@ discard block |
||
77 | 77 | $repo->getStatementGuidValidator(), |
78 | 78 | $externalValidationServices->getCrossCheckInteractor(), |
79 | 79 | $externalValidationServices->getSerializerFactory(), |
80 | - $repo->getApiHelperFactory( RequestContext::getMain() ) |
|
80 | + $repo->getApiHelperFactory(RequestContext::getMain()) |
|
81 | 81 | ); |
82 | 82 | } |
83 | 83 | |
@@ -91,17 +91,17 @@ discard block |
||
91 | 91 | * @param SerializerFactory $serializerFactory |
92 | 92 | * @param ApiHelperFactory $apiHelperFactory |
93 | 93 | */ |
94 | - public function __construct( ApiMain $main, $name, $prefix = '', EntityIdParser $entityIdParser, |
|
94 | + public function __construct(ApiMain $main, $name, $prefix = '', EntityIdParser $entityIdParser, |
|
95 | 95 | StatementGuidValidator $statementGuidValidator, CrossCheckInteractor $crossCheckInteractor, |
96 | - SerializerFactory $serializerFactory, ApiHelperFactory $apiHelperFactory ) { |
|
97 | - parent::__construct( $main, $name, $prefix ); |
|
96 | + SerializerFactory $serializerFactory, ApiHelperFactory $apiHelperFactory) { |
|
97 | + parent::__construct($main, $name, $prefix); |
|
98 | 98 | |
99 | 99 | $this->entityIdParser = $entityIdParser; |
100 | 100 | $this->statementGuidValidator = $statementGuidValidator; |
101 | 101 | $this->crossCheckInteractor = $crossCheckInteractor; |
102 | 102 | $this->serializerFactory = $serializerFactory; |
103 | - $this->resultBuilder = $apiHelperFactory->getResultBuilder( $this ); |
|
104 | - $this->errorReporter = $apiHelperFactory->getErrorReporter( $this ); |
|
103 | + $this->resultBuilder = $apiHelperFactory->getResultBuilder($this); |
|
104 | + $this->errorReporter = $apiHelperFactory->getErrorReporter($this); |
|
105 | 105 | } |
106 | 106 | |
107 | 107 | /** |
@@ -110,24 +110,24 @@ discard block |
||
110 | 110 | public function execute() { |
111 | 111 | $params = $this->extractRequestParams(); |
112 | 112 | |
113 | - if ( $params['entities'] && $params['claims'] ) { |
|
113 | + if ($params['entities'] && $params['claims']) { |
|
114 | 114 | $this->errorReporter->dieError( |
115 | 115 | 'Either provide the ids of entities or ids of claims, that should be cross-checked.', |
116 | 116 | 'param-invalid' |
117 | 117 | ); |
118 | 118 | throw new LogicException(); |
119 | - } elseif ( $params['entities'] ) { |
|
120 | - $entityIds = $this->parseEntityIds( $params['entities'] ); |
|
121 | - if ( $params['properties'] ) { |
|
122 | - $propertyIds = $this->parseEntityIds( $params['properties'] ); |
|
123 | - $resultLists = $this->crossCheckInteractor->crossCheckEntitiesByIdWithProperties( $entityIds, $propertyIds ); |
|
119 | + } elseif ($params['entities']) { |
|
120 | + $entityIds = $this->parseEntityIds($params['entities']); |
|
121 | + if ($params['properties']) { |
|
122 | + $propertyIds = $this->parseEntityIds($params['properties']); |
|
123 | + $resultLists = $this->crossCheckInteractor->crossCheckEntitiesByIdWithProperties($entityIds, $propertyIds); |
|
124 | 124 | } else { |
125 | - $resultLists = $this->crossCheckInteractor->crossCheckEntitiesByIds( $entityIds ); |
|
125 | + $resultLists = $this->crossCheckInteractor->crossCheckEntitiesByIds($entityIds); |
|
126 | 126 | } |
127 | - } elseif ( $params['claims'] ) { |
|
127 | + } elseif ($params['claims']) { |
|
128 | 128 | $guids = $params['claims']; |
129 | - $this->assertAreValidClaimGuids( $guids ); |
|
130 | - $resultLists = $this->crossCheckInteractor->crossCheckStatementsByGuids( $guids ); |
|
129 | + $this->assertAreValidClaimGuids($guids); |
|
130 | + $resultLists = $this->crossCheckInteractor->crossCheckStatementsByGuids($guids); |
|
131 | 131 | } else { |
132 | 132 | $this->errorReporter->dieError( |
133 | 133 | 'Either provide the ids of entities or ids of claims, that should be cross-checked.', |
@@ -137,7 +137,7 @@ discard block |
||
137 | 137 | } |
138 | 138 | |
139 | 139 | // Print result lists |
140 | - $this->writeResultOutput( $resultLists ); |
|
140 | + $this->writeResultOutput($resultLists); |
|
141 | 141 | } |
142 | 142 | |
143 | 143 | /** |
@@ -145,9 +145,9 @@ discard block |
||
145 | 145 | * |
146 | 146 | * @return EntityId[] |
147 | 147 | */ |
148 | - private function parseEntityIds( array $entityIds ) { |
|
148 | + private function parseEntityIds(array $entityIds) { |
|
149 | 149 | return array_map( |
150 | - array( $this->entityIdParser, 'parse' ), |
|
150 | + array($this->entityIdParser, 'parse'), |
|
151 | 151 | $entityIds |
152 | 152 | ); |
153 | 153 | } |
@@ -155,10 +155,10 @@ discard block |
||
155 | 155 | /** |
156 | 156 | * @param string[] $guids |
157 | 157 | */ |
158 | - private function assertAreValidClaimGuids( array $guids ) { |
|
159 | - foreach ( $guids as $guid ) { |
|
160 | - if ( $this->statementGuidValidator->validateFormat( $guid ) === false ) { |
|
161 | - $this->errorReporter->dieError( 'Invalid claim guid.', 'invalid-guid' ); |
|
158 | + private function assertAreValidClaimGuids(array $guids) { |
|
159 | + foreach ($guids as $guid) { |
|
160 | + if ($this->statementGuidValidator->validateFormat($guid) === false) { |
|
161 | + $this->errorReporter->dieError('Invalid claim guid.', 'invalid-guid'); |
|
162 | 162 | } |
163 | 163 | } |
164 | 164 | } |
@@ -170,13 +170,13 @@ discard block |
||
170 | 170 | * |
171 | 171 | * @return array |
172 | 172 | */ |
173 | - private function writeResultOutput( array $resultLists ) { |
|
173 | + private function writeResultOutput(array $resultLists) { |
|
174 | 174 | $serializer = $this->serializerFactory->newCrossCheckResultListSerializer(); |
175 | 175 | |
176 | 176 | $output = array(); |
177 | - foreach ( $resultLists as $entityId => $resultList ) { |
|
178 | - if ( $resultList ) { |
|
179 | - $serializedResultList = $serializer->serialize( $resultList ); |
|
177 | + foreach ($resultLists as $entityId => $resultList) { |
|
178 | + if ($resultList) { |
|
179 | + $serializedResultList = $serializer->serialize($resultList); |
|
180 | 180 | |
181 | 181 | $output[$entityId] = $serializedResultList; |
182 | 182 | } else { |
@@ -186,10 +186,10 @@ discard block |
||
186 | 186 | } |
187 | 187 | } |
188 | 188 | |
189 | - $this->getResult()->setIndexedTagName( $output, 'entity' ); |
|
190 | - $this->getResult()->setArrayType( $output, 'kvp', 'id' ); |
|
191 | - $this->getResult()->addValue( null, 'results', $output ); |
|
192 | - $this->resultBuilder->markSuccess( 1 ); |
|
189 | + $this->getResult()->setIndexedTagName($output, 'entity'); |
|
190 | + $this->getResult()->setArrayType($output, 'kvp', 'id'); |
|
191 | + $this->getResult()->addValue(null, 'results', $output); |
|
192 | + $this->resultBuilder->markSuccess(1); |
|
193 | 193 | } |
194 | 194 | |
195 | 195 | /** |
@@ -51,13 +51,13 @@ discard block |
||
51 | 51 | public function import() { |
52 | 52 | $dumpIds = $this->insertMetaInformation(); |
53 | 53 | |
54 | - $this->log( "\nDelete old database entries...\n" ); |
|
54 | + $this->log("\nDelete old database entries...\n"); |
|
55 | 55 | |
56 | - foreach ( $dumpIds as $dumpId ) { |
|
57 | - $this->externalDataRepo->deleteOfDump( $dumpId, $this->importSettings->getBatchSize() ); |
|
56 | + foreach ($dumpIds as $dumpId) { |
|
57 | + $this->externalDataRepo->deleteOfDump($dumpId, $this->importSettings->getBatchSize()); |
|
58 | 58 | } |
59 | 59 | |
60 | - $this->log( "\n" ); |
|
60 | + $this->log("\n"); |
|
61 | 61 | |
62 | 62 | $this->insertExternalValues(); |
63 | 63 | } |
@@ -68,54 +68,54 @@ discard block |
||
68 | 68 | * @return array |
69 | 69 | */ |
70 | 70 | protected function insertMetaInformation() { |
71 | - $this->log( "Insert new dump meta information\n" ); |
|
71 | + $this->log("Insert new dump meta information\n"); |
|
72 | 72 | |
73 | - $csvFile = fopen( $this->importSettings->getDumpInformationFilePath(), 'rb' ); |
|
74 | - if( !$csvFile ) { |
|
75 | - exit( 'Error while reading CSV file.' ); |
|
73 | + $csvFile = fopen($this->importSettings->getDumpInformationFilePath(), 'rb'); |
|
74 | + if (!$csvFile) { |
|
75 | + exit('Error while reading CSV file.'); |
|
76 | 76 | } |
77 | 77 | |
78 | 78 | $i = 0; |
79 | 79 | $dumpIds = array(); |
80 | - while ( $data = fgetcsv( $csvFile ) ) { |
|
80 | + while ($data = fgetcsv($csvFile)) { |
|
81 | 81 | $identifierPropertyIds = array_map( |
82 | - function ( $propertyId ) { |
|
83 | - return new PropertyId( $propertyId ); |
|
82 | + function($propertyId) { |
|
83 | + return new PropertyId($propertyId); |
|
84 | 84 | }, |
85 | - json_decode( $data[2] ) |
|
85 | + json_decode($data[2]) |
|
86 | 86 | ); |
87 | 87 | try { |
88 | 88 | $dumpMetaInformation = new DumpMetaInformation( |
89 | 89 | $data[0], |
90 | - new ItemId( $data[1] ), |
|
90 | + new ItemId($data[1]), |
|
91 | 91 | $identifierPropertyIds, |
92 | 92 | $data[3], |
93 | 93 | $data[4], |
94 | 94 | $data[5], |
95 | - intval( $data[6] ), |
|
96 | - new ItemId( $data[7] ) |
|
95 | + intval($data[6]), |
|
96 | + new ItemId($data[7]) |
|
97 | 97 | ); |
98 | 98 | } |
99 | - catch( \InvalidArgumentException $e ) { |
|
100 | - exit( 'Input file has bad formatted values.' ); |
|
99 | + catch (\InvalidArgumentException $e) { |
|
100 | + exit('Input file has bad formatted values.'); |
|
101 | 101 | } |
102 | 102 | $dumpIds[] = $dumpMetaInformation->getDumpId(); |
103 | 103 | |
104 | 104 | try { |
105 | - $this->dumpMetaInformationStore->save( $dumpMetaInformation ); |
|
105 | + $this->dumpMetaInformationStore->save($dumpMetaInformation); |
|
106 | 106 | } |
107 | - catch( \DBError $e ) { |
|
108 | - exit( 'Unknown database error occurred.' ); |
|
107 | + catch (\DBError $e) { |
|
108 | + exit('Unknown database error occurred.'); |
|
109 | 109 | } |
110 | 110 | |
111 | 111 | $i++; |
112 | - $this->log( "\r\033[K" ); |
|
113 | - $this->log( "$i rows inserted or updated" ); |
|
112 | + $this->log("\r\033[K"); |
|
113 | + $this->log("$i rows inserted or updated"); |
|
114 | 114 | } |
115 | 115 | |
116 | - fclose( $csvFile ); |
|
116 | + fclose($csvFile); |
|
117 | 117 | |
118 | - $this->log( "\n" ); |
|
118 | + $this->log("\n"); |
|
119 | 119 | |
120 | 120 | return $dumpIds; |
121 | 121 | } |
@@ -124,32 +124,32 @@ discard block |
||
124 | 124 | * Inserts external values stored in csv file into database |
125 | 125 | */ |
126 | 126 | private function insertExternalValues() { |
127 | - $this->log( "Insert new data values\n" ); |
|
127 | + $this->log("Insert new data values\n"); |
|
128 | 128 | |
129 | - $csvFile = fopen( $this->importSettings->getExternalValuesFilePath(), 'rb' ); |
|
130 | - if( !$csvFile ) { |
|
131 | - exit( 'Error while reading CSV file.' ); |
|
129 | + $csvFile = fopen($this->importSettings->getExternalValuesFilePath(), 'rb'); |
|
130 | + if (!$csvFile) { |
|
131 | + exit('Error while reading CSV file.'); |
|
132 | 132 | } |
133 | 133 | |
134 | 134 | $i = 0; |
135 | 135 | $accumulator = array(); |
136 | - while ( true ) { |
|
137 | - $data = fgetcsv( $csvFile ); |
|
138 | - if ( $data === false || ++$i % $this->importSettings->getBatchSize() === 0 ) { |
|
136 | + while (true) { |
|
137 | + $data = fgetcsv($csvFile); |
|
138 | + if ($data === false || ++$i % $this->importSettings->getBatchSize() === 0) { |
|
139 | 139 | try { |
140 | - $this->externalDataRepo->insertBatch( $accumulator ); |
|
140 | + $this->externalDataRepo->insertBatch($accumulator); |
|
141 | 141 | } |
142 | - catch( \DBError $e ) { |
|
143 | - exit( 'Unknown database error occurred.' ); |
|
142 | + catch (\DBError $e) { |
|
143 | + exit('Unknown database error occurred.'); |
|
144 | 144 | } |
145 | 145 | wfGetLBFactory()->waitForReplication(); |
146 | 146 | |
147 | - $this->log( "\r\033[K" ); |
|
148 | - $this->log( "$i rows inserted" ); |
|
147 | + $this->log("\r\033[K"); |
|
148 | + $this->log("$i rows inserted"); |
|
149 | 149 | |
150 | 150 | $accumulator = array(); |
151 | 151 | |
152 | - if ( $data === false ) { |
|
152 | + if ($data === false) { |
|
153 | 153 | break; |
154 | 154 | } |
155 | 155 | } |
@@ -157,16 +157,16 @@ discard block |
||
157 | 157 | $accumulator[] = $data; |
158 | 158 | } |
159 | 159 | |
160 | - fclose( $csvFile ); |
|
160 | + fclose($csvFile); |
|
161 | 161 | |
162 | - $this->log( "\n" ); |
|
162 | + $this->log("\n"); |
|
163 | 163 | } |
164 | 164 | |
165 | 165 | /** |
166 | 166 | * @param string $text |
167 | 167 | */ |
168 | - private function log( $text ) { |
|
169 | - if ( !$this->importSettings->isQuiet() ) { |
|
168 | + private function log($text) { |
|
169 | + if (!$this->importSettings->isQuiet()) { |
|
170 | 170 | print $text; |
171 | 171 | } |
172 | 172 | } |
@@ -1,10 +1,10 @@ discard block |
||
1 | 1 | <?php |
2 | 2 | |
3 | -if ( is_readable( __DIR__ . '/vendor/autoload.php' ) ) { |
|
4 | - require_once __DIR__ . '/vendor/autoload.php'; |
|
3 | +if (is_readable(__DIR__.'/vendor/autoload.php')) { |
|
4 | + require_once __DIR__.'/vendor/autoload.php'; |
|
5 | 5 | } |
6 | 6 | |
7 | -call_user_func( function () { |
|
7 | +call_user_func(function() { |
|
8 | 8 | // Set credits |
9 | 9 | $GLOBALS['wgExtensionCredits']['wikibase'][] = array( |
10 | 10 | 'path' => __FILE__, |
@@ -17,8 +17,8 @@ discard block |
||
17 | 17 | ); |
18 | 18 | |
19 | 19 | // Initialize localization and aliases |
20 | - $GLOBALS['wgMessagesDirs']['WikibaseQualityExternalValidation'] = __DIR__ . '/i18n'; |
|
21 | - $GLOBALS['wgExtensionMessagesFiles']['WikibaseQualityExternalValidationAlias'] = __DIR__ . '/WikibaseQualityExternalValidation.alias.php'; |
|
20 | + $GLOBALS['wgMessagesDirs']['WikibaseQualityExternalValidation'] = __DIR__.'/i18n'; |
|
21 | + $GLOBALS['wgExtensionMessagesFiles']['WikibaseQualityExternalValidationAlias'] = __DIR__.'/WikibaseQualityExternalValidation.alias.php'; |
|
22 | 22 | |
23 | 23 | // Initalize hooks for creating database tables |
24 | 24 | $GLOBALS['wgHooks']['LoadExtensionSchemaUpdates'][] = 'WikibaseQualityExternalValidationHooks::onCreateSchema'; |
@@ -33,8 +33,8 @@ discard block |
||
33 | 33 | // Define API modules |
34 | 34 | $GLOBALS['wgAPIModules']['wbqevcrosscheck'] = array( |
35 | 35 | 'class' => 'WikibaseQuality\ExternalValidation\Api\RunCrossCheck', |
36 | - 'factory' => function( ApiMain $main, $action ) { |
|
37 | - return \WikibaseQuality\ExternalValidation\Api\RunCrossCheck::newFromGlobalState( $main, $action ); |
|
36 | + 'factory' => function(ApiMain $main, $action) { |
|
37 | + return \WikibaseQuality\ExternalValidation\Api\RunCrossCheck::newFromGlobalState($main, $action); |
|
38 | 38 | } |
39 | 39 | ); |
40 | 40 | |
@@ -46,13 +46,13 @@ discard block |
||
46 | 46 | ); |
47 | 47 | |
48 | 48 | // Ids of certain Wikidata entities |
49 | - if( !defined( 'INSTANCE_OF_PID' ) ) { |
|
50 | - define( 'INSTANCE_OF_PID', 'P31' ); |
|
49 | + if (!defined('INSTANCE_OF_PID')) { |
|
50 | + define('INSTANCE_OF_PID', 'P31'); |
|
51 | 51 | } |
52 | - if( !defined( 'IDENTIFIER_PROPERTY_QID' ) ) { |
|
53 | - define( 'IDENTIFIER_PROPERTY_QID', 'Q19847637' ); |
|
52 | + if (!defined('IDENTIFIER_PROPERTY_QID')) { |
|
53 | + define('IDENTIFIER_PROPERTY_QID', 'Q19847637'); |
|
54 | 54 | } |
55 | - if( !defined( 'STATED_IN_PID' ) ) { |
|
56 | - define( 'STATED_IN_PID', 'P248' ); |
|
55 | + if (!defined('STATED_IN_PID')) { |
|
56 | + define('STATED_IN_PID', 'P248'); |
|
57 | 57 | } |
58 | 58 | } ); |