[MediaWiki-commits] [Gerrit] Turn WikibaseRepo::getRdfBaseURI into a setting - change (mediawiki...Wikibase)

2014-07-24 Thread jenkins-bot (Code Review)
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)

2014-07-23 Thread Hoo man (Code Review)
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();
-