[MediaWiki-commits] [Gerrit] Turn WikibaseRepo::getRdfBaseURI into a setting - change (mediawiki...Wikibase)
jenkins-bot has submitted this change and it was merged. Change subject: Turn WikibaseRepo::getRdfBaseURI into a setting .. Turn WikibaseRepo::getRdfBaseURI into a setting Change-Id: I0d14882283266df970710ed3c1ed676931d62a9f --- M docs/options.wiki M repo/Wikibase.hooks.php M repo/config/Wikibase.default.php M repo/includes/WikibaseRepo.php M repo/includes/specials/SpecialEntityData.php M repo/tests/phpunit/includes/WikibaseRepoTest.php 6 files changed, 13 insertions(+), 35 deletions(-) Approvals: WikidataJenkins: Verified Daniel Kinzler: Looks good to me, approved jenkins-bot: Verified diff --git a/docs/options.wiki b/docs/options.wiki index 4f85b02..071aa25 100644 --- a/docs/options.wiki +++ b/docs/options.wiki @@ -50,6 +50,7 @@ ;dataRightsUrl: Url to link to license for data contents. Defaults to $wgRightsUrl setting. ;dataRightsText: Text for data license link. Defaults to $wgRightsText setting. ;badgeItems: Items allowed to be used as badges. This setting expects an array of serialized item ids pointing to their CSS class names. +;conceptBaseUri: Base URI for building concept URIs (for example used in Rdf output). This has to include the protocol and domain, only an entity identifier will be appended. === Expert Settings === ;idBlacklist: A list of IDs to reserve and skip for new entities. IDs are given as integers, the blacklist applies to all types of entities. '''Note:''' this may change in the future to allow separate blacklists for different kinds of entities. diff --git a/repo/Wikibase.hooks.php b/repo/Wikibase.hooks.php index 7158f2f..95c5027 100644 --- a/repo/Wikibase.hooks.php +++ b/repo/Wikibase.hooks.php @@ -1291,9 +1291,10 @@ return true; } + $baseUri = WikibaseRepo::getDefaultInstance()-getSettings()-getSetting( 'conceptBaseUri' ); $nav_urls['wb-canonical-uri'] = array( 'text' = $skintemplate-msg( 'wikibase-concept-uri' ), - 'href' = WikibaseRepo::getDefaultInstance()-getRdfBaseURI() . $title-getDBKey(), + 'href' = $baseUri . $title-getDBKey(), 'title' = $skintemplate-msg( 'wikibase-concept-uri-tooltip' ) ); diff --git a/repo/config/Wikibase.default.php b/repo/config/Wikibase.default.php index 08243b2..012b681 100644 --- a/repo/config/Wikibase.default.php +++ b/repo/config/Wikibase.default.php @@ -93,6 +93,15 @@ }, 'useRedirectTargetColumn' = true, + + 'conceptBaseUri' = function() { + $uri = $GLOBALS['wgServer']; + $uri = preg_replace( '!^//!', 'http://', $uri ); + $uri = $uri . '/entity/'; + + return $uri; + }, + ); return $defaults; diff --git a/repo/includes/WikibaseRepo.php b/repo/includes/WikibaseRepo.php index 16f86bf..9d15ec3 100644 --- a/repo/includes/WikibaseRepo.php +++ b/repo/includes/WikibaseRepo.php @@ -345,21 +345,6 @@ } /** -* Returns the base to use when generating URIs for use in RDF output. -* -* @return string -*/ - public function getRdfBaseURI() { - global $wgServer; //TODO: make this configurable - - $uri = $wgServer; - $uri = preg_replace( '!^//!', 'http://', $uri ); - $uri = $uri . '/entity/'; - return $uri; - } - - - /** * @since 0.4 * * @return EntityIdParser diff --git a/repo/includes/specials/SpecialEntityData.php b/repo/includes/specials/SpecialEntityData.php index b4f4876..ae2c95b 100644 --- a/repo/includes/specials/SpecialEntityData.php +++ b/repo/includes/specials/SpecialEntityData.php @@ -89,7 +89,7 @@ ); $serializationService = new EntityDataSerializationService( - $repo-getRdfBaseURI(), + $repo-getSettings()-getSetting( 'conceptBaseUri' ), $this-getPageTitle()-getCanonicalURL() . '/', $repo-getStore()-getEntityLookup(), $titleLookup, diff --git a/repo/tests/phpunit/includes/WikibaseRepoTest.php b/repo/tests/phpunit/includes/WikibaseRepoTest.php index cf9c6a5..a11cae4 100644 --- a/repo/tests/phpunit/includes/WikibaseRepoTest.php +++ b/repo/tests/phpunit/includes/WikibaseRepoTest.php @@ -71,24 +71,6 @@ $this-assertInstanceOf( 'Wikibase\Lib\SnakConstructionService', $returnValue ); } - /** -* @dataProvider provideGetRdfBaseURI -*/ - public function testGetRdfBaseURI( $server, $expected ) { - $this-setMwGlobals( 'wgServer', $server ); - - $returnValue = $this-getDefaultInstance()-getRdfBaseURI(); -
[MediaWiki-commits] [Gerrit] Turn WikibaseRepo::getRdfBaseURI into a setting - change (mediawiki...Wikibase)
Hoo man has uploaded a new change for review. https://gerrit.wikimedia.org/r/148708 Change subject: Turn WikibaseRepo::getRdfBaseURI into a setting .. Turn WikibaseRepo::getRdfBaseURI into a setting Change-Id: I0d14882283266df970710ed3c1ed676931d62a9f --- M docs/options.wiki M repo/Wikibase.hooks.php M repo/config/Wikibase.default.php M repo/includes/WikibaseRepo.php M repo/includes/specials/SpecialEntityData.php M repo/tests/phpunit/includes/WikibaseRepoTest.php 6 files changed, 13 insertions(+), 35 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase refs/changes/08/148708/1 diff --git a/docs/options.wiki b/docs/options.wiki index 4f85b02..071aa25 100644 --- a/docs/options.wiki +++ b/docs/options.wiki @@ -50,6 +50,7 @@ ;dataRightsUrl: Url to link to license for data contents. Defaults to $wgRightsUrl setting. ;dataRightsText: Text for data license link. Defaults to $wgRightsText setting. ;badgeItems: Items allowed to be used as badges. This setting expects an array of serialized item ids pointing to their CSS class names. +;conceptBaseUri: Base URI for building concept URIs (for example used in Rdf output). This has to include the protocol and domain, only an entity identifier will be appended. === Expert Settings === ;idBlacklist: A list of IDs to reserve and skip for new entities. IDs are given as integers, the blacklist applies to all types of entities. '''Note:''' this may change in the future to allow separate blacklists for different kinds of entities. diff --git a/repo/Wikibase.hooks.php b/repo/Wikibase.hooks.php index 7158f2f..95c5027 100644 --- a/repo/Wikibase.hooks.php +++ b/repo/Wikibase.hooks.php @@ -1291,9 +1291,10 @@ return true; } + $baseUri = WikibaseRepo::getDefaultInstance()-getSettings()-getSetting( 'conceptBaseUri' ); $nav_urls['wb-canonical-uri'] = array( 'text' = $skintemplate-msg( 'wikibase-concept-uri' ), - 'href' = WikibaseRepo::getDefaultInstance()-getRdfBaseURI() . $title-getDBKey(), + 'href' = $baseUri . $title-getDBKey(), 'title' = $skintemplate-msg( 'wikibase-concept-uri-tooltip' ) ); diff --git a/repo/config/Wikibase.default.php b/repo/config/Wikibase.default.php index 08243b2..012b681 100644 --- a/repo/config/Wikibase.default.php +++ b/repo/config/Wikibase.default.php @@ -93,6 +93,15 @@ }, 'useRedirectTargetColumn' = true, + + 'conceptBaseUri' = function() { + $uri = $GLOBALS['wgServer']; + $uri = preg_replace( '!^//!', 'http://', $uri ); + $uri = $uri . '/entity/'; + + return $uri; + }, + ); return $defaults; diff --git a/repo/includes/WikibaseRepo.php b/repo/includes/WikibaseRepo.php index 16f86bf..9d15ec3 100644 --- a/repo/includes/WikibaseRepo.php +++ b/repo/includes/WikibaseRepo.php @@ -345,21 +345,6 @@ } /** -* Returns the base to use when generating URIs for use in RDF output. -* -* @return string -*/ - public function getRdfBaseURI() { - global $wgServer; //TODO: make this configurable - - $uri = $wgServer; - $uri = preg_replace( '!^//!', 'http://', $uri ); - $uri = $uri . '/entity/'; - return $uri; - } - - - /** * @since 0.4 * * @return EntityIdParser diff --git a/repo/includes/specials/SpecialEntityData.php b/repo/includes/specials/SpecialEntityData.php index b4f4876..ae2c95b 100644 --- a/repo/includes/specials/SpecialEntityData.php +++ b/repo/includes/specials/SpecialEntityData.php @@ -89,7 +89,7 @@ ); $serializationService = new EntityDataSerializationService( - $repo-getRdfBaseURI(), + $repo-getSettings()-getSetting( 'conceptBaseUri' ), $this-getPageTitle()-getCanonicalURL() . '/', $repo-getStore()-getEntityLookup(), $titleLookup, diff --git a/repo/tests/phpunit/includes/WikibaseRepoTest.php b/repo/tests/phpunit/includes/WikibaseRepoTest.php index cf9c6a5..a11cae4 100644 --- a/repo/tests/phpunit/includes/WikibaseRepoTest.php +++ b/repo/tests/phpunit/includes/WikibaseRepoTest.php @@ -71,24 +71,6 @@ $this-assertInstanceOf( 'Wikibase\Lib\SnakConstructionService', $returnValue ); } - /** -* @dataProvider provideGetRdfBaseURI -*/ - public function testGetRdfBaseURI( $server, $expected ) { - $this-setMwGlobals( 'wgServer', $server ); - - $returnValue = $this-getDefaultInstance()-getRdfBaseURI(); -