jenkins-bot has submitted this change and it was merged.

Change subject: Add entityNamespaces option
......................................................................


Add entityNamespaces option

Lets set Item and Property namespaces that used on Wikibase repository.

Change-Id: Ifaeceb5f710393cfb2b328d88fa837392ebc837f
---
M tools/src/main/java/org/wikidata/query/rdf/tool/Update.java
M 
tools/src/main/java/org/wikidata/query/rdf/tool/wikibase/WikibaseRepository.java
2 files changed, 28 insertions(+), 2 deletions(-)

Approvals:
  Smalyshev: Looks good to me, approved
  Thiemo Mättig (WMDE): Looks good to me, but someone else must approve
  jenkins-bot: Verified



diff --git a/tools/src/main/java/org/wikidata/query/rdf/tool/Update.java 
b/tools/src/main/java/org/wikidata/query/rdf/tool/Update.java
index 3404b7c..9a9bff9 100644
--- a/tools/src/main/java/org/wikidata/query/rdf/tool/Update.java
+++ b/tools/src/main/java/org/wikidata/query/rdf/tool/Update.java
@@ -92,6 +92,10 @@
 
         @Option(shortName = "V", longName = "verify", description = "Verify 
updates (may have performance impact)")
         boolean verify();
+
+        @Option(defaultToNull = true, description = "If specified must be 
numbers of Item and Property namespaces"
+                + " that defined in Wikibase repository, comma separated.")
+        String entityNamespaces();
     }
 
     /**
@@ -99,7 +103,13 @@
      */
     public static void main(String[] args) {
         Options options = handleOptions(Options.class, args);
-        WikibaseRepository wikibaseRepository = new 
WikibaseRepository(options.wikibaseScheme(), options.wikibaseHost());
+        WikibaseRepository wikibaseRepository;
+        if (options.entityNamespaces() == null) {
+            wikibaseRepository = new 
WikibaseRepository(options.wikibaseScheme(), options.wikibaseHost());
+        } else {
+            String[] entityNamespaces = options.entityNamespaces().split(",");
+            wikibaseRepository = new 
WikibaseRepository(options.wikibaseScheme(), options.wikibaseHost(), 0, 
entityNamespaces);
+        }
         URI sparqlUri;
         try {
             sparqlUri = new URI(options.sparqlUrl());
diff --git 
a/tools/src/main/java/org/wikidata/query/rdf/tool/wikibase/WikibaseRepository.java
 
b/tools/src/main/java/org/wikidata/query/rdf/tool/wikibase/WikibaseRepository.java
index 6023fb4..e4287f0 100644
--- 
a/tools/src/main/java/org/wikidata/query/rdf/tool/wikibase/WikibaseRepository.java
+++ 
b/tools/src/main/java/org/wikidata/query/rdf/tool/wikibase/WikibaseRepository.java
@@ -20,6 +20,7 @@
 import javax.net.ssl.SSLException;
 import javax.net.ssl.SSLHandshakeException;
 
+import org.apache.commons.lang3.StringUtils;
 import org.apache.http.Consts;
 import org.apache.http.HttpEntityEnclosingRequest;
 import org.apache.http.HttpRequest;
@@ -94,6 +95,10 @@
 
     public WikibaseRepository(String scheme, String host, int port) {
         uris = new Uris(scheme, host, port);
+    }
+
+    public WikibaseRepository(String scheme, String host, int port, String[] 
entityNamespaces) {
+        uris = new Uris(scheme, host, port, entityNamespaces);
     }
 
     /**
@@ -361,6 +366,10 @@
          * Port to connect to.
          */
         private final int port;
+        /**
+         * Item and Property namespaces.
+         */
+        private String[] entityNamespaces = {"0", "120"};
 
         public Uris(String scheme, String host) {
             this.scheme = scheme;
@@ -372,6 +381,13 @@
             this.scheme = scheme;
             this.host = host;
             this.port = port;
+        }
+
+        public Uris(String scheme, String host, int port, String[] 
entityNamespaces) {
+            this.scheme = scheme;
+            this.host = host;
+            this.port = port;
+            this.entityNamespaces = entityNamespaces;
         }
 
         /**
@@ -389,7 +405,7 @@
             builder.addParameter("list", "recentchanges");
             builder.addParameter("rcdir", "newer");
             builder.addParameter("rcprop", "title|ids|timestamp");
-            builder.addParameter("rcnamespace", "0|120");
+            builder.addParameter("rcnamespace", 
StringUtils.join(this.entityNamespaces, "|"));
             builder.addParameter("rclimit", Integer.toString(batchSize));
             if (continueObject == null) {
                 builder.addParameter("continue", "");

-- 
To view, visit https://gerrit.wikimedia.org/r/297945
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Ifaeceb5f710393cfb2b328d88fa837392ebc837f
Gerrit-PatchSet: 3
Gerrit-Project: wikidata/query/rdf
Gerrit-Branch: master
Gerrit-Owner: Pastakhov <[email protected]>
Gerrit-Reviewer: Pastakhov <[email protected]>
Gerrit-Reviewer: Smalyshev <[email protected]>
Gerrit-Reviewer: Thiemo Mättig (WMDE) <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to